gpt4 book ai didi

c++ - 无法创建DLL : Getting DLL "is not a valid Win32 application"

转载 作者:行者123 更新时间:2023-12-02 01:27:42 25 4
gpt4 key购买 nike

正如标题所说,我无法创建一个简单的 DLL。我使用的是 VS 2017 社区版版本 15.8.0。这是.dll 代码:

#include "stdafx.h"
#include "InvWin32App.h"

#include "$StdHdr.h"

void Prc1()
{
printf("ran procedure 1\n");
}

这是 header 的代码,按照 MS 的方式执行操作:

#ifdef INVWIN32APP_EXPORTS
#define INVWIN32APP_API __declspec(dllexport)
#else
#define INVWIN32APP_API __declspec(dllimport)
#endif

#ifdef __cplusplus
extern "C" {
#endif

INVWIN32APP_API void Prc1();

#ifdef __cplusplus
}
#endif

这里是驱动程序代码:(更新:驱动程序是一个.exe程序。)

#include "pch.h"
#include "InvWin32App.h"

int main()
{
Prc1();
}

没有比这更简单的了。当我尝试运行代码时,出现以下错误消息框:

Unable to start program
program name.dll
program name.dll is not
a valid Win32 application

我可以创建 .exe 程序。今天早上早些时候,我在运行 VS 2017 版本 15.7.5 时也遇到了错误。升级VS没有任何作用。我也尝试将它们编译为 .c 程序,但没有任何区别。

我在使用 VS 2015 创建 .exe 程序时多次遇到此问题。我不记得我做了什么,但问题消失了。任何帮助将不胜感激。

TIA。

最佳答案

右键单击解决方案资源管理器中可执行文件的项目,然后单击“设置为启动项目”。

请注意,“不是有效的 Win32 应用程序”不是编译错误或链接错误,而是当您尝试调试不可执行的内容时收到的消息。

您只能启动可执行文件。可执行文件消耗 dll。这些应该是两个独立的项目,具有两组相应的项目设置。

关于c++ - 无法创建DLL : Getting DLL "is not a valid Win32 application",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51864328/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com