Windows Vistaでpythonを使用していくつかのプログラムを作成しました。しかし、私はWindows XPにそれを展開したい。 Windows XPで新しいビルドを作る必要がありますか?あるいは、これらのシステムの両方で動作するビルドを作る可能性はありますか?Vistaでexeをビルドし、py2exeを使用してXPにデプロイすることは可能ですか?
EDIT(EDIT 2 - 非常に簡単なプログラムも動作しません): 私のセットアップ:ほぼ解決
msvcr90.dll
kernel32.dll
+ntdll.dll
:
依存エクスプローラを使用してfrom distutils.core import setup
import py2exe
setup(console=['orderer.py'])
私は依存関係があることを確認:
私はinstalli ng:http://www.microsoft.com/downloads/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displaylang=enものをします。しかし、私は以前に手動でmsvrc90.dllを提供しようとしましたが、うまくいきませんでした。自動的に再配布する方法はありますか?または、私はこのインストールファイルを彼に提供する必要があります。
最終と主な問題
は、今私はMSVCRT.DLLに問題があります。
がダイナミック リンクライブラリMSVCRT.DLLに配置することができませんでしたwcsscpy_sプロシージャエントリポイントは、Vista上で
は私が持っているバージョン7.0.6001.18000
:Windows XPの上で発生したメッセージしかし、XP上で7.0.2600.5512
これを修正する方法はありますか?
私はいくつかのdllの...愚かなミスを排除していなかったようだ:
$ grep -lir msvcrt.dll .
./buildout
./buildtest.py
./dist/ACTIVEDS.dll
./dist/adsldpc.dll
./dist/ATL.DLL
./dist/credui.dll
./dist/DSOUND.dll
./dist/MAPI32.dll
./dist/PROPSYS.dll
./dist/WLDAP32.dll
今それは働きます!
このファイルを作成してこれらのdllを追加した後も、「プロシージャのエントリポイントwcsscpy_sがダイナミックリンクライブラリmsvcrt.dllに見つかりませんでした」 – dfens
プログラムは2つのCランタイムライブラリに依存するべきではありません。 msvcrt.dllの依存関係がどこから来たのか調べてみてください。 * .pydファイルと* .dllファイルにDependencyWalker(http://www.dependencywalker.com/)を使用します。 – cgohlke
私はそれを参照してください_ctypes.pyd – dfens