VS2017中针对“IronPython WPF应用程序 ”生成exe的方式

VS2017中有没有针对“IronPython WPF应用程序 ”生成exe的方式?

我想应该是有的吧!但寻找了一整天了,也没有找到。搜索了网上的资料,也没有解答这个问题的。谁能解答不胜感激!

2个回答

并没有。你可以转换为python 3.x代码(界面用pyqt改写),用py2exe,pyinstaller等工具。
或者用C#、VB调用IronPython

我仔细试了一下,ipyc.exe是可以用的,关键是要把相关的资源全部包括进来,这是一个很痛苦的过程,我下面的实验程序如下:
1、xaml代码:
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="第一个Python程序——简单计算器" Height="300" Width="500">
/*

































*/

2、python代码:
#encoding=utf-8
#from future import division
import traceback
import wpf
import clr

clr.AddReference('IronPython.Wpf')
from System.Windows import Application, Window

class MyWindow(Window):
def init(self):
wpf.LoadComponent(self, 'WpfPython1.xaml')
#self.Title = "第一个Python程序——简单计算器"

def btnInput_Click(self, sender, e):
    self.txtInput.Text += sender.Content

    pass


def btnClear_Click(self, sender, e):
    self.txtInput.Text = ""
    self.txtOutput.Text = ""

    pass


def btnCalc_Click(self, sender, e):
    try:
        result = eval(self.txtInput.Text)
        self.txtOutput.Text = str(result)
    except Exception, e:
        tracelog = traceback.format_exc()
        self.txtOutput.Text = str(e)
    pass

if name == '__main__':
Application().Run(MyWindow())

3、编译成winexe的命令如下:
ipyc.exe wpfpython1.py /main:wpfpython1.py D:\Python\Lib\traceback.py D:\Python\Lib\linecache.py D:\Python\Lib\os.py D:\Python\Lib\ntpath.py D:\Python\Lib\stat.py D:\Python\Lib\genericpath.py D:\Python\Lib\warnings.py D:\Python\Lib\types.py D:\Python\Lib\UserDict.py D:\Python\Lib_abcoll.py D:\Python\Lib\abc.py D:\Python\Lib_weakrefset.py D:\Python\Lib\wpf.py D:\Python\net45\DLLs\IronPython.Wpf.dll /target:winexe /standalone

最后的编译命令包含进来了14个库,哈哈!编译后的执行文件达4M之巨。但不管怎么说,能够独立运行了。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐