将IronPython WPF项目编译为exe:缺少dll

1 投票
1 回答
1829 浏览
提问于 2025-04-17 00:26

我想把我的基于IronPython和WPF的应用程序编译成一个.exe文件。我在网上查找了解决方案,发现了这个链接:

将IronPython WPF项目编译为exe

我发现这个修改过的pyc.py文件比原来的更好,因为我不需要在命令行中输入项目中所有文件的名字。当我运行这个时,我得到了一个dll文件和一个可执行文件。我还包括了上面讨论中提到的其他dll文件,比如IronPython.dll。现在只有一个问题。我在我的主文件代码的顶部有以下内容:

import wpf

from System.Windows import MessageBox, Application, Window

这个应用在VS2010上运行得很好,但可执行文件似乎找不到任何名为wpf或Window的dll。我有一个叫IronPython.Wpf.dll的文件,我把它放在文件夹里,但好像不管用。我缺少哪个dll呢?或者有没有其他方法可以解决我的问题?

1 个回答

4

你应该添加

import clr
clr.AddReference('IronPython.Wpf')

并确保把 IronPython.Wpf.dll 文件放在和你的主脚本同一个文件夹里,这个文件是在IronPython的安装目录下找到的。

我还是遇到了一个和STA线程有关的异常,但那是另一个问题。

编辑:可以查看 这个链接,了解关于STA错误的更多信息。

撰写回答