1

PyInstaller をファイルにポイントすることで .exe をパッケージ化する方法を理解しています。のような:

c:\Python25\python c:\Users\Mike\Desktop\pyinstaller-1.4\Makespec.py -F -w sampleApp.py

ただし、[ファイルではなく] 文字列のみで .exe を作成する方法はありますか? そのような:

string="""
print "Hello world"

"""

buildApplication(string) #Function Does not exist
4

1 に答える 1

1

私の知る限りでは、既存のスタンドアロン実行可能ファイル作成ツール ( py2exePyInstaller、およびcxFreeze ) のいずれかを使用して一時ファイルを作成する必要性を回避することはできません。

私が最も実行可能な解決策として考えているのは、次の 2 つの手法を組み合わせて、目立たないようにすることで少しセキュリティを強化することです。

  1. 関数を使用して、生成されたコード文字列から、.pycプレーンテキスト ファイルの代わりに、バイトコード コンパイル ファイル ( ) を直接作成します (これを達成する方法は py_compile モジュールのソース コードにありますバイト コンパイル ファイルは次のようになります。ソースファイルよりも詮索好きにはあまり役に立ちません。.py__builtin__.compile
  2. tempfileモジュールを使用して作成された、あいまいな名前と場所を持つ一時ファイル。このファイルの存続期間は比較的短いですが、明らかに、十分に決定されたユーザーであれば、ファイルが存在している間にファイルを見つけてコピーし、実行可能ファイル作成ツールで使用することができます。
于 2012-10-26T13:43:58.513 に答える