我有一个VC ++项目(exe),它取决于几个.dlls
,这些.dll
是用不同语言开发的。版本即 - C#
。
构建项目在 .Net framework version v1.1.4322 上,它可以在本地执行,也可以从远程桌面执行。
但是当我使用 .Net Framework版本v2.0.50727 &构建我的应用程序,它在我的本地机器上工作,但不通过远程桌面执行。
我使用“Dependency Walker”来了解调用应用程序时发生的情况。
它显示在从RDPSND.DLL
调用WINMM.dll
之后,它开始分离和取消注册应用程序。
有没有办法找出根本原因&解决这个问题? 我附上了日志。
LoadLibraryW("rdpsnd.dll") called from "WINMM.DLL" at address 0x76B43384.
Loaded "RDPSND.DLL" at address 0x5DAC0000. Successfully hooked module.
Loaded "WINSTA.DLL" at address 0x76360000. Successfully hooked module.
LoadLibraryW("rdpsnd.dll") returned 0x5DAC0000.
DllMain(0x76360000, DLL_PROCESS_ATTACH, 0x00000000) in "WINSTA.DLL" called.
DllMain(0x76360000, DLL_PROCESS_ATTACH, 0x00000000) in "WINSTA.DLL" returned 1 (0x1).
DllMain(0x5DAC0000, DLL_PROCESS_ATTACH, 0x00000000) in "RDPSND.DLL" called.
DllMain(0x5DAC0000, DLL_PROCESS_ATTACH, 0x00000000) in "RDPSND.DLL" returned 1 (0x1).
GetProcAddress(0x5DAC0000 [RDPSND.DLL], "DriverProc") called from "WINMM.DLL" at address 0x76B43034 and returned 0x5DAC13AD.
GetProcAddress(0x5DAC0000 [RDPSND.DLL], "wodMessage") called from "WINMM.DLL" at address 0x76B43AFA and returned 0x5DAC142B.
LoadLibraryW("rdpsnd.dll") called from "WINMM.DLL" at address 0x76B43384.
LoadLibraryW("rdpsnd.dll") returned 0x5DAC0000.
GetProcAddress(0x5DAC0000 [RDPSND.DLL], "DriverProc") called from "WINMM.DLL" at address 0x76B43034 and returned 0x5DAC13AD.
GetProcAddress(0x5DAC0000 [RDPSND.DLL], "widMessage") called from "WINMM.DLL" at address 0x76B43AFA and returned 0x5DAC1410.
DllMain(0x71AB0000, DLL_PROCESS_DETACH, 0x00000000) in "WS2_32.DLL" called.
DllMain(0x71AB0000, DLL_PROCESS_DETACH, 0x00000000) in "WS2_32.DLL" returned 1 (0x1).
DllMain(0x71AA0000, DLL_PROCESS_DETACH, 0x00000000) in "WS2HELP.DLL" called.
DllMain(0x71AA0000, DLL_PROCESS_DETACH, 0x00000000) in "WS2HELP.DLL" returned 1 (0x1).
DllMain(0x76C90000, DLL_PROCESS_DETACH, 0x00000000) in "IMAGEHLP.DLL" called.
DllMain(0x76C90000, DLL_PROCESS_DETACH, 0x00000000) in "IMAGEHLP.DLL" returned 1 (0x1).
DllMain(0x10000000, DLL_PROCESS_DETACH, 0x00000000) in "DOCKEXT4DLL_NU.DLL" called.
DllMain(0x10000000, DLL_PROCESS_DETACH, 0x00000000) in "DOCKEXT4DLL_NU.DLL" returned 1 (0x1).
DllMain(0x789E0000, DLL_PROCESS_DETACH, 0x00000000) in "MFC90U.DLL" called.
DllMain(0x789E0000, DLL_PROCESS_DETACH, 0x00000000) in "MFC90U.DLL" returned 1 (0x1).
DllMain(0x77F60000, DLL_PROCESS_DETACH, 0x00000000) in "SHLWAPI.DLL" called.
DllMain(0x77F60000, DLL_PROCESS_DETACH, 0x00000000) in "SHLWAPI.DLL" returned 1 (0x1).
DllMain(0x78520000, DLL_PROCESS_DETACH, 0x00000000) in "MSVCR90.DLL" called.
DllMain(0x78520000, DLL_PROCESS_DETACH, 0x00000000) in "MSVCR90.DLL" returned 1 (0x1).
Unloaded "DBCLIENTUTILITY_NU.DLL" at address 0x04E20000.
Unloaded "NARECDLL_NU.DLL" at address 0x08380000.
Unloaded "MPGPDFDLL_NU.DLL" at address 0x041F0000.
Unloaded "P_OBJS_NEWOBJECTSTREAMER_NU.DLL" at address
答案 0 :(得分:0)
我已经解决了这个问题。此问题归因于MSCOREE.dll。
谢谢, 苏拉杰