我正在使用.net Framework 4.5,但在4.0中有相同的结果:

如果我编写了一个简单的控制台应用程序来初始化python.net,它将按预期工作。
如果我尝试从winforms应用程序执行相同的操作,则会得到“无法加载DLL'python27':找不到指定的模块。(HRESULT的异常:0x8007007E)”

如果我从winforms应用程序引用功能正常的控制台应用程序,并调用一个初始化python.net的方法,则会发生相同的情况。这两个项目的默认构建设置。

我什至把python27直接放到可执行文件文件夹中,但是仍然会发生相同的错误,所以我猜这可能是32位和64位的问题,即使两个项目都配置了任何cpu。

最佳答案

经过一番摸索之后,我发现了两件事:

将构建目标更改为x86可以解决丢失的DLL错误,但是在调用PythonEngine.Initialize()时,应用程序仍然会秘密崩溃。通过确保在执行任何其他代码之前进行初始化,我能够解决此问题。

10-06 07:35
查看更多