DllMain Thread

General information and assistance with dgVoodoo.

Re: DllMain Thread

Postby CoolGamer » 2017-3-27 @ 22:13

UCyborg,

I need your help with another potential DLL Main issue. Can you take a look at the following benchmark:

XL-R8R Tech benchmark DX7 by MadOnion (FutureMark)
https://www.youtube.com/watch?v=LEvU380DM20
http://downloads.guru3d.com/xL-R8R-download-179.html

It is supposed to be based on 3DMark2000 engine. It works fine natively on my Windows 7 Ultimate 64bit OS. I don't even need compatibility mode. But it silently crashes without an error when I try to run it via dgVoodoo.
CoolGamer
Newbie
 
Posts: 60
Joined: 2017-1-14 @ 17:22

Re: DllMain Thread

Postby UCyborg » 2017-3-30 @ 18:15

Is this hosted anywhere else besides Guru3D? Can't download it from either mirror.
UCyborg
Member
 
Posts: 111
Joined: 2015-9-04 @ 11:10

Re: DllMain Thread

Postby CoolGamer » 2017-3-30 @ 19:16

Yes, It seems like XL-R8R Tech benchmark is also hosted on FutureMarks's legacy webpage
https://www.futuremark.com/benchmarks/legacy
http://d1heja5wzvsadj.cloudfront.net/xl-r8r.exe

It is also available on this website:
https://www.computerbase.de/downloads/b ... rk-xl-r8r/

It might not be a Dll Main issue since XL-R8R works fine natively. Maybe it is something similar to the issue that you figured out in Final Reality Demo where dgVoodoo was returning incorrect messages to the application.
CoolGamer
Newbie
 
Posts: 60
Joined: 2017-1-14 @ 17:22

Re: DllMain Thread

Postby lowenz » 2017-3-31 @ 23:11

Maybe it's a good thing to upload all the (updated) packages in a Mega(.nz) folder, and not as post attachments.
lowenz
Oldbie
 
Posts: 749
Joined: 2014-12-20 @ 01:30

Re: DllMain Thread

Postby UCyborg » 2017-4-08 @ 20:00

My main Windows 10 installation crapped itself the previous weekend, so couldn't take a look back then. It does appear to be DllMain issue, so probably the same remedy will help. Note that there are circumstances where it works natively, but not always. Usually it still works with NVIDIA drivers.
UCyborg
Member
 
Posts: 111
Joined: 2015-9-04 @ 11:10

Re: DllMain Thread

Postby UCyborg » 2017-4-09 @ 09:08

Never mind, it's not DllMain. It tries to query user mode driver DLL info, which doesn't work through dgVoodoo, so it throws exception and quits. It calls GetFileVersionInfoEx on non-existent file named dgVoodoo, which fails. Natively, the file would be nvd3dum.dll on NVIDIA hardware.
UCyborg
Member
 
Posts: 111
Joined: 2015-9-04 @ 11:10

Re: DllMain Thread

Postby mirh » 2017-5-04 @ 16:35

UCyborg wrote:As a point of interest, Compatibility Administrator 5.6 has 2 annoying bugs, I seem to remember uninstalling database from the system, making modifications to the copy you have elsewhere (you can't modify installed version) and installing it again seems to fail, unless you close and re-open program when you want to re-install database.

Sometimes you need to disable entries in system database because some things aren't needed anymore. For example, alt-tab combination is needlessly blocked for Drakan: Order of the Flame. There is a bug in 5.6 version of the program that writes this information in the wrong part of the registry on 64-bit systems, so it's impossible to disable certain entry without manually inspecting registry and putting the information in correct place. It writes to HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\AppCompatFlags instead of HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags This was solved with later versions, but they don't work on Windows 7.
While we are at it, I'd also like to "sponsor" another bug with the "compatibility environment", on 10.
https://social.msdn.microsoft.com/Forum ... e-disabled

EDIT: btw, in which OS this dllmain bug would appear?
pcgamingwiki.com
mirh
Member
 
Posts: 311
Joined: 2014-9-13 @ 21:39

Re: DllMain Thread

Postby UCyborg » 2017-5-05 @ 16:14

mirh wrote:While we are at it, I'd also like to "sponsor" another bug with the "compatibility environment", on 10.

I don't think it's specific to Windows 10. The problem is that the setting is being cached in another part of registry if application was launched at least once: HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store

The easiest solution is actually right-clicking on the .exe->Properties->Compatibility->OK. This causes the settings to reload and it should work afterwards.

There is a similar problem if you modify application resources with Resource Hacker, application manifest to be precise. It won't be picked up the next time it's launched. This can be helped by deleting the associated PF file from C:\Windows\Prefetch

With both things, changed last modification date of the file forces the refresh (Resource Hacker doesn't change the date).

mirh wrote:btw, in which OS this dllmain bug would appear?

It's OS independent, the rules about DllMain apply to all systems.
UCyborg
Member
 
Posts: 111
Joined: 2015-9-04 @ 11:10

Re: DllMain Thread

Postby UCyborg » 2017-5-05 @ 23:39

I overlooked that you tried to mess with compatibility settings and it didn't work, even though it should. Quake 4 also has RunAsHighest applied by default. I can't reproduce the issue on Creators Update, Compatibility tab trick seems to work here. consent.exe isn't triggered anymore, though the UAC icon remains unless you clear the icon cache.
UCyborg
Member
 
Posts: 111
Joined: 2015-9-04 @ 11:10

Re: DllMain Thread

Postby Nucleoprotein » 2017-5-07 @ 10:39

mirh wrote:EDIT: btw, in which OS this dllmain bug would appear?

Not really a bug, by design DllMain is very limited in functionality, such things should not be done in DllMain.
Nucleoprotein
Newbie
 
Posts: 91
Joined: 2016-7-02 @ 20:53

Re: DllMain Thread

Postby mirh » 2017-5-18 @ 00:03

UCyborg wrote:I overlooked that you tried to mess with compatibility settings and it didn't work, even though it should. Quake 4 also has RunAsHighest applied by default. I can't reproduce the issue on Creators Update, Compatibility tab trick seems to work here. consent.exe isn't triggered anymore, though the UAC icon remains unless you clear the icon cache.
Well, I just tried with latest build and it's still broken. Yes, I cleaned both prefetch and "compatibility cache".
I speculate that ME being a fully fledged vista-compliant executable, with a manifest (that lovely would even have requestedExecutionLevel level="asInvoker") might explain the discrepancy.

I wonder if the bug might not happen just in light of this then, thus possibly in all Windows too, or if the problem couldn't still be W10-something-specific.
After some guess work with 'strings' over whole Windows folder, prcomon to see which svchost process read the registry entries, procexp to see which thread/address is responsible, and CFF explorer to see which candidate dll called RPCR (since AppInfo!aienabledesktoprpcinterface)...
If anybody wants to take a look to "loading mechanism", I think it should be located in C:\Windows\AppPatch\AcGenral.dll
pcgamingwiki.com
mirh
Member
 
Posts: 311
Joined: 2014-9-13 @ 21:39

Previous

Return to dgVoodoo General

Who is online

Users browsing this forum: No registered users and 1 guest