5

os、などの Python ライブラリsysと .NET ライブラリからインポートする IronPython スクリプトを作成しました。

Visual Studio の IronPython ソリューションからは問題なく動作しますが、IronPython または Python をインストールしていない他のユーザーが実行できるように、これをデプロイする必要があります。

どうすればいいですか?

4

1 に答える 1

12

要件:

  • ipy.exeC:\Program Files (x86)\IronPython 2.7.1\
  • pyc.pyC:\Program Files (x86)\IronPython 2.7.1\Tools\Scripts\
  • MyProgram.pyあなたのプログラムになります。

    1. プロジェクト フォルダー (場所MyProgram.py) 内に、"deploy" というフォルダーを作成します。
    2. cd deployコマンドプロンプトで実行します。
    3. 走る"C:\Program Files (x86)\IronPython 2.7.1\ipy.exe" "C:\Program Files (x86)\IronPython 2.7.1\Tools\Scripts\pyc.py" /main:..\MyProgram.py /target:exe

これにより、フォルダー内に MyProgram の dll と exe が生成されdeployます。

MyProgram.exeのようなライブラリをインポートして実行しようとするとosNo module named ....

を使用しているため、os次のエラーが発生します。

"MyProgram.exe" を実行し、標準ライブラリを使用している場合、No module named...エラーが発生する可能性があります。

私の場合、私は得ました:

未処理の例外: IronPython.Runtime.Exceptions.ImportException: No module na med os
...

この問題を解決するには、作成したばかりのフォルダーにフォルダーをコピーしLibます。次に、エラーをスローしているライブラリをインポートする前に、次のように変更します。C:\Program Files (x86)\IronPython 2.7.1\deployMyProgram.py

import sys
sys.path.append("Lib")

# Followed by library imports that were causing you trouble:
import os

最後の手順として、次のファイルもフォルダーにコピーしC:\Program Files (x86)\IronPython 2.7.1\ますdeploy

- IronPython.dll
- IronPython.Modules.dll
- Microsoft.Dynamic.dll
-Microsoft.Scripting.dll

これで、フォルダーを圧縮してdeploy発送できます。

于 2012-07-31T22:56:13.617 に答える