2010-11-30 12 views
4

コンソールアプリケーション、WPF、WinForm、その他のものが表示されますライブラリプロジェクトの作成方法

ライブラリはありません。ライブラリが必要です。

どうすればよろしいですか?または、Iron Pythonでライブラリを作成する方法はありませんか?

答えて

4

すぐに使える解決策はわかりませんが、Pythonライブラリを書くことは間違いありません(たとえば、ビルドアクションが "None"のファイルを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) 

コードが十分な頻度で変更された場合、あなたはビルドプロセスの一環として、このスクリプトを実行します(そして、それならば可能時間がかかりすぎると、すべてのファイルの最終更新日をキャッシュし、ビルド前に比較するコードを追加できます)。

.NETプロジェクトからライブラリにアクセスするには、some codeと書く必要があります(残念ながら参照を追加するほど簡単ではありません)。

+0

リンクはironpythonのホームページにリンクしています –

+0

@Chiel:ええと、リンクの腐敗が再び襲います。今修正しました、ありがとう! – Cameron

1

私の理解では、DLLは完全に検証可能ですが、私は間違っている可能性があるので、ライブラリプロジェクトはありません。 this blog postに関するいくつかの追加情報があります。これについては@Cameronのコードを少し詳しく説明しています。

+0

完全に検証可能なDLLとは何ですか? – Cameron

+0

VC++/clr:safeスイッチの説明については、http://msdn.microsoft.com/en-us/library/85344whh.aspxを参照してください。 C#で安全でないコードを使用すると、CLRで検証されていないC++と同じ影響があります。 –

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 dllを作成するためのIronPython - "Class Library"テンプレートがあります。

+0

良いですが、私はSDが本当に好きではありません:)私はVS – Cynede

関連する問題