5

次のようなより多くのコンポーネントをクライアントに追加する必要がある Setup & Deployment プロジェクトに追加するにはどうすればよいですか。

Microsoft Chart Controls
Microsoft SQL 2008 Express Edition (not 2005)

等...

代替テキスト http://img55.imageshack.us/img55/2586/200902021225eu9.png

このオプションは VS 2008 にはなく、ウィンドウ (上の画像) には「Microsoft Update で再配布可能なコンポーネントを確認する」へのリンクしかありませんが、2 つの「ブートストラップ パッケージ」を含むページに移動します (わかりません)。これは何ですか)

ユーザーにこれを手動でインストールするように求める代わりに、これをプロジェクトに追加する方法についてのアイデアはありますか?

ありがとうございました。

4

1 に答える 1

4

記事をご覧ください

Visual Studio 2005 用のカスタム ブートストラップ パッケージの作成

フォルダー C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages (VS 2005) または、VS 2008 の場合は C:\Program Files\Microsoft SDKs\Windows\v6.0A\ブートストラップ\パッケージ

スクリーンショットに示されているように、「パッケージ」の下の各フォルダーは、リストに表示される前提条件です。

そこで、前提としてMyPrereqというアプリを追加したい場合は、「Packages」の下に「MyPrereq」という独自のフォルダを作る必要があります。次に、次のような product.xml ファイルを作成します。

<?xml version="1.0" encoding="utf-8"?>
<Product ProductCode="MyPrereq" xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper">
  <PackageFiles CopyAllPackageFiles="false">
    <PackageFile Name="MyPrereq.exe" />
  </PackageFiles>
  <InstallChecks>
  </InstallChecks>
  <Commands Reboot="None">
    <Command PackageFile="MyPrereq.exe" EstimatedInstallSeconds="90">
      <InstallConditions>
      </InstallConditions>
      <ExitCodes>
    <ExitCode Value="0" Result="Success"/>
        <DefaultExitCode Result="Fail" String="GeneralFailure" FormatMessageFromSystem="true" />
      </ExitCodes>
    </Command>
  </Commands>
</Product>

そして、これに似たpackage.xmlファイル

<?xml version="1.0" encoding="utf-8"?>
<Package Name="MyPrereq" Culture="Culture" xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper">
  <Strings>
    <String Name="Culture">en</String>
    <String Name="DisplayName">MyPrereq</String>
    <String Name="GeneralFailure">A fatal error occurred. The installation failed.</String>
  </Strings>
</Package>

これらのファイルとセットアップ パッケージ (MyPrereq.exe) をフォルダーに配置します。ファイルを配置する場所を確認するには、例として既存のパッケージを確認します。

すべてを適切に行うと、「インストールする前提条件の選択」のリストに MyPrereq オプションが表示されます。

于 2009-02-23T03:30:13.880 に答える