«Файл не найден» при попытке скомпилировать RC-файл (возможно, глупая ошибка) - PullRequest
1 голос
/ 14 декабря 2010

После этих шагов для добавления манифеста UAC в мой проект C #, встроенный в качестве ресурса.

Шаг 1 работает нормально, я создаю RC-файл в своем проекте в виде простого текстового файла, как описано.

#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>"
}

Затем, используя командную строку Visual Studio, я получаю следующий вывод на шаге 2:

  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

Полагаю, это что-то довольно глупое, верно?

Ответы [ 5 ]

1 голос
/ 14 декабря 2010

Нет репро, я не вижу ничего плохого. Компилятор C # уже внедряет манифест UAC в сборку начиная с VS2008 (возможно, VS2005 SP1 для Vista). Если вы хотите изменить его, используйте Project + Add New Item и выберите шаблон элемента «Файл манифеста приложения».

0 голосов
/ 10 января 2017

Убедитесь, что файл rc имеет кодировку UTF-8.Я попытался скомпилировать файл в кодировке BOM ANSI или UTF-8 и получил это сообщение об ошибке.

0 голосов
/ 17 мая 2013

Попробуйте использовать

включает "winuser.h"

вместо

include

т.е.. замените '<>' двойными кавычками.

0 голосов
/ 14 декабря 2010

В итоге я использовал mt.exe для встраивания манифеста в файл .exe на этапе после сборки. Но ответ Ганса был достаточно близок. Так что я думаю, что тайна "Файл не найден" останется неразгаданной ...

0 голосов
/ 14 декабря 2010

Как сказал Ханс Пассант, начиная с VS 2008, вы можете просто напрямую добавить файл манифеста в проект.Затем в свойствах проекта выберите вкладку «приложение» и выберите файл манифеста из списка «Манифест:».

...