2010-01-25 9 views
5

Unsere Anwendung erfordert die Installation des HASP SRM-Gerätetreibers, damit dieser installiert und ausgeführt werden kann.Wie starte ich einen anderen Prozess im XP Kompatibilitätsmodus?

Zu diesem Zeitpunkt nur ihre 5.50 Treiber arbeiten konsequent auf allen getesteten Plattformen (beide ihre 5,75 (offiziell) und 5.86 (Beta) Treiber auf etwa 1 in 3 Computer abstürzen getestet).

Daher sind ihre 5.50 Treiber gut, alles andere ist derzeit kaputt, und die 5.50 Treiber weigern sich, unter Vista und Windows 7 zu laden. Allerdings, wenn ich die EXE-Eigenschaften auf "XP Kompatibilitätsmodus" dann ihre 5.50 Treiber installiert und läuft erfolgreich.

Ich kramte in der Registry unter Windows 7, und ich habe festgestellt, dass es zumindest ein Eintrag gemacht ist, wenn ich für Kompatibilitätsmodus fragen:

HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers\ 
    full-path REG_SZ WINXPSP3 

ich in der Lage sein soll, diesen Schlüssel hinzufügen aus unser Installationsprogramm, bevor Sie versuchen, das 5.50-Treiberinstallationsprogramm zu starten.

Fragen:

  • Wo ich eine vollständigere Erörterung des Kompatibilitätsmodus finden kann?
  • Sind die Tasten/Einstellungen unter Vista vs. Windows 7 anders?
  • Sind die Tasten/Einstellungen unter 32 Bit vs. 64 Bit unterschiedlich?
  • Gibt es eine Möglichkeit, direkt danach zu fragen, wenn ich CreateProcess() aufrufen?

Antwort

3

Sie können das __COMPAT_LAYER Umgebungsvariable (By es in Ihrem Prozess einstellen, bevor Createprocess aufrufen, oder einen Block neuen Umgebung bauen für Createprocess)

+0

Das sieht vielversprechend aus. Ich gebe dir die Antwort, wenn ich diese Arbeit machen kann. ;) – Mordachai

Verwandte Themen