我需要加载一个字符串,该字符串位于不同进程的资源 dll 中,前提是该进程将在调用时运行。
我尝试了以下代码 -
HMODULE hRes = ::LoadLibrary(_T("SomeResource.dll"));
TCHAR buffer[50];
::LoadString(hRes, IDS_SOME_ID, buffer, 50);
此代码在 Debug模式下运行时运行良好。 但在 Release模式下 LoadLibrary 返回零。为什么?
我错过了什么吗?请帮助我。
我使用的是VC7.1编译器。
最佳答案
可能是查找 "SomeResource.dll"
的问题。当您从调试器运行时,可执行文件将从项目的路径启动。如果可以从那里找到 DLL。没关系。当您从 IDE 外部运行时,可执行文件将从不同的文件夹启动。可能是无法从那里找到 DLL。
关于c++ - 如何从不同进程的资源中加载字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3350760/