【发布时间】:2017-10-05 01:11:50
【问题描述】:
我正在尝试将此清单添加到我的 PyInstaller 编译的 EXE 中:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity name="TestApp" processorArchitecture="amd64" type="win32" version="1.0.0.0"/>
<dependency>
<dependentAssembly>
<assemblyIdentity language="*" name="Microsoft.Windows.Common-Controls" processorArchitecture="amd64" publicKeyToken="6595b64144ccf1df" type="win32" version="6.0.0.0"/>
</dependentAssembly>
</dependency>
<asmv3:application xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
<asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
<dpiAware>true</dpiAware>
</asmv3:windowsSettings>
</asmv3:application>
</assembly>
当我使用 PyInstaller 的 --manifest 选项时,它不会添加到 EXE 中或合并到生成的清单文件中。我什至找不到一行说它在构建过程中对清单做任何事情。然后我使用 MT.exe 嵌入清单而没有错误。此清单文件是对 PyInstaller 生成的文件的修改。我不得不删除兼容性部分,因为 MT.exe 说命名空间兼容性中没有兼容性选项......我添加了部分以声明应用程序具有 dpiAware。完成此操作后,我可以看到使用 ResourceHacker 添加的清单部分,但是当我运行该程序时,它说无法打开自我并且无法运行。当我使用 ResourceHacker 嵌入清单时,程序将加载但仍然大于打开 DPI 缩放的屏幕,就像它只是忽略了清单文件一样。我正在使用 python 3.5.1 和 kivy 1.9.1。
【问题讨论】:
标签: python manifest pyinstaller