web-dev-qa-db-ja.com

デバッグ情報ファイルGG.PDBの作成中に予期しないエラーが発生しました "-"

プロジェクトをビルドしようとすると、次のエラーが返されます。

エラー1デバッグ情報ファイル 'D:\ Documents\Lance\Documents\School\Capstone\GG\GG\obj\Debug\GG.PDB'-'' GGの作成中に予期しないエラーが発生しました

最近、突然の電源供給の問題(多分)が原因で、PCを再起動するのに不幸になりました。これは、この問題が始まる前の、プロジェクトの構築中です。

PCがオンラインに戻ったとき、突然電源が切られる前にプログラムに加えた変更が保存されていないことに気付きました。そして、それはもうビルドされません。

26
zack_falcon

要求通り、答えとしての私のコメント:


(VSの[ビルド]メニューの下にある)ソリューションをクリーニングしてみてください。

停電によってビルドが途中で中断されたため、ファイルはロックされていません-ビルドシステムはおそらく一貫していない状態です(クリーンソリューションで修正する必要があります)。

22
Cameron

これは私のために働きました:

  1. VS.NETをシャットダウンする
  2. Windowsエクスプローラーでプロジェクトを参照します。
  3. / obj /フォルダーを削除します。
  4. / binからプロジェクトの出力(.dllおよび.pdb)を削除します(この手順が必要かどうかは不明です)
  5. 害はありませんが、役立つ可能性があります。問題が発生しているソリューション内の他のプロジェクト/ binフォルダーからプロジェクト出力を削除します(私には必要ありませんでした)
  6. VS.NETを再起動します
  7. 再構築

http://weblogs.asp.net/ssmith/archive/2003/08/12/23755.aspx

39
Winter

これは私の環境でときどき発生し、問題はおそらくPDBファイルがロックされていることに関係しています(つまり、エラーメッセージの最後の部分が投稿に含まれていないと思います)。これは私のマシンでどのように見えるかです:

Unexpected error creating debug information file 'c:\dir\obj\file.PDB' -- 'c:\dir\obj\file.PDB: The process cannot access the file because it is being used by another process.'

私の場合、解決策をクリーニングしても問題は解決せず、再起動するのはやりすぎです。そのため、通常は(エラーから)pdbファイルの完全な名前をコピーし、コマンドラインでこれを実行します。

ren c:\dir\obj\file.PDB *.old
9
steinar

これは私にとってうまくいきました:Run as Administratorを使用してVisual Studioを閉じてVisual Studioを開き、問題は解決しました。

7
pooja

ファイルを再起動または削除する必要はありません。ファイルの名前を変更するだけで十分です。ファイルを削除しようとすると、エラーが発生します。名前を変更するだけでうまくいくでしょう。 :)

2
Gaurravs

VMを2人のユーザーで使用している場合は、他のユーザーがデバッグ中にすべてのプロセスをアタッチしていないことを確認してください。

1

Webアプリケーションでこの問題が発生している場合、これは DebugDiag を使用し、プロジェクトのアプリプールでリッスンするルールを作成したという異常な状況で発生する可能性があります。ルールを削除すると、この問題の再発を防ぐことができました。

これは、たとえば、IISのスタックオーバーフロー例外を診断するために これらの手順 に従った場合に発生する可能性があります。

1
Kirk Woll

(非常に)異なるターゲットに対して同じプロジェクトをコンパイルするときに、この問題に遭遇することがあります。

  • VS2008とnet35
  • VS2017とnet462
  • dotnetコア2.0

私の推測では、binおよび/またはobjディレクトリのいずれかがコンパイラによって使用されますが、出力には互換性がありません(もちろん)。 VSからクリーンなソリューションは確かに役立ちます。

多くの場合、出力に別のdll名(mylib.dll、mylib35.dllなど)を指定しますが、これらのプロジェクトで問題が発生することはありません。

0
Patrick Stalph

\ binフォルダーのすべてのファイルが実行中のプロセス、つまりIIS上のWebサイトまたはビルド後に自動的に実行されるWindowsサービスによって使用される場合があります。そのような場合、サービスをオフにするか、特定のサイトのIISアプリプールを停止することも役立つはずです(私の場合のように)

0
Marek

VSの再起動の短所:

  • クリップボードは失われます
  • やり直し/元に戻すは失われます
  • 開いているファイルは失われます
  • テンポを緩めます

解決策:アセンブリに新しい名前を付けます。短所はありません。ただし、最終的な配置の準備ができたら、アセンブリの名前を元の名前に戻す必要があります。そして、誰でも最後にそれを機能させる方法を見つけることができると思います:)

0
KMX