elishacloud / dxwrapper

Fixes compatibility issues with older games running on Windows 10/11 by wrapping DirectX dlls. Also allows loading custom libraries with the file extension .asi into game processes.
zlib License
1.16k stars 83 forks source link

ddraw compat not work anymore #83

Closed JaegerFox closed 3 years ago

JaegerFox commented 3 years ago

In the last version the module ddraw compat dont work, in the log file the file ddraw.dll its loaded but not these functions

elishacloud commented 3 years ago

DDrawCompat works ok for me on the games I tested. Can you tell me what game you are testing this with? Also, please attach your ini file and log file.

JaegerFox commented 3 years ago

dxwrapper-metal gear solid.log

elishacloud commented 3 years ago

These are all logs from DDrawCompat:

3988 14:12:07.759 Loading DDrawCompat from E:\Games\MGS1\dxwrapper.dll
3988 14:12:07.761 DDrawCompat v0.2.1 loaded successfully
3988 14:12:08.344 Installing DirectDraw hooks
3988 14:12:08.358 Installing GDI hooks
3988 14:12:08.364 Installing registry hooks
3988 14:12:08.365 Finished installing hooks
3988 14:12:08.880 GDI used DC cache size: 1
3988 14:12:14.619 Detaching DDrawCompat
3988 14:12:14.678 DDrawCompat detached successfully

DDrawCompat is loading correctly into this game.

JaegerFox commented 3 years ago

Yes but the game dont start with the functions, what I mean, in the previous versions the game started in full screen without borders, now it starts in window mode with borders (as if DDrawCompat did not work) also the performance is lower

JaegerFox commented 3 years ago

Here with DDrawCompat in the previous version of DxWrapper IMG_20200818_173553~01

And the last version IMG_20200818_173450

elishacloud commented 3 years ago

Try setting EnableDdrawWrapper = 1

Or you could try setting Dd7to9 = 1

JaegerFox commented 3 years ago

Enabling EnableDdrawWrapper fixed the problem, why that change? is it a bug or is it how it should work?

elishacloud commented 3 years ago

This is correct functionality. EnableDdrawWrapper has an option to remove the frame from fullscreen windows.