24

間もなくベータ版アプリをリリースします。これには、 Pythonでカスタム統合スクリプトを作成するオプションがあります。

このアプリはMacOSXとWindowsを対象としていますが、私の問題はPythonが通常存在しないWindowsにあります。

私の実際のアプローチは、Python2.6インストールをサイレントに実行することです。ただし、デフォルトでアクティブ化されておらず、コマンドラインオプションを使用するとパスが設定されないという問題に直面しています。そして、Pythonが以前にインストールされていて、新しいバージョンにアップグレードすると、他の何かが壊れる可能性があるのではないかと心配しています...

だから、どうすればこれをきれいに行うことができるのだろうか。Python 2.6ディレクトリ全体をコピーして、アプリのサブディレクトリに配置し、そこにすべてをインストールしても大丈夫ですか?または、virtualenvを使用して、異なるバージョンのPythonを実行することもできます(Pythonがすでにマシンにインストールされている場合)。

また、PythonをDLLに埋め込む前にプレイしましたが、簡単でしたが、デバッグできなくなったため、コマンドラインプラグインに切り替えました。

コマンドラインからプラグインを実行し、STDOUTとSTDERRの出力を読み取ります。アプリはDelphi/Lazarusで作られています。JSONやRPCクライアント、Win32com、ORMなどの他のモジュールをインストールします。bitrockを使用してインストーラーを作成します

更新:エンドユーザーは中小企業の所有者であり、Pythonスクリプトは開発者によって作成されています。展開の追加手順を避けたいので、完全に統合されたセットアップが必要です。

4

4 に答える 4

14

Portable Pythonフォルダーをインストーラーから、Delphi/Lazarus アプリと同じフォルダーにコピーします。そのためにすべてのパスを適切に設定します。

于 2009-10-29T23:16:58.067 に答える
13

py2exeを使ってみてください。Pythonがすでに含まれている.exeファイルを作成します!

于 2009-10-29T20:30:41.920 に答える
4

P4Dを使用して、Python インタープリターを Delphi アプリに統合します。これらのコンポーネントは実際に機能し、双方向でも機能します (バイナリ拡張として Python に公開された Delphi クラスと、Delphi 内の Python インタープリタ)。また、Google Code の「issues」ページで Lazarus 互換性のためのパッチを見ましたが、未解決の問題がいくつかあるようです。

于 2009-10-29T23:21:13.943 に答える
1

.EXE パッケージを PyInstaller や py2exe などのツールと Python で作成されたプラグインと組み合わせても問題はないと思います。作成された .EXE は、インストールされている場所を簡単に検出でき、内部のコードは、import事前に定義されたプラグイン ディレクトリから単純にファイル化できます。Python スクリプトを実行可能ファイルにパッケージ化すると、内部に Python インタープリターもパッケージ化されるため、独自のコードでカスタマイズされた完全な Python 環境が得られることを忘れないでください。

于 2009-10-30T05:27:32.697 に答える