Windows アプリケーションを配布する最良の方法は何ですか?
- アプリケーションの配布には、exe ファイルと zip ファイルのどちらの形式を使用すればよいですか?
- アプリケーションに署名する必要がありますか?
他に考慮すべき点はありますか?
innosetup を使用してアプリケーションのインストーラーを作成します。アプリケーションは node-webkit を使用して作成されます。
Windows アプリケーションを配布する最良の方法は何ですか?
他に考慮すべき点はありますか?
innosetup を使用してアプリケーションのインストーラーを作成します。アプリケーションは node-webkit を使用して作成されます。
(I'm not a Windows user, but) MSI package is better than both an exe-file and a zip-file. The freedom to choose interactive or unattended [un]installation, and the ability to handle dependencies and upgrades are enough to make it the best option. WiX makes MSI creation easier -- give it a try.
アプリケーションがデプロイされる限り、配布するデータ形式を選択しても機能上の違いはありません。
ここでは、技術的な観点ではなく、ユーザーの観点から話します。明確にラベル付けされたインストーラー (MSI がこれに最適ですが、.exe や .bat などの場合は、「インストーラー」または「クリックしてインストール」などのラベルを付けてください) と便利な readme を含めてください。 .zip での配布を選択してください。
それはすべて、exeが何を伴うかに依存します。単純な.NET実行可能ファイルであり、自己完結型の場合、必要なのはzip形式のexeファイルだけです(含まれている<.NET 2.0が保留中です)。後続の各バージョンのWindowsには、OSに.NETランタイムが組み込まれており、4.5または5.0までインクリメントされますか?
したがって、最新のWindowsがあり、.NET 4.5ライブラリがインストールされている場合、必要なのは基本的に実行可能ファイルだけです。ただし、古いOSの場合は、必要なランタイムをバンドルまたはリンクする必要がある場合があります。一部のアプリでは、サードパーティのコンポーネントと他のDLLをインストールする必要があります。この場合、最善の策は、Install ShieldやWise、Orcaなどのサードパーティツールを使用することです。このツールでは、SQL Server Personal、Oracle Personal、mySQL Database、Crystalレポートコンポーネントなどのサードパーティコンポーネントをカスタマイズしてインストールできます。
また、NTFSアクセス許可とネットワークアクセス許可が必要な場合、またはレジストリ値が必要な場合は、Wise、InstallShieldなどを使用してスクリプトを作成する必要があり、昇格されたアクセス許可が必要です。Microsoftには、Web、ネットワークパス、または実行可能ファイルを介してこれを実行できる、Deploy Once(?)ツールも組み込まれています。
それはすべてあなたのexeの複雑さ、それがあなたのシステムにどれだけ影響を与えるかなどに依存します。ファイアウォールの例外さえも必要とするアプリを見てきました。あなたが企業環境にいて、ドメインを持っているなら、SCCM/SMSまたはUniCenter。私が言ったように、それはすべて複雑さと範囲に依存します。
単純な.NET2.0アプリの場合、必要なのはzip形式のexeファイルだけです。最良の方法は、exeファイルをいくつかの異なるシステムにコピーしてテストすることです。
MSIは、本質的にシェルまたは実行/エクスプローラーから実行できます。また、インストールを自己完結型の実行可能ファイルにコンパイルすることもできます。
結論として、それはすべてあなたのアプリに依存します:)