最近、Visual Studio2011ベータ版でマイナーなExcel2010アドインを開発し、今すぐソリューションを展開しようとしました。前提条件として.NETFramework4を選択しましたが、ターゲットコンピューターにまだインストールされていない場合は、setup.exeによってダウンロードされます。
しかし、ビルド時に[公開]タブの[前提条件]ダイアログに[Officeランタイム用ツール]を表示しようとすると、頭痛の種になります。奇妙なことに、私のOfficeには、この設定が設定された古い2010 Visual Studioインストールがあり、エントリを選択してビルドし、ボイラーを作成できます。ランタイムがダウンロードされます。
Visual Studioにどのように伝えることができますか:見てください、このランタイムが必要です。インストールする前に確認してください。現在、setup.exeがアドインをインストールし、Excelの最初の起動時にクラッシュするためです。
詳細情報:
- クリックワンスデプロイメントを使用します
- C#VSTOアドイン
- Excel2010をターゲットにする
編集
私はこれに対する解決策を見つけたと思います:
- '' C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v7.0A \ Bootstrapper \ Packages''にあるオフィスPCからVSTOR4ディレクトリをコピーし、同じ場所にある開発者ノートブックに配置しました。結果:見つかりません
- '' C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.0A \ Bootstrapper\Packages''にコピーしました
- project.csprojを編集して、次の設定を含めました。
<BootstrapperPackage Include="Microsoft.VSTORuntime.4.0"> <Visible>False</Visible> <ProductName>Microsoft Visual Studio 2010 Tools for Office Runtime %28x86 and x64%29</ProductName> <Install>true</Install> </BootstrapperPackage>
問題は、これは本当に正しい方法ですか?今は考えもしなかった問題はありますか?追加のブートストラッパーをダウンロードするオプションがないのはなぜですか(ただし、.NET 2.0および一部のMDACコンポーネントでは使用していません)。
VSTOの展開は、単純な「MSIインストーラー、完了」の手順と比較すると、そのままでは苦痛であり、簡単ではありません。この種の問題に対処しなければならないことは、アドインアーキテクチャ全体について私を少し不快にさせますが、それは別の日の別の話です。