web-dev-qa-db-ja.com

インストールせずに実行できるVisual Studioアプリケーションを展開する最良の方法

私はC#/。NETを使用して非常に単純なアプリケーションを作成しましたが、それを公開する良い方法がわかりません。これは、ユーザーが一度だけ実行するか、数か月ごとに実行する一種の「ツール」です。このため、インストールする必要のない場所に展開する方法があることを望んでいます(ダウンロードした直後にEXEファイルをダブルクリックするだけで実行できます)。

ただし、.NETやライブラリなどの正しいバージョンを含める必要があるため、正しく実行されます。 ClickOnceの使用時にこれが含まれることは知っていますが、それでもユーザーのコンピューターにアプリケーションがインストールされます。

これを行う方法はありますか?

編集-\ bin\Debug

myAppName.application
myAppName.exe
myAppName.exe.config
myAppName.exe.manifest
myAppName.pdb
myAppName.vshost.application
myAppName.vshost.exe
myAppName.vshost.exe.config
myAppName.vshost.exe.manifest
extraLibrary.dll

2つのフォルダー

app.publish
Resources
70
Wilson

それは可能であり、一見簡単です:

  1. メニューBuildまたはプロジェクトのプロパティ→Publish。これにより、 ClickOnce アプリケーションのインストーラーが作成されます。
  2. ただし、作成されたインストーラーを使用する代わりに、作成されたファイル(EXEファイルと。config。manifest、および。applicationファイル、およびDLLファイルなど)-それらはすべて同じフォルダー内にあります通常は、プロジェクトファイルの下のbin\Debugフォルダー(。csproj)にあります。
  3. そのフォルダーを圧縮する(*。vhost。*ファイルとapp.publishフォルダー(これらは必要ありません)、およびデバッグを直接予測しない限り.pdbファイルを除外します。ユーザーのシステムで(たとえば、リモートコントロールによって)、ユーザーに提供します。

追加の利点は、ClickOnceアプリケーションとして、実行に管理者特権が必要ないことです(アプリケーションがアプリケーションデータなどに使用するフォルダーの通常のガイドラインに従っている場合)。

.NETについては、アプリケーションにインストールされている(またはまったく).NETの最低限必要なバージョンを確認し(ほとんどのユーザーは既にインストールされています)、Microsoft Webサイトのダウンロードページへのリンクを含むダイアログを表示できます(または、Microsoftページにリダイレクトできるページの1つを指します。これにより、Microsoft URLが変更された場合に、より堅牢になります)。これは小さなユーティリティであるため、.NET 2.0をターゲットにして、ユーザーが.NETをインストールしなければならない可能性を減らすことができます。

できます。開発およびテスト中にこの方法を使用して、アプリケーションを常にアンインストールおよびインストールしなくても、最終的なアプリケーションの実行方法に非常に近い状態を維持します。

95
Peter Mortensen

まず、次の方法でファイルを公開する必要があります。

  1. BUILD-> PUBLISHまたはソリューションエクスプローラーでプロジェクトを右クリックして->プロパティ->ソリューションエクスプローラーでプロジェクトを公開または選択してを押す Alt + Enter 注: Visual Studio 201 を使用している場合、プロパティでBUILDに移動する必要があります。その後、DEBUG定数の定義とTRACE定数の定義を無効にする必要があり、準備ができています。 Representation

  2. ファイルを特定のフォルダーに保存します。生成されたファイル(EXEファイル、.config、.manifest、および.applicationファイル、およびDLLファイルなど)を見つけます-それらはすべて同じフォルダーにあり、通常はbin\Debugフォルダーにありますプロジェクトファイル(.csproj)の下。 Visual Studioでは、これらはApplication Filesフォルダーにあり、その中には.exeファイルとdllファイルが必要です。 (ClickOnceおよびその他のファイルを削除してから、このフォルダーをZipファイルにして配布する必要があります。)

注:ClickOnceアプリケーションはプロジェクトをシステムにインストールしますが、1つの利点があります。ここで管理者権限を実行する必要はありません(アプリケーションがアプリケーションデータなどに使用するフォルダの通常のガイドラインに従っている場合).

1
abe312