otya128 / winevdm

16-bit Windows (Windows 1.x, 2.x, 3.0, 3.1, etc.) on 64-bit Windows

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Gray boxes in 16bit Windows Applications

Seref opened this issue · comments

I tried the latest Version 0.9 and 0.8 out and even older versions with no luck :(

I've tested this out on Windows 10 64bit 22H2, 32bit, and Windows 11 64bit 23H2, and the issue happens on all OSes.

Describe the bug
Some UI elements are gray boxes instead of text with white backgrounds.

image

The App works fine without any issues and no crashes but some UI elements and informations can't be read anymore, due to grey boxes.

I tried all types of configurations in the ini file. I also tried 8bit color mode and 16bit color mode in, and all other compability options (95, XP, 7, 8) without any changes in behaviour.

Expected behavior
On Windows 10 32bit using the NTVDM it works without any graphical issues (it sometimes crashes, which doesn't happen in with WineVDM ! ), I'd like to upgrade to 64bit and that's why I can't keep using it 😅.

There are no gray boxes and the text is readable with NTVDM with no compability mode enabled.

A trace is needed. Also a picture of what it's supposed to look like or a link to the program if it's available somewhere.

I sadly don't know if I can provide a trace or the program :/ there is somewhat sensitive stuff in there.

However I can provide you a screenshot of the working window on the Windows 10 32bit system running the Microsoft Native NTVDM thing:

image

Looks like an issue in the colors of some sort. The textboxes all have white backgrounds, which isn't bad, but the stuff that is gray was originally one of those indented areas.

In OTVDM even the background of the bars are grey.

Is this helpful?

Also is it possible to somehow compile the stuff in VS2022? If you don't know any solution maybe I can give it a try :)

Try removing ctl3d.dll16 from the winevdm folder. Also try getting control.exe and main.cpl from windows 3.1 and mess with the system colors to see if that makes a difference.

Yes it works! I just removed ctl3d.dll and it works without any issues.

Thank you very much! :)

Okay just one more thing

The application works fine when I just open it (and register OTVDM using the install (nocconsole)).

However it crashes on launch with the following error when I drag and drop or start it via a Shortcut (path to: "otvdmw" "app path") :

image

Is there a reason for this? Does it behave differently when launched in such a way?

Try fixing the start in setting for the shortcut to be the program path rather than the winevdm path. The program probably can't find it's files.

What do you mean ? I want to start it using winevdm, so that it won't break after an update by windows.

If I create a shortcut directly to the App it works without a problem.

If I instead do this: "winevdm.exe" "CALC.EXE" it throws the error (same happens if I drag and drop CALC.EXE onto winevdm. That's why I was asking.

Is there a difference between the two methods?

The difference is the starting directory.
Screenshot 2023-11-07 093543
A shortcut directly will have start in set to the program directory. Drag and drop will have the start in set to the winevdm directory.

Thank you very much, that fixes everything! :)

It works now without any problems (that I saw so far)