5

私は .net プロジェクトを開発しましたが、今はインストーラーを実行しています。私のプロジェクトには、Microsoft SQL 2008 または Microsoft SQL 2008 Express が必要です。Microsoft SQL 2008 Express をインストールする Bootstrapper を作成しましたが、Microsoft SQL 2008 が既にインストールされている場合を除き、正常に動作します。Microsoft SQL 2008 が既にインストールされている場合、どうすればインストールをバイパスできますか?

編集: このソリューションは、Microsoft SQL 2008 で機能します。

<Product xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper" ProductCode="AAA">
   <InstallChecks>
      <RegistryCheck Property="IsInstalled" Key="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL" Value="SQL2008" />
   </InstallChecks>

   <Commands Reboot="Defer">
      <Command PackageFile="setup.exe" EstimatedInstallSeconds="15" >
         <InstallConditions>
            <BypassIf Property="IsInstalled" Compare="ValueExists" />
         </InstallConditions>
      </Command>
   </Commands>

   ...

</Product>
4

1 に答える 1

3

正直なところ、私はあなたがやろうとしていることの専門家ではありません。しかし、SQL サーバー検出レポートは役に立ちますか? : SQL サーバー検出レポート

また

インストールされた SQL サーバー インスタンスの決定

編集:

私は次のようなことを考えていました:

<Product xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper" ProductCode="AAA">
   <InstallChecks>
      <RegistryCheck Property="IsInstalled" Key="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names" Value="SQL" />
   </InstallChecks>

   <Commands Reboot="Defer">
      <Command PackageFile="setup.exe" EstimatedInstallSeconds="15" >
         <InstallConditions>
            <BypassIf Property="IsInstalled" Compare="ValueExists" />
         </InstallConditions>
      </Command>
   </Commands>

   ...

</Product>
于 2013-01-04T11:10:00.693 に答える