問題タブ [heat]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
381 参照

wix - typelibs を使用した Wix 3.0 の Heat による「悪い画像」

(Wix 3.0.4805.0 以降) を使用しheatて、Visual Studio によって生成された typelib から Wix ドキュメントを生成すると、エラーが発生します。次のようなウィンドウが表示されます。

「heat.exe - 悪いイメージ」

アプリケーションまたは DLL c:\path\to\file.tlb は有効な Windows イメージではありません。これをインストール ディスクと照らし合わせて確認してください。

しかし、「OK」を押した後、続行し、正常に生成されます

Wixバグボードのこのバグ レポートには、私のリリースより前のリリースで修正されたと書かれているようですが、修正されていないようです。彼らは、エラーが発生するのは、最初にそれを DLL としてロードしようとする (失敗する) ためだと言いますが、その後、正しいことを続けます。

これは、Windows XP SP3 で発生しています。

これに対する回避策を知っている人はいますか?

0 投票する
1 に答える
1051 参照

visual-c++ - WIXヒートユーティリティはVisualC++プロジェクトで機能しますか?

Wixを使い始めたばかりで、熱を使用してVisualC++プロジェクトから出力を抽出してWixファイルをソースにしたいと考えています。これは私のC#プロジェクトではうまく機能しているようですが、C ++プロジェクトでheatを実行すると、エラーが発生します。

これはうまくいくはずですか、それとも私は何か間違ったことをしていますか?ありがとう

0 投票する
2 に答える
4667 参照

wix - heat.exeを使用してバルクファイルを新しいWiXプロジェクトに追加する:HEAT5150

これが繰り返しの質問である場合は、既存の解決策を教えてください。一致するクエリが見つかりませんでした。

現在、InstallShieldを使用しています。407ファイルのプロジェクトをWiX3インストールパッケージに変換しようとしています。heat.exeを使用して自動化の一部を実行しようとしましたが、ほとんどすべてのファイルに対して次の警告が表示されます。

c:> heat dir "c:\ projectDir \ projectA" -gg -ke -template:Product -out "c:\ install \ projectA \ heatOutput"

heat.exe:警告HEAT5150:SelfReg DLLであると予想されたファイルからデータを収集できませんでした:c:\ projectDir \ projectA\plugin1.dll。このファイルがSelfRegをサポートしていない場合は、この警告を無視できます。それ以外の場合、このエラーの詳細は障害の診断に役立つ場合があります。ファイルを読み込めません:c:\ projectDir \ projectA \ plugin1.dll、エラー:126。

Q:この警告がすべてのファイルについて報告されるのは正常ですか?

現在の「多くのファイルを含む最初のWiXインストールプロジェクトを作成/変換する方法」チュートリアルがある場合は、それを教えてください。重要な要件は「多くのファイルを使用する」ことです。

PS。WiXはインクリメンタルインストールプロジェクトの作成用に設計されていることは知っていますが、既存のインストールプロジェクトを自動変換する方法があるかどうかを知っておくと便利です。

0 投票する
2 に答える
6233 参照

wix - Wix-キャンドルで熱の出力を使用するときにプロジェクト参照を処理する方法は?

Web .csprojで熱を使用してから、出力でキャンドルを使用しようとしています。これまでのところ、私は次のことを行いました。

その後:

ただし、後者の場合、次のようになります。

私は何が間違っているのですか?

また、Visual Studio Wixプロジェクトで熱の出力を使用する方法はありますか?

0 投票する
1 に答える
3211 参照

wix - 別のフラグメントに WiX ファイルのショートカットを追加する

次のようなフラグメントを生成するために heat.exe を使用しています。

これらのフラグメントは、自動生成された wxs ファイルに保存されます。

次に、それらを次のように機能 (メインの WiX ファイル) に追加します。

これはうまくいきます。

ただし、Bar.exe へのショートカットをスタート メニューに追加したいと考えています。理想的には、自動生成された wxs ファイルに Bar.exe コンポーネントがまだ存在する状態で、メインの wix ファイルでこれを実行したいと考えています。自動生成されたコードを変更せずに、この問題にどのように対処すればよいでしょうか?

0 投票する
7 に答える
2565 参照

msbuild - WiX 3.5.1811.0 で HEAT5301 エラーを修正する方法

WiX 3.0 で問題なくビルドできた私のプロジェクトは、現在では失敗します。

heat.exe: エラー HEAT5301: 無効なプロジェクト出力グループ: Binaries3bSources3bSatellites%3bDocuments。

この ProjectOutputGroup を wix.targets ファイルで見つけましたが、次のようになります。

最初の 2 つの値については破棄されているように見えます%が、最後の値についてはまだ存在しています。

0 投票する
2 に答える
4178 参照

c# - Wix を使用して COM 相互運用用にマークされた .Net アセンブリを登録する

[ComVisible] であるいくつかの型を含むバニラ .net クラス ライブラリがあり、アセンブリ自体は "Register for COM Interop" とマークされています。.net アセンブリをターゲット マシンの INSTALLATIONDIR にコピーするだけでなく、一部のレガシー VB6 アプリケーションが使用できるようにオブジェクトを登録する作業を行う必要があるアプリ用の WIX インストーラーを構築しようとしています。 .net アセンブリの。

メインのwixファイルにcomponentGroupRefを介して含めたフラグメントを収集するために、heat.exe(より正確にはheatファイルタスク)を使用しています。私の質問は、heat.exe が収集しているファイルは、クラス ライブラリまたは dll 自体によって出力された .tlb ファイルである必要がありますか? .tlb で heat.exe を使用すると、フラグメント内のレジストリ要素を取得できませんが、dll を使用します。dll を使用する必要がある場合、.tlb はこのプロセスでどのような役割を果たしますか?

msbuildで以下のヒートタスクを使用しています

0 投票する
3 に答える
10816 参照

visual-studio - ファイルが熱で収集されないようにするにはどうすればよいですか (WiX 3.5)?

heat.exe を使用して、多数のファイルを含むフォルダーを収集したいと考えています。しかし、すべてのファイルを収集する代わりに、「*.txt」などの特定のファイル拡張子を除外したいと考えています。これどうやってするの?

0 投票する
1 に答える
1087 参照

visual-studio-2010 - プロジェクトの自動ハーベスト時のキーパスの設定

私は WiX のプロジェクト参照機能を使用して、Heat を使用してプロジェクトを自動的に収集しています。WiX インストーラーはローカルと TFS2010 ビルド サーバーの両方でビルドされているため、これは特に便利です。ビルド サーバーでビルドすると、出力が別の場所にリダイレクトされます。つまり、プロジェクトを自動的に収集しないと、最近コンパイルされたアイテムの正しい場所を参照しようとすると、非常に面倒です。

サービスをインストールして開始するための次の WiX「コード」があります。

これまでのところ、問題はありません...インストーラーがWindowsサービスをインストールして開始しようとすると、「サービス 'MyServiceName'(MyServiceName) を開始できませんでした。システムサービスを開始するのに十分な権限があることを確認してください」という問題が発生します。「無視」ボタンを選択すると、インストールは「正常に」完了しますが、マシンにインストールされているサービスを確認すると、新しいサービスがリストされていません。

オンラインで調査したところ、サービスとして実行する必要がある実行可能ファイルに KeyPath を設定する必要があるため、サービスが実際に正しくインストールされていないことが問題であると考えていますが、Heat を使用してファイルを収集しているため、これを行う方法を見つけることができません...サービスをインストールするカスタムアクションを作成しない限り、すべてのファイルがインストールされたら実行可能ファイル名を指定できます...しかし、それはそのようには聞こえません正しい解決策になるはずです...

誰かアドバイスがありますか、または同じ問題に遭遇して解決策を思いつきましたか?

ありがとう

UPDATE 07/10/10:私の WiX スクリプトには、次のものがあります。

収集したファイルのターゲット ディレクトリは INSTALLLOCATION ディレクトリです。

Orca を使用して msi を見ると、ServiceComponent と、収集された各ファイルに対して生成されたすべてのコンポーネントが表示されます。File テーブルを見ると、このコンポーネントに関連付けられたファイルはありません (ファイルごとに生成されたコンポーネントがあるため...)。ServiceInstall テーブルを見ると、インストールしようとしているコンポーネントは ServiceComponent です。

だから私どういうわけか ServiceInstall 要素をサービスexe用に生成されたコンポーネントの中に入れて、このコンポーネントを空の「ServiceComponent」コンポーネントではなくサービスとしてインストールする必要があると思いますか? しかし、このコンポーネントはビルド時に熱によって生成されるため、それ以上の進歩を遂げることができませんでした...