小编J. *_*ran的帖子

无法创建 DLL:获取 DLL“不是有效的 Win32 应用程序”

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

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

#include "$StdHdr.h"

void Prc1()
{
    printf("ran procedure 1\n");
}
Run Code Online (Sandbox Code Playgroud)

这是标头的代码,按照 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
Run Code Online (Sandbox Code Playgroud)

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

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

int main()
{
    Prc1();
}
Run Code Online (Sandbox Code Playgroud)

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

Unable to start program
program name.dll
program name.dll is not
a valid Win32 application
Run Code Online (Sandbox Code Playgroud)

我可以创建 .exe 程序。今天早上早些时候,我在运行 VS 2017 …

c c++ visual-studio

10
推荐指数
1
解决办法
2万
查看次数

标签 统计

c ×1

c++ ×1

visual-studio ×1