为什么我的VB6应用程序清单在64位机器上被忽略了?

Mat*_*att 5 vb6 64-bit manifest windows-server-2008

我在VB6应用程序中嵌入了以下清单.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
    <assemblyIdentity version="1.0.0.0"
processorArchitecture="X86"
name="ExeName"
type="win32"/> 
<description>elevate execution level</description> 
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
  <security>
     <requestedPrivileges>
        <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
     </requestedPrivileges>
  </security>
 </trustInfo>
</assembly>  
Run Code Online (Sandbox Code Playgroud)

在32位Server 2008计算机上,文件正确显示,并显示"Admin Shield"图标覆盖,并且只能以管理员身份运行.在64位Server 2008上,同一文件没有图标覆盖,可以正常运行.

我已经尝试将processorArchitecture ="X86"更改为"*"和"ia64",并且还从已编译的应用程序中删除清单并将其作为外部清单,但都无济于事.

任何想法都感激地收到了.

Jef*_*eff 3

您是否尝试过按照这篇文章的建议嵌入您的清单?

http://www.xtremevbtalk.com/showthread.php?t=308937

答案位于帖子底部附近,其中包含以下链接:

http://blogs.msdn.com/vistacompatteam/archive/2006/11/13/manifest-and-the-fusion-cache.aspx