为了实现在windows的UAC控制下以管理员方式运行,通常有两种方式:
- 注册表添加信息。这种方式通常是通过安装程序添加注册表信息。
- exe文件中附加manifest文件。这种方式使得程序可以以免安装的方式运行。
由于electron通常开发的程序我们通常喜欢用免安装方式运行,下面就说说怎么修改electron中的manifest。
通过win sdk中的mt.exe工具可方便的对exe文件中附加的manifest进行导出和导入。由于electron中本身就已经附加了manifest文件,所以我们不能简单粗暴的创建一个manifest文件附加进去,需要先导出原来的manifest,修改后再导入。
导出manifest
mt.exe -inputresource:electron.exe;#1 -out:manifest.xml
修改manifest
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<dependency>
<dependentAssembly>
<assemblyIdentity type="Win32" name="Microsoft.Windows.Common-Controls" vers