2010-11-30 82 views
4

我可以看到控制台应用程序,WPF,WinForm,别的东西如何创建库项目

但没有库,我只需要一个库。

我怎么可以欺骗呢?或者没有办法用Iron Python创建库?

回答

4

我不知道任何超出现成的解决方案,但你绝对可以写你的Python库(使用,比如说,文件与已添加到C#“无”的生成操作/ VB.NET类库项目),然后手动使用以下IronPython的片段它们编译成DLL:

import clr 
files = [ 'file1.py', 'file2.py' ] # Look into os.walk() if you have more than a few files 
clr.CompileModules('Foo.dll', *files) 

如果代码经常变化的话,你可以运行该脚本生成过程的一部分(如果它开始花费太长时间,您可以添加一些代码来缓存所有文件的最后修改日期并在构建之前进行比较)。

请记住,您需要编写some code以从您的.NET项目(s)访问您的库(不幸的是,不像添加引用那么简单)。

+0

链接指向的IronPython – 2015-10-21 16:19:20

+0

@Chiel的主页:嗯,再次将腐烂的罢工。现在修复,谢谢! – Cameron 2015-10-21 16:47:48

1

我的理解是,有没有图书馆项目,因为DLL是完全可验证的,但我可能是错上。在this blog post上有一些额外的信息,这些信息会在@Cameron发布的代码中详细介绍。

+0

什么是可完全验证的DLL? – Cameron 2010-12-01 01:59:09

2

检查IronPython-2.7\Tools\Scripts\pyc.py - 它可以创建从Python源.exe和.dll。

ipy.exe pyc.py /out:my_dll /target:dll my_dll.py 
1

SharpDevelop有一个IronPython - 用于创建IronPython dll的“类库”模板。