是什么导致* SOME *桌面上的桌面屏蔽图标覆盖 [英] What is causing desktop shield icon overlay on *SOME* desktops

查看:84
本文介绍了是什么导致* SOME *桌面上的桌面屏蔽图标覆盖的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个C ++ Builder/Delphi应用程序.它具有作为资源嵌入的以下清单:

I have a C++ Builder/Delphi application. It has the following manifest embedded as a resource:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <assemblyIdentity type="win32"
                    processorArchitecture="*"
                    version="1.0.0.0"
                    name="Manufacturer.Division.MyName" />
  <description>MyName</description>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32"
                        name="Microsoft.Windows.Common-Controls"
                        version="6.0.0.0"
                        processorArchitecture="*"
                        publicKeyToken="6595b64144ccf1df"
                        language="*" />
    </dependentAssembly>
  </dependency>
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="asInvoker" uiAccess="false" />
      </requestedPrivileges>
    </security>
  </trustInfo>
  <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
    <application>
      <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}" /> <!-- Win Vista and Win Serv 2008    -->
      <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}" /> <!-- Win 7     and Win Serv 2008 R2 -->
      <supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}" /> <!-- Win 8     and Win Serv 2012    -->
      <supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}" /> <!-- Win 8.1   and Win Serv 2012 R2 -->
    </application>
  </compatibility>
  <application xmlns="urn:schemas-microsoft-com:asm.v3">
    <windowsSettings>
      <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">True/PM</dpiAware>
    </windowsSettings>
  </application>
</assembly>

该软件不使用注册表HKLM-仅使用HKCU,它读取/写入%LocalAppData%.它不需要管理特权.

The software does not utilize registry HKLM - only HKCU, and it reads/writes to %LocalAppData%. It does not require administrative privileges.

从XML清单上方看, requestedExecutionLevel 设置为 asInvoker ,因此它不应显示盾牌图标.

The requestedExecutionLevel is set to asInvoker as seen from above XML manifest so it should not show shield icon.

在某些桌面上,盾牌图标不会出现,而在某些桌面上,盾牌图标会出现-其他程序在同一桌面上不会显示盾牌图标.是什么导致我的应用程序出现盾牌图标(和烦人的UAC提示)?

On some desktops the shield icon does not appear and on some it does - other programs do not show shield icon on the same desktop. What is possibly causing shield icon (and the annoying UAC prompt) for my application?

在所有系统上-用户类型为Administrator且UAC设置为默认级别(在Windows 7和8上)-因此,我真的看不到仅在某些台式机而不是在所有台式机上都显示屏蔽的原因.

On all systems - the user type is Administrator and UAC is set to default level (on Windows 7 and 8) - so I really see no cause of shield to be shown only on some and not on all desktops.

与未显示盾牌图标的系统相比,在这些带有盾牌图标的系统上有什么区别?

What is different on these systems where the shield icon appears compared to the ones where shield icon is not present?

推荐答案

可执行文件的兼容性选项设置为强制应用程序以管理员身份执行.

The executable file has compatibility options set to force the application to execute as administrator.

这篇关于是什么导致* SOME *桌面上的桌面屏蔽图标覆盖的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆