0

我用这个来源制作了一个 .pyd 文件:

def hello():
    print("Hello world")

我想从 rundll32 运行 hello() (或一般的任何 C 代码)

我试过rundll32 hello.pyd,hello()rundll32 hello.pyd,hello都没有奏效

我也查看了C代码,没有发现任何有用的东西

4

1 回答 1

0

不要使用rundll32,而是使用C。

使用此工具检查您的 hello.pyd 作为 dll:http: //www.nirsoft.net/utils/dll_export_viewer.html

所以你会看到:如果你的文件是一个真正的.dll。

如果是真正的 DLL:

  • 您将在 hello.pyd 中看到导出的内容
  • 您可以使用 IMPLIB 生成用于链接的 .lib 文件。

http://docwiki.embarcadero.com/RADStudio/Sydney/en/IMPLIB.EXE,_the_Import_Library_Tool_for_Win32

  • 例如,在您的 c 源代码中声明您的函数

    无效你好();

于 2020-12-05T12:03:43.340 回答