質問

C# プロジェクトをコンパイルしようとすると、次のエラーが発生します。

'C:\Documents and Settings\Dan\Desktop\Rowdy Pixel\Apps\CleanerMenu\CleanerMenu\obj\Debug\CSC97.tmp' is not a valid Win32 resource file.

Google で何度も検索した結果、この問題は通常、プロジェクトで使用されているアイコン内の 256x256 画像が原因であることがわかりました。すべてのアイコンを調べて 256x256 バージョンを削除しましたが、エラーは解決しません。これを取り除く方法について何かアイデアはありますか?


@マイク:それはある夜、謎の存在として現れた。csproj ファイルを検索しましたが、CSC97.tmp については言及されていません (ソリューション ファイルも確認しましたが、ここでも運がありませんでした)。役立つ場合に備えて、投稿しました ペーストビン上の csproj ファイルの内容.

@デレク:問題ない。これがコンパイラの出力です。

------ Build started: Project: Infralution.Licensing, Configuration: Debug Any CPU ------
Infralution.Licensing -> C:\Documents and Settings\Dan\Desktop\Rowdy Pixel\Apps\CleanerMenu\Infralution.Licensing\bin\Debug\Infralution.Licensing.dll
------ Build started: Project: CleanerMenu, Configuration: Debug Any CPU ------
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Csc.exe /noconfig /nowarn:1701,1702 /errorreport:prompt /warn:4 /define:DEBUG;TRACE /main:CleanerMenu.Program /reference:"C:\Documents and Settings\Dan\Desktop\Rowdy Pixel\Apps\CleanerMenu\Infralution.Licensing\bin\Debug\Infralution.Licensing.dll" /reference:..\NotificationBar.dll /reference:..\PSTaskDialog.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Windows.Forms.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll /reference:obj\Debug\Interop.IWshRuntimeLibrary.dll /debug+ /debug:full /optimize- /out:obj\Debug\CleanerMenu.exe /resource:obj\Debug\CleanerMenu.Form1.resources /resource:obj\Debug\CleanerMenu.frmAbout.resources /resource:obj\Debug\CleanerMenu.ModalProgressWindow.resources /resource:obj\Debug\CleanerMenu.Properties.Resources.resources /resource:obj\Debug\CleanerMenu.ShortcutPropertiesViewer.resources /resource:obj\Debug\CleanerMenu.LocalizedStrings.resources /resource:obj\Debug\CleanerMenu.UpdatedLicenseForm.resources /target:winexe /win32icon:CleanerMenu.ico ErrorHandler.cs Form1.cs Form1.Designer.cs frmAbout.cs frmAbout.Designer.cs Licensing.cs ModalProgressWindow.cs ModalProgressWindow.Designer.cs Program.cs Properties\AssemblyInfo.cs Properties\Resources.Designer.cs Properties\Settings.Designer.cs Scanner.cs ShortcutPropertiesViewer.cs ShortcutPropertiesViewer.Designer.cs LocalizedStrings.Designer.cs UpdatedLicenseForm.cs UpdatedLicenseForm.Designer.cs
error CS1583: 'C:\Documents and Settings\Dan\Desktop\Rowdy Pixel\Apps\CleanerMenu\CleanerMenu\obj\Debug\CSC97.tmp' is not a valid Win32 resource file

Compile complete -- 1 errors, 0 warnings
------ Skipped Build: Project: CleanerMenu Installer, Configuration: Debug ------
Project not selected to build for this solution configuration 
========== Build: 1 succeeded or up-to-date, 1 failed, 1 skipped ==========

私が使用しているアイコンもアップロードしました。あなたはできる ここでご覧ください。


@マイク:ありがとう!32x32 の画像以外をすべて削除すると、すべてがうまくいきました。ここで、戻って他のサイズを 1 つずつ追加して、どのサイズが問題を引き起こしているかを確認できます。:)

@デレク:最初にエラーが発生して以来、Windows (およびそれに伴って SDK) を完全に再インストールしました。それが再インストールの主な理由ではありませんでしたが、問題が解決するだろうという淡い期待がありました。

これで、以前は他のすべてのサイズで動作していた理由が理解できればいいのですが...

役に立ちましたか?

解決

参考になるか分かりませんが、こちらから このフォーラム:

プロパティ ページのアプリケーション セクションに .ico ファイルを追加し、説明されているエラーを受け取りました。アイコン エディターでアイコン ファイルをチェックすると、ファイルには複数のバージョンのイメージ (16 バージョン) が含まれていることがわかりました。 x 16、24 x 24、32 x 32、48 x 48 vista 圧縮)、ファイルを再保存したくない他の形式を削除したところ (32x 32 のみ)、アプリケーションはエラーなしでコンパイルされるようになりました。

アイコン エディターでアイコンを開いて、説明されているような他の形式が表示されるかどうかを確認してください (また、アイコンが問題の原因であることを確認するために、アイコンを削除してプロジェクトが再度ビルドされるかどうかも確認してください)。

他のヒント

「obj/debug/」でも同様の問題がありました。*.tmp" ファイルがビルド ログにエラーとして表示されます。C:\ ドライブのスペースが不足していることがわかりました。いくつかのスペースを空けた後、ビルドが機能し始めました。

これはあなたが作成してプロジェクトに追加したファイルですか、それとも不思議なことに表示されたものですか?

.csproj ファイルをチェックして、それがどのように参照されているかを確認してください (これは単純な XML ファイルである必要があり、CSC97.tmp を検索できます)。

問題の解決に役立つ詳細を確認できるよう、見つけた情報を投稿してください。

周りを見回すと、.NET SDK を修復または再インストールすることでこの問題を解決した人もいるようです。試してみるといいかもしれません。

追伸なぜコンパイラ出力をさらに含めなかったのかがわかりました。実際に見るものはあまりありません。:)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top