Winapi UpdateResource,无错误,但未添加资源。为什么?
我想基于资源编写一个简单的配置程序。我使用Windows API函数更新stub.exe的资源。应用程序未显示任何错误,但在exe文件损坏时未添加资源!。当我在ResourceHacker中打开stub.exe时,没有任何资源 我的代码是:Winapi UpdateResource,无错误,但未添加资源。为什么?,winapi,visual-c++,Winapi,Visual C++,我想基于资源编写一个简单的配置程序。我使用Windows API函数更新stub.exe的资源。应用程序未显示任何错误,但在exe文件损坏时未添加资源!。当我在ResourceHacker中打开stub.exe时,没有任何资源 我的代码是: #include <Windows.h> #define LANGUAGEID 1033 HANDLE hUpdate; char szStubPath[MAX_PATH]; char DeadCode[] = "0xDEADC0DE"; u
#include <Windows.h>
#define LANGUAGEID 1033
HANDLE hUpdate;
char szStubPath[MAX_PATH];
char DeadCode[] = "0xDEADC0DE";
unsigned int error = 0;
int main()
{
GetCurrentDirectory(MAX_PATH, szStubPath);
lstrcat(szStubPath, "\\stub.exe");
hUpdate = BeginUpdateResource(szStubPath, FALSE);
if(hUpdate == NULL)
{
MessageBox(0, "BeginUpdateResource failed.", 0, MB_OK+MB_ICONERROR);
error = 1;
}
if(UpdateResource(hUpdate, RT_STRING, TEXT("CURRENT"), LANGUAGEID, &DeadCode, 11) == FALSE)
{
MessageBox(0, "UpdateResource failed.", 0, MB_OK+MB_ICONERROR);
error = 1;
}
if(EndUpdateResource(hUpdate, FALSE) == FALSE)
{
MessageBox(0, "EndUpdateResource failed.", 0, MB_OK+MB_ICONERROR);
error = 1;
}
if(error == 0)
{
MessageBox(0, "stub.exe - Resource added.", "Info", 0);
return EXIT_SUCCESS;
}
else
{
MessageBox(0, "stub.exe - Adding resource failed.", "Info", 0);
return EXIT_FAILURE;
}
}
没有错误,但在exe文件损坏时未添加资源!,为什么?怎么了
编辑:
我想补充的是,StudioEXE是用MasM32编写的,而CONT.EXE是用Visual C++编写的。不同的编程语言是否有可能产生问题
您好,David更新资源非常麻烦。请务必仔细阅读MSDN文章,以便了解其限制。特别注意备注部分的第一段,我已经将Studi.EXE写到VisualC++中。现在,Copy.EXE和Studi.EXE都在Visual C++中,并且都在工作!