如何为 C++ 项目生成 VS 2017 的清单文件并确保其正常工作?

2024-02-28

我一直在寻找如何为 VS2017 的 C++ 应用程序生成清单文件。我见过一些东西VS2010 https://www.codeproject.com/Questions/629067/How-to-add-a-manifest-file-in-my-project,而我在 VS2017 中唯一看到的是这一页 https://learn.microsoft.com/en-us/cpp/build/manifest-generation-in-visual-studio?view=vs-2017在 MS 网站上。然而,实际生成该文件并不清楚。所以我所做的是:

  1. 转到项目属性
  2. Go to Configuration Properties > Manifest Tool > Embed Manifest和 将其设置为No.
  3. 应用并构建。

我现在有一个名为filename.exe.manifest在我的旁边filename.exe。然后,我将以下粗体和斜体信息添加到我从中获得的清单中禁用窗口过滤 https://learn.microsoft.com/en-us/windows/desktop/sbscs/application-manifests在 MS 网站上(不幸的是,不是直接链接,因为页面上没有锚点):



<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"

  xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">

  <asmv3:application>
    <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2011/WindowsSettings">
      <disableWindowFiltering>true</disableWindowFiltering>
    </asmv3:windowsSettings>
  </asmv3:application>

  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel>
      </requestedPrivileges>
    </security>
  </trustInfo>
</assembly>
  

完成后,我执行了该应用程序。这似乎并没有改变结果。我仍然无法使用以下命令枚举所有窗口EnumWindows() and EnumChildWindows()。该进程也在管理员权限下运行。

我做错什么了吗?


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何为 C++ 项目生成 VS 2017 的清单文件并确保其正常工作? 的相关文章

随机推荐