Почему мое приложение VB6 явно проигнорированный на машинах на 64 бита?

У меня есть следующая декларация, встроенная в приложение 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>  

На Сервере на 32 бита 2 008 машин файл правильно появляется с наложением значка "Admin Shield" и может только быть выполнен как администратор. На Сервере на 64 бита 2008 тот же файл не имеет наложения значка и может обычно выполняться.

Я попытался изменить processorArchitecture = "X86" и к "*" и к "ia64" и также удалить декларацию из скомпилированного приложения и иметь его как внешнюю декларацию, все напрасно.

Любые мысли с благодарностью получены.

5
задан Matt 5 January 2010 в 15:24
поделиться

2 ответа

Пытались ли вы вставить свой манифест так, как предполагает это сообщение?

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

Ответ находится внизу сообщения со ссылкой на:

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

3
ответ дан 15 December 2019 в 01:03
поделиться

Потому что ваш атрибут processorArchitecture указывает, что это 32-битная машина.

1
ответ дан 15 December 2019 в 01:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: