我有一些我没有代码的EXE。我还可以添加清单文件吗?
另外,根据我对该主题的理解,对于符合Vista标准的程序,它不应该写入任何安全的位置,如HKLM,Program Files等。
对于注册表,我们可以使用HKCU,但是关于在Program Files中创建的文件?它们是否应该在执行EXE期间在不安全的位置创建?
由于
答案 0 :(得分:5)
您可以使用外部文件添加清单。只需将清单放在带有exe的文件夹中,并将其命名为“file.exe.manifset”,其中file.exe是可执行文件名。但是在Server 2003,Vista及更高版本上,如果程序具有嵌入式清单,则默认情况下将忽略外部清单。有一个注册表项将覆盖此行为,或者您可以使用Windows SDK工具中的mt.exe替换exe中的清单。有关详细信息,请参阅this link。
对于尝试写入Program Files或HKLM的现有应用程序,它们应该在Vista上运行,因为Vista将写入重定向到另一个位置,并使应用程序看起来写入成功。
答案 1 :(得分:0)
您应该能够创建没有源代码的清单文件。
可以要求安装或更新的管理权限,因此您可以将EXE和DLL(以及支持文件)放在Program Files中。
要求常规使用的管理权限是不行的,因此您应该将数据文件和设置放在HKCU或用户的Application Data文件夹中的注册表中。