C# 试图编译RC文件时“未找到文件”(可能是愚蠢的错误)

C# 试图编译RC文件时“未找到文件”(可能是愚蠢的错误),c#,.net,resources,embedded-resource,rc,C#,.net,Resources,Embedded Resource,Rc,下面是将UAC清单添加到作为资源嵌入的C项目中的步骤 第1步很好,我在项目中创建了一个简单的文本文件,如前所述 #include <winuser.h> #define IDR_MANIFEST 1 // 2 for a DLL IDR_MANIFEST RT_MANIFEST MOVEABLE PURE { "<assembly xmlns=""urn:schemas-microsoft-com:asm.v1"" manifestVersion=""1.0"">

下面是将UAC清单添加到作为资源嵌入的C项目中的步骤

第1步很好,我在项目中创建了一个简单的文本文件,如前所述

#include <winuser.h>
#define IDR_MANIFEST 1 // 2 for a DLL

IDR_MANIFEST RT_MANIFEST MOVEABLE PURE
{
 "<assembly xmlns=""urn:schemas-microsoft-com:asm.v1"" manifestVersion=""1.0"">
   <asmv3:trustInfo xmlns:asmv3=""urn:schemas-microsoft-com:asm.v3"">
     <asmv3:security>
       <asmv3:requestedPrivileges>
         <asmv3:requestedExecutionLevel
           level=""asInvoker""
           uiAccess=""false"" />
       </asmv3:requestedPrivileges>
     </asmv3:security>
   </asmv3:trustInfo>
  </assembly>"
}

我想这是件很愚蠢的事情,对吧?

不需要再重复,我看不出有什么不对。自VS2008(可能是VS2005 SP1 for Vista)以来,C编译器已经将UAC清单嵌入到程序集中。如果要修改它,请使用Project+添加新项并选择应用程序清单文件项模板。

无需复制,我看不出任何错误。自VS2008(可能是VS2005 SP1 for Vista)以来,C编译器已经将UAC清单嵌入到程序集中。如果要修改它,请使用Project+添加新项并选择应用程序清单文件项模板。

正如Hans Passant所说,从VS 2008开始,您可以直接将清单文件添加到项目中。然后在项目属性下,选择应用程序选项卡并从组合框manifest中选择manifest文件:。

正如Hans Passant所说,从VS 2008开始,您可以直接将manifest文件添加到项目中。然后在项目属性下,选择“应用程序”选项卡并从组合框清单中选择清单文件:。

我在后期生成步骤中使用mt.exe将清单嵌入到.exe文件中。但汉斯的回答非常接近。因此,我想找不到的文件的秘密将仍然没有解决…

我最终使用mt.exe在后期构建步骤中将清单嵌入到.exe文件中。但汉斯的回答非常接近。因此,我想找不到的文件的秘密将仍然无法解决…

尝试使用

包括winuser.h 而不是

包括 i、 e.替换为双qoutes。

尝试使用

包括winuser.h 而不是

包括
i、 e.替换为双qoutes。

确保rc文件是UTF-8编码的。我试图编译ANSI或UTF-8 BOM编码文件,但收到此错误消息。

确保rc文件是UTF-8编码的。我试图编译ANSI或UTF-8 BOM编码文件,但收到此错误消息。

问题是,我有一个外部生成作业,先生成dll依赖项,然后生成exe文件,所以我想嵌入清单。但这个答案最接近我需要的,所以我会接受它。谢谢问题是,我有一个外部构建作业,首先构建dll依赖项,然后构建exe文件,所以我想嵌入清单。但这个答案最接近我需要的,所以我会接受它。谢谢
  c:\myproject>rc MyResourceFile.rc
  Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
  Copyright (C) Microsoft Corporation.  All rights reserved.


  ConfigurationManager.rc(4) : error RC2135 : file not found: 1