Hi,
i am a little confuse about the uxtheme dll. I have a program that raises an execption after each call (not the return!) to the ordinal 1 of the dll. The strange thing is the relay log shows up to eight arguments for the function call, but according to the spec file of the uxtheme dll the function does not have any argument. Also the implemantation is only a stub which should not crash.
Here an example for the call:
000b:Call uxtheme.1(00000090,42865450,0001aa9b,406acef4,00000000) ret=41ebcca5 trace:seh:__regs_RtlRaiseException code=c0000005 flags=0 addr=(nil)
Does anyone have a wild guess what happend here?
Bye Stefan
On Sat, Dec 03, 2005 at 06:16:48PM +0100, Stefan Leichter wrote:
Hi,
i am a little confuse about the uxtheme dll. I have a program that raises an execption after each call (not the return!) to the ordinal 1 of the dll. The strange thing is the relay log shows up to eight arguments for the function call, but according to the spec file of the uxtheme dll the function does not have any argument. Also the implemantation is only a stub which should not crash.
Here an example for the call:
000b:Call uxtheme.1(00000090,42865450,0001aa9b,406acef4,00000000) ret=41ebcca5 trace:seh:__regs_RtlRaiseException code=c0000005 flags=0 addr=(nil)
Does anyone have a wild guess what happend here?
Its actually calling number 2 from the .spec file perhaps, OpenThemeFile.
And the :seh: might be from the relay string printing code? I don't know.
Ciao, Marcus
Am Samstag, 3. Dezember 2005 18:59 schrieb Marcus Meissner:
On Sat, Dec 03, 2005 at 06:16:48PM +0100, Stefan Leichter wrote:
Hi,
i am a little confuse about the uxtheme dll. I have a program that raises an execption after each call (not the return!) to the ordinal 1 of the dll. The strange thing is the relay log shows up to eight arguments for the function call, but according to the spec file of the uxtheme dll the function does not have any argument. Also the implemantation is only a stub which should not crash.
Here an example for the call:
000b:Call uxtheme.1(00000090,42865450,0001aa9b,406acef4,00000000) ret=41ebcca5 trace:seh:__regs_RtlRaiseException code=c0000005 flags=0 addr=(nil)
Does anyone have a wild guess what happend here?
Its actually calling number 2 from the .spec file perhaps, OpenThemeFile.
And the :seh: might be from the relay string printing code? I don't know.
As i understand you, the ordinals of uxtheme dll displayed in the relay trace are wrong. Different function calls (according to the number of arguments) in the relay log are displayed as function with the ordianl 1.
Some more examples:
000b:Call uxtheme.1(4069ebf4) ret=41e4d04b trace:seh:__regs_RtlRaiseException code=c0000005 flags=0 addr=(nil)
000b:Call uxtheme.1(4069e7cc,00000000,00000000) ret=41e4c2da trace:seh:__regs_RtlRaiseException code=c0000005 flags=0 addr=(nil)
000b:Call uxtheme.1 (41f8d0f8,80000000,00000003,00000000,00000003,00000080,00000000) ret=41e4c7c0 trace:seh:__regs_RtlRaiseException code=c0000005 flags=0 addr=(nil)
000b:Call uxtheme.1(0000006c,42a76370,00000000,406acddc,427f4880,406acdcc) ret=41e4e21c trace:seh:__regs_RtlRaiseException code=c0000005 flags=0 addr=(nil)
But why is this only a problem of uxtheme dll. The ordinals of comctl32 and kernel32 are displayed properly.
Bye Stefan
Stefan Leichter Stefan.Leichter@camLine.com writes:
As i understand you, the ordinals of uxtheme dll displayed in the relay trace are wrong. Different function calls (according to the number of arguments) in the relay log are displayed as function with the ordianl 1.
Most likely we failed to find the right module, and uxtheme happens to be the last in the module list. Try adding some debug in get_entry_point() in dlls/ntdll/relay.c to figure out what's going on.
Am Montag, 5. Dezember 2005 11:48 schrieb Alexandre Julliard:
Stefan Leichter Stefan.Leichter@camLine.com writes:
As i understand you, the ordinals of uxtheme dll displayed in the relay trace are wrong. Different function calls (according to the number of arguments) in the relay log are displayed as function with the ordianl 1.
Most likely we failed to find the right module, and uxtheme happens to be the last in the module list. Try adding some debug in get_entry_point() in dlls/ntdll/relay.c to figure out what's going on.
Ok, looks like i have something found that might cause this trouble:
The element orig of the DEBUG_ENTRY_POINT struct (*relay) passed to this function is not initialized (null pointer).
Now i am looking for an idea to get closer to the root of the problem.
Bye Stefan