2016-07-09 6 views
5

Team Servicesでホストされ、ビルドサービスを使用するソリューションがあります。Visual Studio Team Services(VS Online)のビルドサービスでWiXを実行中、エラーLGHT0217、ICE01-07

解決策には、WiXツールセットを使用してMSIファイルを作成するプロジェクトも含まれています。 これはローカルでうまく動作し、私はin this guideと同じようにビルドサーバー上で有効にするために、ツールセットバイナリをリポジトリに統合しました。

しかし、ビルドプロセスを構築するために失敗するプロジェクトを報告します。

light.exe(0、0)の実行エラーICEアクション 'ICE01'。この種のICEエラーの原因の最も一般的な は、間違って登録された スクリプトエンジンです。詳細およびこの問題の解決方法については、http://wixtoolset.org/documentation/error217/ を参照してください。 Windowsの インストーラサービスにアクセスできませんでしたWindowsの インストーラが正しくインストールされていない場合に発生する可能性があります。サポート担当者 にお問い合わせください。 "

これはICE07にICE01から繰り返し、続いて

light.exe(0、0)エラーコード0x643 で予期しないWin32の例外が発生しました:アクション - 'ICE09' 致命的なエラーを中にインストール

私もsupress the validations as mentioned in this SO questionに試みました。これは、WiXのプロジェクトファイルに以下を追加する方法について、基本的である:

<PropertyGroup> 
    <SuppressValidation>true</SuppressValidation> 
</PropertyGroup> 

これは動作します - しかし、これは、それは全く正しい感じていないように最善の方法である場合、私はcouriousです。 Visual Studio Team ServicesでWiXを実行する正しい方法は何ですか?

答えて

6

ホストされているビルドエージェントが管理者権限を提供していないため、VSTSホステッドビルドエージェントを使用してWiXプロジェクトをビルドする場合、ICE検証を回避することができます。

あなたが検証を抑制して不快な場合は、その検証がデスクトップビルドで通常通りに行われているので、あなたは常に、ビルドエージェント上にあるビルドのPropertyGroupを条件付きにすることができます:

<PropertyGroup Condition=" '$(BuildingInsideVisualStudio)' != 'true' "> 
    <SuppressValidation>true</SuppressValidation> 
</PropertyGroup> 

別の代替方法deploying your own build agentであり、管理者権限でビルドエージェントを実行します。

ちなみに、WiXツールセットはVSTS Hosted Build Agentにインストールされているため、このガイドに従ってWiXツールセットをもうチェックインする必要はありません。インストールされているソフトウェアについては、this listを参照してください。

+1

リストのバージョンは正確ですか? WiX v3.7は3.5歳ですが、DLLハイジャックの軽減策はありません:http://www.joyofsetup.com/2016/07/04/wix-v3-10-3-released/ WiXの安全なバージョンを使用したい人は、そのツールをチェックすることで最新の状態に保つことができます。 –

+0

@BobArnsonはい、それはv3.7がインストールされています。ツールセットバージョンの更新をリクエストするために、ここにユーザーボイスが既にありました:https://visualstudio.uservoice.com/forums/330519-team-services/suggestions/6875158-update-the-hosted-build-controller-to-wix -toolset –

+0

OBTW、私はそのWixV3を参照してください。10は、2011年1月16日の時点で、ホストされているビルドサーバーにインストールされます。 –

関連する問題