我看过了如何使用这个参考链接 How can I embed an application manifest into an application using VS2008? 将清单添加到应用程序(控制台应用程序或 Windows 窗体应用程序)中。
在 这里 和 这里 中有将应用程序的清单文件嵌入 PE 内的方法。
您可以按照以下步骤为 C# 应用程序添加清单:
- 在“解决方案资源管理器”中右键单击您的项目
- 从上下文菜单中选择“添加新项”。
- 在出现的对话框中的选项列表中选择“应用程序清单文件”。
现在,
我想要以编程方式获取应用程序是否具有应用程序清单,例如从 requestedExecutionLevel 节点获取级别和 uiAccess 值。
<security>
<applicationRequestMinimum>
<PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true" ID="Custom" SameSite="site" />
<defaultAssemblyRequest permissionSetReference="Custom" />
</applicationRequestMinimum>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
</requestedPrivileges>
</security>
以下是两种解决方案的替代方式:
1)将代码添加到应用程序的源代码中。
2)将代码添加到使用某些应用程序的公共库中。
是否有带有完整源代码示例应用程序的最终解决方案?
在我看来,为了最小化学习曲线,更好的示例是具有完整源代码和良好模式的实际应用程序。