1

これはかなり基本的なことだと思います。今日、ATL に静的にリンクする動的リンク プロジェクトを構築していました。ビルド中に「登録実行中」の段階でハングアップし、先に進みませんでした。タスク マネージャーに regsvr32.exe があることがわかります。このプロセスは登録作業を行っていると思います。しかし、それは決して終わりません。

そのため、ビルドをキャンセルして再試行すると、未解決の外部シンボルの問題が発生します。なぜこれが起こっているのか、誰かが私に説明できますか? 事前にどうもありがとうございました!プラットフォーム (Windows 7 64、VS 2008)

よろしくお願いします、

4

2 に答える 2

0

regsvr32.exeDLL をロードし、そのDllRegisterServerエクスポートされた関数を呼び出しています。フリーズすると思われますが、タスク マネージャー、プロセス エクスプローラー、またはデバッガーで確認できます - フリーズしたプロセスにアタッチします。したがって、原因が DLL 内にある可能性が非常に高く、それを解決するか、デバッガーでアタッチするか、または でデバッグ セッションを開始する必要がありますC:\Windows\syswow64\regsvr32.exe <full path to your DLL>

DLL が 32 ビットの場合、 , は必要syswow64\regsvr32.exeありませんsystem32\regsvr32.exe(そうしないと、デバッグ対象がデバッグされずにフリーズする子プロセスを開始するだけです)。

于 2012-08-13T12:33:44.343 に答える
0

taskmanager を確認し、regsvr32.exe に渡されたパラメータを確認し、通常はそのような dll を登録し、ブロックされたものを取得し、可能であれば dllmain にデバッグします。

于 2012-08-13T12:34:42.973 に答える