WiX インストーラー用のいくつかのカスタム アクションを実装する単純な C++ DLL があります。
通常、カスタム アクションのデバッグは簡単です。アクションの開始時に一時的なダイアログ ボックスを配置し、ダイアログ ボックスが表示されたときにプロセスにアタッチします。
しかし、今日、プロセスに接続するたびに、画面の下部に「Microsoft Visual Studio is Busy」というバブルが表示されます。これがどこから来ているのかわかりません。何か案は?
WiX インストーラー用のいくつかのカスタム アクションを実装する単純な C++ DLL があります。
通常、カスタム アクションのデバッグは簡単です。アクションの開始時に一時的なダイアログ ボックスを配置し、ダイアログ ボックスが表示されたときにプロセスにアタッチします。
しかし、今日、プロセスに接続するたびに、画面の下部に「Microsoft Visual Studio is Busy」というバブルが表示されます。これがどこから来ているのかわかりません。何か案は?
これを理解しようと何時間も試みた後、問題は [ツール] -> [オプション] -> [デバッグ] -> [シンボル] でデバッグ シンボルを有効にしていたことにあることに気付きました。シンボルを検索する際の待ち時間が原因で、見かけ上のロックアップが発生していました。
「シンボルが手動で読み込まれた場合にのみ、上記の場所を検索する」をクリアすると、問題が軽減されたようです。
利用できないネットワークの場所からデバッグ シンボルを参照していますか (たとえば、ClearCase 動的ビューなど)。これにより、プロセスにアタッチすると Visual Studio がハングする可能性があります。
[ツール] -> [オプション] -> [デバッグ] -> [シンボル] を確認し、シンボル ファイル (.pdb) の場所を一時的に無効にしてみてください。どちらが速度を低下させているか (またはハングさせているか) を突き止めてください。消去することで、これを理解できるはずです。