3

CD から実行する必要がある .NET WinForms アプリケーションがあります。私が把握する必要があるのは、インストール後にアプリケーションを実行するよりも、ユーザーが .NET バージョンをインストールするか、必要に応じてインストールする必要があるかどうかです。ブートストラップについて私が見つけた情報には、アプリケーションのセットアップとインストールが含まれます。何もインストールしない場合、どうすればこれを行うことができますか? 情報をいただければ幸いです..

4

4 に答える 4

4

私もずっとインストーラーを作らないとできないと思っていましたが、そうではありません。"GenerateBootstrapper"と呼ばれる msbuild アクションがあります。Visual Studio を使用している場合:

  1. プロジェクトを右クリック
  2. プロジェクトのアンロード
  3. YourProjectName.csproj を編集します」

次に、さまざまな方法で GenerateBootstrapper アクションを追加できます (インストールするものによって異なります)。MSDN は .NET 2.0 の例を示しています。

<ItemGroup>
    <BootstrapperFile Include="Microsoft.Net.Framework.2.0">
        <ProductName>Microsoft .NET Framework 2.0</ProductName>
    </BootstrapperFile>
</ItemGroup>

<Target Name="BuildBootstrapper">
    <GenerateBootstrapper
        ApplicationFile="WindowsApplication1.application"
        ApplicationName="WindowsApplication1"
        ApplicationUrl="http://mycomputer"
        BootstrapperItems="@(BootstrapperFile)"
        OutputPath="C:\output" />
</Target>

この例は試していませんが、自分で試してみたところ、XP マシンに .NET 4 Client Profile (現在の最新の安定した .NET リリース) をインストールするには、Windowsをインストールする必要があることがわかります。まずイメージング コンポーネント。そのため、VS2010 に含まれる標準の .NET4 クライアント プロファイルの前提条件が XP で失敗します。だから私は自分のブートストラップを書いた。コンソール アプリ用のブートストラップを作成するサンプル VS2010 ソリューションをダウンロードできます。ただし、ブートストラップをインストール (コピーするだけ) する必要があります。手順は次のとおりです。

  1. Windows Imaging Component ブートストラップをダウンロードする
  2. %PROGRAMFILES%\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages に解凍します。
  3. BootstrapperTest ソリューションをダウンロードする
  4. ビルド ソリューション。\bin\Debug ディレクトリに BootstrapperTest.exe と setup.exe が作成されていることがわかります。Setup.exe はブートストラップです。.NET がインストールされていなくても実行できます。.NET が取得され、BootstrapperTest.exe が実行されます。
  5. 単一のファイルとして配布する場合は、ChilkAt Zip2Secureまたはその類似物を使用することをお勧めします。Zip2Secure は非常に使いやすく、問題がないことを願っています。
于 2012-04-12T14:50:52.093 に答える
3

Visual Studio でビルドする msi インストーラーには、フレームワークの依存関係をチェックし、必要に応じて最初にインストーラーを開始するネイティブの setup.exe を含めることができます。CD に再配布可能ファイルを含めることもできます。ただし、それを機能させるには、プログラムをインストールする必要があります。

それ以外の場合は、独自のネイティブ コード ツールを作成する必要があります。

于 2009-02-04T17:37:59.680 に答える
2

.NET ランタイムをチェックし、必要に応じて .NET のインストールをトリガーし、.NET アプリケーションを起動する小さなネイティブ コード ローダーをコーディングできます。

于 2009-02-04T17:38:07.650 に答える
2

最も簡単な方法は、この質問に記載されているレジストリ エントリを確認することです。

.Net フレームワークの検出

スクリプト ファイルは、CD から確認する最も簡単な方法です。

Windows Script Host - RegRead メソッド

于 2009-02-04T17:45:36.137 に答える