問題タブ [esky]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - サブモジュールを含まないEsky
py2app で正常に動作している中規模の PyQT5 デスクトップ アプリケーションがあります。アプリが自分自身を更新できるように Esky を組み込みたいのですが、起動時に (メイン ウィンドウを表示する前に) アプリが終了し、"HelloApp エラー" というログ エントリが表示されます ("HelloApp" はアプリケーションの名前です)。
https://github.com/markmont/esky-package-questionで入手できる問題を再現する小さなテスト ケースを作成しました。
テスト ケース アプリの構造は次のとおりです。
setup.py には以下が含まれます。
HelloApp.py にはステートメントが含まれています。これが、アプリケーションが起動するステートメントを削除して helloform/ init .py のfrom helloform import Form内容に貼り付けたかのように、「HelloApp エラー」というエラーでアプリの起動に失敗する原因のようです。正しく動作します。
また、すべてを単一のディレクトリに移動し、setup.py のパスを調整すると、問題は発生しません。Esky が helloform.py (以前は helloform/ init .py という名前) を見つけてインクルードし、アプリケーションが起動します。そして正しく動作します:
...しかし、すべてを単一のディレクトリに配置することは、中規模から大規模のアプリケーションにとってスケーラブルなソリューションではありません。
問題が発生したときの出力にエラー メッセージはありませpython setup.py bdist_eskyん。また、Esky のドキュメントや Web 上のさまざまな例で答えを見つけることができませんでした。
/var/log/system.log からの完全なエラーは次のとおりです。
setup.py でEsky のincludesオプションを適切に使用していないと思いますが、これを修正する方法についての手がかりがありません。誰か助けてもらえますか?
その他の関連する可能性のある詳細: MacOS X 10.9 Mavericks、Python 2.7.6 (ローカル ビルド)、qt-5.3.0 オープンソース、sip 4.16、PyQT 5.3.0 (GPL)、PyQT5をサポートするようにパッチが適用されたpy2app 0.8.1 、および最新バージョンGitHub からの Esky の。
前もって感謝します!
python - python esky 0.9.8を使用してコンソールウィンドウを非表示にする方法は?
現在、esky パッケージ ( https://pypi.python.org/pypi/esky ) にバンドルされている python を使用して作成した exe があります。
私のセットアップファイルは次のようになります
)
py2exe では、scripts=[pythonAppEXE] の代わりに windows=[pythonAppEXE] を使用できることがわかりましたが、残念ながら、esky を使用する場合は scripts=[pythonAppEXE] を置き換えることはできません。
では、コンソールを持たない exe を作成するにはどうすればよいでしょうか。
python - esky 0.9.8 で古いバージョンを削除できません : Python
私はesky 0.9.8を使用しています:Python。
esky を使用して、実行可能ファイルを新しいバージョンに頻繁に更新します。
これは、esky が実行可能ファイルの古いバージョンを消去しないという事実を除けば、まったく問題なく機能します。
これは私が使用するコードです:
古いバージョンを削除しないため、最後の行「app cleanup()」以外はすべてうまく機能します。
私の実行可能ファイルフォルダーには、次のものがあります。
App.exe App.old.exe App.old.old.exe
等々。
古いバージョンの Executable が esky によって削除されないのはなぜですか?
python - Esky で最新バージョンをアンインストールできない
「app.uninstall_version(v)」を使用して esky のバージョンをアンインストールしようとしていますが、そうすると次のエラーが発生します。
私のプログラムは、プログラムの新しいバージョンが利用可能になるとインストールし、新しいバージョンを別のプロセスで開き、その終了コードを待ちます。終了コードが 0 の場合、プログラムは再起動して新しいバージョンを実行しますが、終了コードが 0 でない場合 (新しいバージョンにエラーがあることを意味します)、プログラムは新しいバージョンを削除し、通常どおり実行を続けます。
コードは次のとおりです。
新しいバージョンをアンインストールしようとすると「アクセスが拒否されました」というエラーが表示されるのはなぜですか? また、新しいバージョンをアンインストールするにはどうすればよいですか?
python - wine で Windows 用のソフトウェアをパッケージ化する
Esky/cx_freeze を使用して、さまざまな OS 用の Python プログラムをパッケージ化しています。Windows で行う必要がある場合は、VirtualBox で Windows 7 を使用します。
ただし、この方法はかなり不快で重いと思います。Wine を介して Windows 用のプログラムをパッケージ化する方法はありますか?
基本的に、必要なすべてのライブラリをインストールしてから、「python setup.py bdist_esky」などのコマンドを実行する必要があります。
cx_freeze のドキュメントがこれをアドバイスしていないことは知っていますが、ソフトウェアをパッケージ化するためのより良い方法を見つけようとしています。誰かがより良い選択肢を持っているのだろうか。
python - Python Windows サービス - Esky による更新
現在py2exeを使用してexeをビルドし、WiXツールセットを使用してMSIをビルドするWindowsサービスが動作しています。
この構造は機能しますが、サービスのサイレント更新と自動更新のために esky をミックスに導入すると、更新されたバージョンを適切に取得できません。
python setup.py bdist_esky上記の setup.py を実行すると、.zip ファイルが作成されます。解凍後、実行可能ファイルとサービスを適切にインストールして開始できます。
バージョン番号を増やしてpython setup.py bdist_esky再度実行すると、別の zip ファイルが作成されます。
次に、元の.exe を実行すると、更新が正しく認識されますが、実行に失敗し、次の例外が返されます。
You are running: 1.0.0
('ERROR UPDATING APP:', OSError(None, 'unable to cleanup: startup hooks not run'
))
eskyに関連する私のWin32Service実装の抜粋は次のとおりです
さらに情報が必要な場合は、必要に応じてコードを追加します。目標は、以下を達成することです。
- ビルド実行可能ファイル / MSI
- どこにでも展開
- 中央サーバーから自動的に更新します。
私はディストリビューションとエスキー全般に非常に慣れていません。あらゆるアドバイスをいただければ幸いです。
python - eskyを使用して投稿データを送信する方法はありますか?
eskyで投稿データを送ることはできますか?