2010-05-17 2 views
2

У меня есть старое приложение VB6, которое должно работать в Windows 7 (с установленным уровнем UAV на уровне по умолчанию, 3 из 4 IMHO). Он имеет возможность обновлять себя, и Windows 7 теперь жалуется, что он изменит компьютер (по крайней мере, окна 7 здесь).Файл манифеста UAC 7 для некоторого приложения VB6

Я смог запустить его в Vista с каким-то файлом манифеста, но это, похоже, больше не работает (это предполагаемое поведение, если я думаю об этом).

Файл манифеста это:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
    <assemblyIdentity version="1.1.0.24" processorArchitecture="X86" name="IKOfficeAppStarter" type="win32"/> 
    <description>IKOffice Starter</description> 
    <dependency> 
     <dependentAssembly> 
      <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" 
      version="6.0.0.0" processorArchitecture="X86" 
      publicKeyToken="6595b64144ccf1df" language="*"/> 
     </dependentAssembly> 
    </dependency> 
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> 
     <security> 
      <requestedPrivileges> 
       <requestedExecutionLevel level="asInvoker" uiAccess="true"/> 
      </requestedPrivileges> 
     </security> 
    </trustInfo> 
</assembly> 

манифеста можно найти рядом с ехе «IKOffice Starter.exe» и называется «IKOffice Starter.exe.manifest», которое должно быть окей.

В настоящее время значок Shield Icon удален из моего .exe, но когда вы пытаетесь запустить программное обеспечение, я получаю сообщение «Der angeforderte Vorgang erfordert höhere Rechte» или переведен на английский язык «для требуемой операции требуется высота».

Что я могу сделать, чтобы остановить окна, чтобы больше меня заглушить, поэтому я могу установить это приложение на компьютеры наших клиентов. Эй, я уже сказал Windows запустить его как Invoker, так почему он все еще жалуется?

+0

Параметр asInvoker означает, что «этот процесс должен наследовать маркер безопасности процесса, который его начал». Вместо этого вы хотите requireAdministrator? – Bob77

+0

Нет, я просто хотел сделать окна, чтобы программа вышла из строя, вместо того, чтобы прослушивать меня. Ящик сообщений – Daniel

ответ

1

и Windows 7 теперь жалуется, что бы изменить компьютер

Был махт Denn Дейн Программа так Schlimmes? в Реестре, или в irgendwelche Verzeichnisse schreiben wo es nicht hindarf? behebe diesen «Fehler» indem Du das Programm umschreibst.

+0

+1 Пробник ich morgen mal ... – Daniel

+0

Вот и все! Я включил некоторые функции с функцией Declare, которые мне не нужны (они были в каком-то библиотечном модуле), и после их удаления Windows решила, что моя программа безвредна! – Daniel

+3

Можете ли вы включить перевод? Мы хотели бы держать вещи на английском языке здесь. –

1

Откуда это сообщение об ошибке? Windows или приложение VB 6? Может ли приложение VB6 сказать «эй, ты управляешь мной как invoker, но мне нужно, чтобы меня побежали»? В конце концов, VS2008 делает это. Или вы думаете, что Windows говорит это вам?

Также я сомневаюсь, что вам нужно uiAccess = true, и поскольку манифесты, как правило, копируются из проекта в проект, делают его ложным.

+1

+1 для uiAccess = false – Daniel

Смежные вопросы