资源文件无效

时间:2008-08-10 00:50:16

标签: c# visual-studio resources

尝试编译我的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(我也检查了解决方案文件,但我也没有运气)。万一有帮助,我发布了contents of the csproj file on pastebin

@Derek:没问题。这是编译器输出。

------ 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 ==========

我还上传了我正在使用的图标。你可以view it here.


@Mike:谢谢!删除除32x32图像以外的所有内容后,一切都很顺利。现在我可以回过头来逐一添加其他尺寸,看看哪一个让我感到悲伤。 :)

@Derek:自从我第一次遇到这个错误以来,我已经完成了Windows的重新安装(以及它的SDK)。这不是重新安装的主要原因,但我的希望很小它可以解决问题。

现在,如果我能弄明白为什么它以前适用于所有其他尺寸......

5 个答案:

答案 0 :(得分:7)

我的构建日志中出现了“obj / debug / * .tmp”文件错误的类似问题。结果我的C:\驱动器空间不足。清理了一些空间后,我的构建开始工作。

答案 1 :(得分:5)

我不知道这是否会有所帮助,但是来自this forum

  

将.ico文件添加到属性页面的应用程序部分,并收到已描述的错误,当我用图标编辑器检查图标文件时,结果发现该文件有多个版本的图像即(16 x 16,24 x 24,32 x 32,48 x 48 vista压缩),我删除了其他格式,我不想重新保存文件(只需32x 32),现在应用程序编译没有错误。

尝试在图标编辑器中打开图标,看看是否看到其他格式(另外,尝试删除图标,看看项目是否会重新构建,只是为了验证图标是否导致它)。

答案 2 :(得分:0)

在项目属性中,单击应用程序: 在“资源”组中,只需选择“图标”和“清单”单选按钮。 在我的项目中就是问题所在,并通过上述步骤解决了该问题。

答案 3 :(得分:0)

这是您创建并添加到项目中的文件还是神秘地显示出来的文件?

您可以查看.csproj文件并查看它是如何被引用的(它应该是一个简单的xml文件,您可以搜索CSC97.tmp)。

也许发布您找到的信息,以便我们可以提供更多详细信息来帮助您解决问题

答案 4 :(得分:0)

环顾四周,似乎有些人通过修复或重新安装.NET SDK解决了这个问题。你可能想尝试一下。

P.S。我明白为什么你现在没有包含更多的编译器输出。真的没有看到那里。 :)