Anwendungskompatibilitätstechnologien - PC

Werbung
Windows XP-Anwendungskompatibilitätstechnologien
(Engl. Originaltitel: Windows XP Application Compatibility Technologies)
Von Dave Morehouse und Todd Phillips
Microsoft Corporation
Veröffentlicht: Juni 2001
Zusammenfassung
Das vorliegende Whitepaper beschreibt detailliert die Anwendungskompatibilitätstechnologien des
Betriebssystems Microsoft® Windows® XP und skizziert im Anschluss daran, wie diese verwendet und
erweitert werden können, um eine Vielzahl von Anwendungskompatibilitätsproblemen zu behandeln.
Danksagungen
Mark Carroll, Lead Program Manager, Microsoft Corporation
Bryan Chee, Product Manager, Microsoft Corporation
Mark Derbecker, Software Design Engineer, Microsoft Corporation
Ryan Marshall, Program Manager, Microsoft Corporation
Brandon McMillon, Program Manager, Microsoft Corporation
Einführung
In der Regel sind Anwendungen für ein bestimmtes Betriebssystem oder eine bestimmte Betriebssystemversion
optimiert. Anwendungskompatibilitätsprobleme können auftreten, wenn ein Benutzer versucht, ein häufig
verwendetes Programm auf einer neueren Version des Microsoft® Windows®-Betriebssystems auszuführen, für
die die Anwendung ursprünglich nicht entwickelt wurde. Dies kann z. B. dann der Fall sein, wenn ältere
Anwendungen nach Windows XP migriert werden, da Windows XP sowohl auf Windows NT® als auch auf
Windows 2000 basiert, nicht jedoch auf der eher für private Benutzer konzipierten Betriebssystemreihe
(Windows 95, Windows 98 und Windows Millennium Edition).
Da Windows NT und Windows 2000 Unternehmensbetriebssysteme sind, haben viele Anwendungsentwickler,
die speziell den Heimbenutzer berücksichtigen, ihre Programme ausschließlich auf Windows 95 und dessen
Folgeversionen ausgerichtet. Dementsprechend müssen beim Migrieren dieser Anwendungen nach Windows XP
die Unterschiede in den betreffenden Betriebssystem-APIs (Application Programming Interfaces) berücksichtigt
werden. Einige dieser Unterschiede sind auf die neuen Funktionen in Windows XP zurückzuführen, andere sind
aber auch bedingt durch die strengeren Programmieranforderungen der Windows NT-Codebasis.
Anwendungen, die unter früheren Versionen von Windows einwandfrei funktionierten, können unter
Windows XP aus einer Reihe unterschiedlicher Gründe fehlschlagen: eine Anwendung kann beispielsweise
ältere Formate von Windows-Daten voraussetzen oder auch Benutzerinformationen, die z. B. in persönlichen
oder temporären Ordnern zu finden sind, an bestimmten anderen Speicherorten oder in anderen Formaten
suchen. Derartige Probleme können für Anwendungen auftreten, die für Windows 95, Windows 98 oder
Windows ME geschrieben worden sind, es können jedoch auch einige der für Windows NT oder Windows 2000
geschriebenen Anwendungen betroffen sein.
Zur Behebung dieses Problems und um dem Benutzer weiterhin die Verwendung älterer Anwendungen zu
ermöglichen, hat Microsoft Anwendungskompatibilitätstechnologien in Windows XP integriert. Diese sind
immer dann von Bedeutung, wenn eine Anwendung unabhängig davon, ob dies im Rahmen eines Systemupdates
oder während des normalen Betriebs erfolgt, unter dem Betriebssystem installiert wird. Der vorliegende Artikel
beschreibt detailliert diese Technologien und skizziert dann, wie diese verwendet und erweitert werden können,
insbesondere mit den im Application Compability Toolkit (Toolkit für die Anwendungskompatibilität)
enthaltenen Zusatztools.
Anwendungskompatibilitätstechnologien
Die in Windows XP integrierten Anwendungskompatibilitätstechnologien können in zwei Gruppen unterteilt
werden: Technologien für Kompatibilität bei der Migration, die die Migration von Anwendungen erleichtern,
wenn von früheren Versionen von Windows auf Windows XP aktualisiert wird, sowie Kompatibilitätsfixes,
Kompatibilitätsmodi und eine Anwendungshilfe, die zusammen die Installation und den Betrieb von
Anwendungen im Windows XP-Betriebssystem unterstützen. Diese Technologien basieren auf dem "Zuordnen
von Informationen", d. h., von anwendungsspezifischen Informationen, die dem Betriebssystem ermöglichen, die
Anwendungen zu erkennen und entsprechend zu reagieren (z. B. durch das Implementieren von
Kompatibilitätsfixes oder das Bereitstellen von Hilfeinformationen für den Benutzer), wenn ein
Kompatibilitätsproblem auftritt. Das Zuordnen von Informationen für eine bestimmte Anwendung kann den
Dateinamen, die Größe der Anwendung, eine Prüfsumme der Inhalte der Datei, die Version der Datei und
ähnliche Informationen umfassen.
Gründe für die Notwendigkeit von
Anwendungskompatibilitätstechnologien
In der Einführung zu diesem Artikel haben wir bereits einige der Gründe genannt, die
Anwendungskompatibilitätstechnologien notwendig machen können: ein Wechsel in Datenformaten von einer
Betriebssystemversion zur nächsten, geänderte Speicherorte oder Formate für Benutzerinformationen. Es gibt
aber noch weitere Gründe. Eine Anwendung kann auch u. U. dann nicht ausgeführt werden, wenn Windows
neue, höhere Versionsnummern zurückgibt. In solchen Fällen funktioniert die Anwendung unter der neuen
Version von Windows oft einwandfrei, wenn der Benutzer diese Sperre überwinden kann. Auch kann eine
Anwendung ältere Versionen von Microsoft Win32®-API-Funktionen aufrufen, die auf Computern mit großen
Ressourcenmengen (z. B. verfügbarer Speicherplatz) unerwartete Werte zurückgeben.
Darüber hinaus können insbesondere Benutzer, die von Windows 95, Windows 98 oder Windows ME
aktualisieren, auf Kompatibilitätsprobleme stoßen, da Anwendungen, die ausschließlich für diese Plattformen
geschrieben wurden u. U. programmgesteuert auf Hardware zugreifen, was unter Windows XP nicht zulässig ist.
Direkter Zugriff auf Hardware kann die Stabilität des Betriebssystems deutlich beeinträchtigen, und da
Windows XP zum großen Teil auf Windows NT basiert, erfordert es die Handhabung des Hardwarezugriffs über
die richtigen Kanäle.
Anwendungen, die ursprünglich für Windows NT oder Windows 2000 geschrieben worden sind, verursachen
jedoch in der Regel keine ernsthaften Kompatibilitätsprobleme unter Windows XP, da diese Betriebssysteme
eine gemeinsame Codebasis verwenden. Trotzdem kann es einige Anwendungen geben, die möglicherweise für
eine bestimmte Version von Windows NT geschrieben worden sind und daher nur mit einem Kompatibilitätsfix
ordnungsgemäß unter Windows XP ausgeführt werden können.
Anwendungsdatenbank-Dateien
Diese Technologien basieren auf Anwendungsdatenbanken (und sind im Grunde auch kaum von solchen zu
unterscheiden), die das Betriebssystem verwendet, um während der Installation oder beim Ausführen einer
Anwendung mit dieser zu kommunizieren. Abgesehen von einer Routine zur schnellen Anwendungsüberprüfung
im Ladeprogramm, liegt die Anwendungskompatibilitätsinfrastruktur selbst außerhalb der Basiskomponenten
des Betriebssystems (wie z. B. dem Kernel). Sie wird nur aufgerufen, wenn die anfängliche Datenbankabfrage
des Ladeprogramms angibt, dass sie erforderlich ist. Damit werden spezielle Kompatibilitätscodepfade innerhalb
der APIs selbst, die u. U. nur für eine Anwendung benötigt werden, überflüssig. Die Unterstützung in Form von
Kompatibilitätsfixes stellt keine zusätzliche Last dar und wirkt sich nicht übermäßig auf die Leistung des
Betriebssystems oder der installierten Anwendungen aus.
Es gibt die folgenden Anwendungsdatenbank-Dateien:




MigDB.inf – zur Unterstützung der Migration von Windows 95-, Windows 98- und Windows MEbasierten Systemen. Diese Datei enthält Zuordnungsinformationen und kennzeichnet Anwendungen, die
nicht kompatibel sind, oder für die vor dem Systemupdateein Benutzereingriff erforderlich ist.
NTCompat.inf – enthält die gleiche Art von Informationen wie MigDB, jedoch zur Unterstützung des
Updates von Windows NT 4.0 und Windows 2000-basierten Systemen.
SysMain.sdb – enthält sowohl Zuordnungsinformationen als auch Kompatibilitätsfixes. Sie finden
diese Datei im Verzeichnis %Windir%\AppPatch.
AppHelp.sdb – enthält nur die Hilfemeldungen, die den Benutzer auffordern, Patches zu
implementieren, die URLs zum Downloaden von Patches von Drittanbietern angeben oder die angeben,
wo weitere Informationen zu finden sind. Diese Datei befindet sich ebenfalls im Verzeichnis
%Windir%\AppPatch.
MigDB und NTCompat enthalten daher Informationen für die Technologien zur Kompatibilität bei der
Migration von einem anderen Betriebssystem nach Windows XP, während sowohl SysMain und AppHelp
Informationen für Kompatibilitätstechnologien anzeigen (und enthalten), die beim Installieren und Ausführen
von Anwendungen unter Windows XP von Bedeutung sind: Kompatibilitätsfixes, Kompatibilitätsmodi und die
Anwendungshilfe.
Technologien für Kompatibilität bei der Migration
Wie bereits weiter oben beschrieben, verwendet Windows XP zur Unterstützung der erfolgreichen Migration
von Anwendungen aus Windows 95-, Windows 98- und Windows ME-basierten Systemen einerseits und
Windows NT- und Windows 2000-basierten Systemen andererseits die Datenbankdateien MigDB.inf bzw.
NTCompat.inf, mit deren Hilfe bekannte Anwendungskompatibilitätsprobleme identifiziert werden können.
Beim Ausführen von Windows XP Setup wird eine Routine zur Überprüfung der Kompatibilität durchgeführt,
die den Benutzer vor Abschluss der Installationsroutine warnt, wenn ernste Kompatibilitätsprobleme vorliegen.
Eine Liste problematischer Anwendungen zusammen mit Hardwarekompatibilitätsinformationen finden Sie im
von Setup generierten Aktualisierungsbericht. Beide Dateien waren bereits in Windows 2000 Setup enthalten
und wurden für Windows XP aktualisiert.
Kompatibilitätsfixes
Wie bereits weiter oben erwähnt, ermittelt das Betriebssystem anhand von Zuordnungsinformationen, wie mit
Anwendungen umzugehen ist, insbesondere welche Fixes oder Meldungen für eine bestimmte Anwendung
erforderlich sind. Die in SysMain.sdb enthaltenen Kompatibilitätsfixes (auch als "Shims" oder "ShimTechnologie" bezeichnet) adressieren allgemeine Anwendungskompatibilitätsprobleme, die bei der Installation
einer ursprünglich für Windows 95, Windows 98, Windows NT 4.0 oder Windows 2000 geschriebenen
Anwendungen auftreten können. Fixes können einfache Lösungen für die häufigsten Kompatibilitätsprobleme
bereitstellen: Ein Fix kann z. B. das ordnungsgemäße Funktionieren einer älteren Anwendung durch Übergeben
der Anmeldeinformationen einer älteren Betriebssystemversion ermöglichen. Fixes können auf bestimmte
Probleme mit bestimmten Anwendungen abgezielt sein (solche Fixes können dem Betriebssystem z. B. erlauben,
bestimmte Warnungen oder Heapverzögerungs- und Speicherfreigabeaufrufe zu ignorieren).
Die SysMain-Datenbankdatei wird bei Einführung von Windows XP ungefähr 200 Kompatibilitätsfixes
enthalten. Diese behandeln die meisten der Kompatibilitätsprobleme, die während der Entwicklung von
Windows XP aufgetreten sind. Softwarehersteller, leitende IT-Angestellte und Entwickler dürfen die
vorhandenen Fixes verwenden, jedoch keine neuen Fixes erstellen. Diese Einschränkung wurde ausdrücklich
festgelegt, um das Risiko einer Sicherheitsgefährdung für das System auszuschließen, das entstehen könnte,
wenn Drittanbieter u. U. schädlichen Code in den Ladeprozess hineintragen.
Kompatibilitätsmodi
Kompatibilitätsmodi (auch als "Schichten" bezeichnet) sind im Grunde Sammlungen von Kompatibilitätsfixes,
die für eine Anwendung eine bestimmte Betriebssystemumgebung emulieren. Der Windows 95Kompatibilitätsmodus enthält z. B. ungefähr 50 der am häufigsten für ältere Windows 95-Anwendungen
erforderlichen Fixes, die das einwandfreie Funktionieren dieser Anwendungen unter Windows XP ermöglichen.
Einige dieser Fixes enthalten: die Rückgabe von Windows 95-Anmeldeinformationen, eine exakte Emulation des
Windows 95/Windows 98/Windows ME-Heap-Managers, Dateipfadfixes, um
Windows 95/Windows 98/Windows ME-Desktop- und Startmenüordner in die entsprechenden Windows XPOrdner (Dokumente und Einstellungen) umzuleiten sowie Registrierungsvirtualisierung zum Emulieren von
Windows 95/Windows 98/Windows ME-Registrierungsdaten.
Es gibt drei unterschiedliche Arten von Modi:



Endbenutzermodi, die in den unterschiedlichen Shellfunktionen von Windows XP angezeigt werden,
z. B. die Registerkarte Kompatibilität oder der Programmkompatibilitäts-Assistent (weitere
Informationen hierzu folgen weiter unten). Der Benutzer kann über die Benutzeroberfläche auf fünf
Basismodi zugreifen: Windows 95, Windows 98/Windows ME, Windows NT 4.0, Windows 2000,
256 Farben und 640 x 480 Bildschirmauflösung.
Systemmodi, die alle oben genannten Endbenutzermodi und einige weitere Optionen enthalten, anhand
derer unabhängige Softwareanbieter, Systemadministratoren und andere IT-Mitarbeiter das Verhalten
ihrer Anwendungen steuern können. Dazu gehören der Sicherheitsmodus Eingeschränktes
Benutzerkonto und der Modus Profile. Der Modus Eingeschränktes Benutzerkonto wird verwendet,
wenn eine Anwendung für einen bestimmten Benutzer in einem eingeschränkten Sicherheitskontext
ausgeführt werden muss. Der Modus Profile kann eine Anwendung darin unterstützen, zu ermitteln,
wie mit Windows XP-Benutzerprofilen umzugehen ist. Für den Zugriff und zum Festlegen verwenden
Sie eines der Tools QFixApp oder CompatAdmin. Eine detaillierte Beschreibung dieser Tools folgt im
nachfolgenden Abschnitt dieses Artikels.
Benutzerdefinierte Modi, die ein Systemadministrator oder andere IT-Mitarbeiter für eine bestimmte
Anwendung oder eine Gruppe von Anwendungen unter Verwendung des Tools CompatAdmin erstellen
können (siehe nachstehende Erläuterung). Benutzerdefinierte Modi können immer nur für die spezielle
Anwendung, die der Benutzer installiert, und für die sie geschrieben wurden, verwendet werden und
jeden in diesem Paket enthaltenen Fix verwenden.
Auch wenn Windows XP bereits einzelne Kompatibilitätsfixes aus SysMain implementiert hat, kann der
Benutzer zusätzlich einen der Kompatibilitätsmodi wählen. Wenn ein Kompatibilitätsmodus angewendet wird,
werden alle enthaltenen Fixes verknüpft und bei Ausführung der Anwendung auf diese angewendet. Dies kann
hilfreich bei der Behandlung von Kompatibilitätsproblemen sein, für die es in der SysMain-Datenbank oder
online von Microsoft (oder von einem Softwarehersteller) keine Fixes gibt.
Anwendungshilfe
Wenn beim Zuordnen von Informationen ermittelt wird, dass die Anwendung, die der Benutzer auszuführen
versucht, nicht kompatibel ist, kann Windows XP entweder einen Kompatibilitätsfix aufrufen oder in der
Benutzeroberfläche eine Hilfemeldung anzeigen.
Die Anwendungshilfe, die strengste der Kompatibilitätstechnologien, ist für Situationen reserviert, in denen für
ein Kompatibilitätsproblem ein Fix ungeeignet oder nicht verfügbar ist. Der dieser Technologie
zugrundeliegende Mechanismus ist einfach: Das Betriebssystem verwendet die Zuordnungsinformationen aus
SysMain, um zu ermitteln, welche Meldungen aus der AppHelp-Datenbank das Ausführen von Anwendungen
mit bekannten Kompatibilitätsproblemen blockieren und/oder den Benutzer darüber informieren sollen.
Genauer gesagt generiert die Anwendungshilfe eine lokalisierte Meldung, die dem Benutzer angezeigt wird,
bevor ein problematischer Prozess initiiert wird. Dazu wird ein Dialogfeld mit einer kurzen Meldung über das
Problem und einer Kennzeichnung des Schwierigkeitsgrades in Form eines Symbols angezeigt. Wenn es sich bei
dem Symbol um ein gelbes Dreieck mit einem Ausrufezeichen handelt, ist die Anwendung nicht blockiert, d. h.,
der Benutzer kann das Programm dennoch ausführen.
Abbildung 1: Meldung der Anwendungshilfe für ein mit Windows XP inkompatibles Programm.
Wenn ein rotes Stoppschild (wie in Abbildung 1 dargestellt) angezeigt wird, ist die Anwendung blockiert, d. h.,
der Benutzer kann das Programm nicht ausführen. Zum Anzeigen weiterer Informationen kann der Benutzer auf
die Schaltfläche Details klicken. Diese Zusatzinformationen werden im Windows XP-Hilfe- und Supportcenter
(siehe Abbildung 2 weiter unten) angezeigt. Der angezeigte Hilfetext stammt entweder von Microsoft.com
(wenn der Computer online ist) oder aus einer lokalen HTML-Hilfedatei (%Windir%\help\apps.chm).
Abbildung 2: Zusatzinformationen zu Problemen, die zur Blockierung einer Anwendung führen, werden
im Hilfe- und Supportcenter angezeigt.
Die Anwendungshilfe wird in der Regel zum Blockieren von Anwendungen auf Systemebene (z. B.
Virenschutzprogramme oder Dienstprogramme für den Zugriff auf Festplatten) verwendet, die nicht
ausdrücklich für Windows XP geschrieben oder bestimmt sind. Durch das Blockieren der Installation dieser
Anwendungen trägt diese Technologie dazu bei, ernste Probleme zu vermeiden, die die Systemintegrität
gefährden könnten. Dies führt zu einer verbesserten Systemstabilität und erhöht die Benutzerfreundlichkeit.
Verwenden und Erweitern von
Anwendungskompatibilitätstechnologien
Wie bereits weiter oben erläutert, basieren die in Windows XP integrierten
Anwendungskompatibilitätstechnologien auf Datenbankdateien, die Zuordnungsinformationen, Fixes und
Hilfeinformationen enthalten. Während in diesen Dateien ungefähr 1.000 der am häufigsten ausgeführten
Anwendungen abgedeckt sind, gibt es naturgemäß noch viele weitere Anwendungen, die nicht enthalten sind,
wie z. B. benutzerdefinierte Anwendungen oder extrem spezialisierte Anwendungen. Für diese Fälle stellt
Microsoft zusätzliche Dienste und Tools bereit.
Aktualisieren der Basisdatenbank-Dateien mit automatisierten Diensten
Microsoft stellt zwei automatisierte Dienste zum Ergänzen der in den Anwendungsdatenbank-Dateien von
Windows XP enthaltenen Kompatibilitätsinformationen bereit:

Dynamisches Update, eine neue Funktion in Windows XP, mit deren Hilfe sichergestellt wird, dass
immer die neuesten Treiber und Kompatibilitätsdateien zur Verfügung stehen. Diese Funktion ist Teil
des Windows XP-Installationsprogramms und prüft, ob es neuere Treiber oder Patchdateien gibt, als die
auf der Windows XP-Installations-CD enthaltenen. Wenn der Computer beim Starten von Setup eine
Verbindung zum Internet herstellen kann, prüft er, ob neue Treiber, Softwarepatches oder andere
wichtige Updates existieren und downloadet diese, um sie dann im Rahmen von Setup automatisch zu
installieren.
Dynamische Update-Pakete werden direkt bei Verfügbarkeit in der Windows Update-Website abgelegt.
Dies ist besonders vorteilhaft für Benutzer, die Windows XP erst nach Einführung des Produkts
installieren und für deren Anwendungen möglicherweise bereits neue Fixes und Hilfeinformationen
verfügbar sind.

Windows Update ist eine Onlineerweiterung zu Windows XP und bietet einen zentralen Ort für
Produkterweiterungen wie Service Packs, Gerätetreiber und Systemsicherheitsaktualisierungen. Wenn
daher Ihr Computer während der Installation einer neuen Anwendung mit dem Internet verbunden ist,
sucht Windows XP nicht nur in den lokalen Datenbankdateien (SysMain und AppHelp) sondern auch
online in der Windows Update-Website nach Anwendungskompatibilitätsfixes und anderen für die
Anwendung wichtigen Daten.
Anwendungskompatibilitätstools in der Benutzeroberfläche
Microsoft stellt zwei Anwendungskompatibilitätstools in der Benutzeroberfläche von Windows XP bereit: den
Programmkompatibilitäts-Assistenten und die Erweiterung der Kompatibilitätsshell. Der Benutzer kann
problemlos auf diese Tools zugreifen und mit diesen seine Anwendungskompatibilitätseinstellungen anpassen.
Sie unterstützen den Benutzer bei der Installation und der Ausführung von Anwendungen, die nach Windows XP
eingeführt werden und bieten Hilfe in den Fällen, in denen die SysMain-Datenbank keine Informationen enthält
und auch Windows Update keine Hilfe zur Verfügung stellen kann.
Programmkompatibilitäts-Assistent
In großen Firmenumgebungen können die Benutzer sich in der Regel bei Kompatibilitätsproblemen auf die Hilfe
einer internen technischen Supportgruppe verlassen. Im privaten Bereich oder in kleineren
Unternehmensumgebungen muss der Benutzer u. U. selbst für Support für seine Anwendungen sorgen. Dabei
hilft der Programmkompatibilitäts-Assistent.
Der Programmkompatibilitäts-Assistent ist Teil des Windows XP-Hilfe- und Supportcenters und ermöglicht das
bequeme und einfache Anpassen von Anwendungskompatibilitätseinstellungen. Dieser Assistent verwendet die
Kompatibilitätsfixes und Kompatibilitätsmodi aus der SysMain-Datenbankdatei. Sie können die anzupassende
Anwendung aus einer Liste der Anwendungen mit bekannten Problemen auswählen, nach der Anwendung
suchen oder die Anwendung von der CD auswählen.
Das Anwenden eines Kompatibilitätsmodus mit dem Programmkompatibilitäts-Assistenten ist ebenso einfach
wie das Auswählen des Betriebssystems, unter dem die Anwendung ordnungsgemäß ausgeführt wird. Es gibt
vier Hauptoptionen:




Microsoft Windows 95
Microsoft Windows NT 4.0 (Service Pack 5)
Microsoft Windows 98/Windows ME
Microsoft Windows 2000
Darüber hinaus können Sie festlegen, dass für die Anwendung kein Kompatibilitätsmodus ausgewählt werden
soll. Abbildung 3 zeigt die Kompatibilitätsmodusoptionen im Programmkompatibilitäts-Assistenten.
Abbildung 3: Mithilfe des Programmkompatibilitäts-Assistenten können Sie problemlos
Kompatibilitätsmodi für eine Anwendung auswählen.
Sobald Sie die gewünschte Option ausgewählt haben, ermöglicht der Programmkompatibilitäts-Assistent das
Konfigurieren von Anzeigeeinstellungen für die Anwendung. Farbtiefe und Bildschirmauflösung sind oft der
Auslöser dafür, dass ältere Anwendungen blockiert werden. Die im Assistenten aktivierten Fixes bewirken, dass
die Anwendung mit einer Auflösung von 640 x 480 Pixel oder mit einer Farbtiefe von 256 Farben angezeigt
wird. Zusätzlich hierzu können Sie in Windows XP die visuellen Themen für Anwendungen, wie z. B.
Lernprogramme oder Spiele, deaktivieren, da diese ebenfalls Probleme verursachen können.
Im letzten Teil des Assistenten können Sie die ausgewählten Kompatibilitätseinstellungen überprüfen. Wenn die
Anwendung beim Testen der Kompatibilitätseinstellungen ordnungsgemäß ausgeführt wird, können Sie die
Einstellungen speichern, damit sie bei jedem Ausführen der Anwendung automatisch angewendet werden.
Erweiterung der Kompatibilitätsshell
Fortgeschrittene Benutzer von Windows XP können die grundlegenden Kompatibilitätseinstellungen auch direkt
anpassen. Die im Programmkompatibilitäts-Assistenten verfügbaren Funktionen stehen auch auf der
Registerkarte Kompatibilität im Dialogfeld Eigenschaften einer ausführbaren Datei zur Verfügung. Siehe
hierzu die nachstehende Abbildung 4.
Abbildung 4: Die erweiterte Kompatibilitätsshell generiert für jede ausführbare Datei eine Registerkarte
"Kompatibilität".
Die aufgeführten Kompatibilitätseinstellungen sind in zwei Listenfelder unterteilt: Kompatibilitätsmodus und
Anzeigeeinstellungen. Das Listenfeld Kompatibilitätsmodus ermöglicht das Auswählen des Betriebssystems,
unter dem die ausführbare Datei ordnungsgemäß ausgeführt wird. Diese Option wendet den betreffenden
Kompatibilitätsmodus bei jedem Ausführen der Datei an. Das Listenfeld Anzeigeeinstellungen ermöglicht das
Ändern der Farbtiefe, der Bildschirmauflösung und das Deaktivieren der visuellen Themen in Windows XP.
Tools zum Erstellen einer benutzerdefinierten AnwendungskompatibilitätsDatenbank
Zusätzlich zu den Benutzeroberflächentools für Anwendungskompatibilität gibt es zwei Tools für erfahrene
Systemadministratoren und IT-Supportmitarbeiter: QFixApp und CompatAdmin. Diese sind besonders hilfreich
zur Unterstützung von Anwendungen, die weder in der lokalen Datenbank noch in der Onlinedatenbank für
Anwendungskompatibilität aufgeführt sind. Beide Tools finden Sie im Application Compatibility
Toolkit(englischsprachig). Sie erhalten dieses online bei Microsoft.
QFixApp
QFixApp ist ein kleines Anwendungstool, das eine Schnittstelle zur Datenbank mit den in das Betriebssystem
integrierten Kompatibilitätsfixes enthält. Die Verwendung dieses Tools ist relativ einfach: Sie suchen nach der
ausführbaren Datei, die repariert werden muss und wählen den Kompatibilitätsmodus aus, den Sie anwenden
möchten (siehe Abbildung 5). Dies ist ein manueller Prozess (im Gegensatz zur halbautomatischen
Vorgehensweise bei Verwendung des Programmkompatibilitäts-Assistenten), dennoch können Sie hiermit exakt
steuern, welche Kompatibilitätsfixes auf Ihre Anwendung angewendet werden sollen. Ein weiterer Vorteil von
QFixApp liegt darin, dass die Anwendung, die repariert werden soll, nicht in der Liste der Anwendungen mit
bekannten Problemen enthalten sein muss. QFixApp kann sehr hilfreich sein, um zu ermitteln, welche Fixes auf
benutzerdefinierte Anwendungen anzuwenden sind.
Abbildung 5: QFixApp ermöglicht es, exakt festzulegen, welche Fixes für eine bestimmte Anwendung
anzuwenden sind.
Das Tool QFixApp.exe ermöglicht das Auswählen jeder beliebigen ausführbaren Datei und das Anwenden eines
oder mehrerer der in der SysMain-Datenbank enthaltenen Fixes (diese wird unter Windows XP ungefähr
200 Fixes enthalten). Mithilfe von QFixApp können Sie die Kombination aus Fixes ermitteln, mit deren Hilfe
Ihre Anwendung unter Windows XP ausgeführt werden kann.
Entscheiden Sie zunächst, ob Sie einen Kompatibilitätsmodus oder einen Kompatibilitätsfix verwenden möchten,
bevor Sie QFixApp verwenden. In der Registerkarte Layers können Sie einen Kompatibilitätsmodus und in der
Registerkarte Fixes einzelne Fixes oder Kombinationen mehrerer Fixes auswählen. Es ist in der Regel am
sinnvollsten, zunächst einen Kompatibilitätsmodus auszuwählen, wenn Sie sicher sind, dass die Anwendung
unter der betreffenden Version von Windows ordnungsgemäß ausgeführt wurde. Sobald Sie Ihre Auswahl
getroffen haben, klicken Sie auf die Schaltfläche Run, um das Testen der Kombination aus Fixes durch
QFixApp zu starten. (QFixApp verwendet zum Testen der Gruppe ausgewählter Fixes das Dienstprogramm
ShimDBC.exe.)
CompatAdmin
In einer größeren Netzwerkumgebung kann es mehr Anwendungen geben, die mit den Windows XPTechnologien für Anwendungskompatibilität bearbeitet werden müssen. Zusätzlich kann es aufgrund der
verteilten Natur großer Netzwerke schwierig und zeitaufwändig sein, das genau für den Benutzer richtige Paket
mit Kompatibilitätsfixes zusammenzustellen. Microsoft stellt das Kompatibilitätsverwaltungstool CompatAdmin
bereit, um Administratoren zu helfen, Pakete mit Kompatibilitätsfixes zusammenzustellen und zu verteilen.
CompatAdmin stellt eine Benutzeroberfläche zum Durchsuchen und Bearbeiten der Windows XP-Datenbank mit
den Kompatibilitätsfixes (siehe Abbildung 6) bereit. Dieses Tool ermöglicht das Auswählen beliebiger
ausführbarer Dateien und das Anwenden eines oder mehrerer der unzähligen Fixes, die im Betriebssystem zur
Verfügung stehen. Wenn Sie alle zum Ausführen der Anwendung erforderlichen Fixes ermittelt haben, können
Sie mithilfe von CompatAdmin ein Paket bereitstellen, um diese Fixes anderen Windows XP-basierten
Computer bereitzustellen.
Abbildung 6: Das Tool CompatAdmin erleichtert das Erstellen von Paketen mit Kompatibilitätsfixes zur
Bereitstellung für andere Computer.
CompatAdmin umfasst eine Suchfunktionalität zum Suchen nach "reparierten" Anwendungen auf Ihren Systemoder Netzwerklaufwerken und analysiert diese im Hinblick auf die verwendeten Gruppen von Fixes. Dies
vereinfacht den Prozess zum Erstellen eines Pakets mit Kompatibilitätsfixes zur Bereitstellung für andere
Computer. CompatAdmin enthält eine Liste der Anwendungen, die Microsoft als Anwendung identifiziert hat,
die nur nach Implementation eines oder mehrerer Kompatibilitätsfixes ordnungsgemäß unter Windows XP
ausgeführt werden.
CompatAdmin unterstützt das Erstellen und Verwalten benutzerdefinierter Kompatibilitätsdatenbanken. Dies ist
einer der nützlichsten Aspekte des Tools. Die aktuelle benutzerdefinierte Datenbank wird im Fenster in der
linken unteren Ecke des Hauptfensters von CompatAdmin angezeigt. Wenn Sie CompatAdmin starten, wird der
Bereich für die benutzerdefinierte Datenbank mit einer neuen leeren Datenbank geöffnet. Mithilfe der Optionen
aus dem Menü Database können Sie bestimmte Fixes oder benutzerdefinierte Kompatibilitätsmodi zu Ihrer
benutzerdefinierten Datenbank hinzufügen oder aus dieser entfernen. Siehe hierzu die nachstehende
Abbildung 7.
Abbildung 7: CompatAdmin enthält einen Assistenten zur Unterstützung beim Erstellen eines
benutzerdefinierten Kompatibilitätsmodus.
Die Menüoptionen sind u. U. nur aktiviert, wenn Sie das Fenster für die benutzerdefinierte Datenbank und/oder
einen gültigen Eintrag ausgewählt haben. Sobald Sie alle erforderlichen Kompatibilitätsfixes zu Ihrer
benutzerdefinierten Datenbank hinzugefügt haben, können Sie die Datenbank speichern und dann an alle
Windows XP-basierten Computer verteilen, die die Kompatibilitätsfixes benötigen.
Zusammenfassung
Windows XP unterstützt eine breite Basis von Anwendungen. Für Anwendungen, die möglicherweise unter
diesem neuen Betriebssystem nicht ordnungsgemäß ausgeführt werden, stellt Microsoft eine Reihe von
Anwendungskompatibilitätstechnologien und die zum Nutzen und Erweitern dieser Technologien erforderlichen
Tools bereit.
Die Anwendungskompatibilitätstechnologien in Windows XP verwenden Datenbankdateien zum Identifizieren
und Reparieren von Anwendungen, die ansonsten unter Windows XP nicht ordnungsgemäß ausgeführt würden.
Zum Aktualisieren von Windows 95, Windows 98 und Windows Millennium einerseits und von Windows NT
und Windows 2000 andererseits werden die Datenbankdateien MigDB.inf bzw. NTCompat.inf verwendet. Für
die Implementation von Anwendungskompatibilität nach der Installation von Windows XP werden die
Datenbanken SysMain.sdb (mit Zuordnungsinformationen und Kompatibilitätsfixes) und AppHelp.sdb (mit
den Hilfemeldungen und Warnungen zum Informieren des Benutzers bei Vorliegen von
Anwendungskompatibilitätsproblemen, für die derzeit keine Fixes vorliegen).
Windows XP enthält den Programmkompatibilitäts-Assistenten zur Unterstützung des Benutzers bei der
Implementation von Anwendungskompatibilitätsfixes unter Verwendung des Hilfe- und Supportcenters.
Erfahrene Benutzer können die Eigenschaften einer ausführbaren Datei unter Verwendung der Registerkarte
Kompatibilität im Dialogfeld Eigenschaften ändern, um Kompatibilitätsfixes anzuwenden.
Netzwerkadministratoren und IT-Supportmitarbeiter können mithilfe der Tools QFixApp und CompatAdmin
benutzerdefinierte Kompatibilitätsfixes für Anwendungen erstellen und dann als Pakete an Benutzer im
Netzwerk verteilen.
Verwandte Links


Windows XP Application Compability Toolkit
http://msdn.microsoft.com/library/default.asp?url=/nhp/Default.asp?contentid=28000911
(englischsprachig)
Designed for Windows XP Application Specification
http://www.microsoft.com/winlogo/downloads/AppSpec22.doc (englischsprachig)
Die aktuellsten Informationen zu Windows XP finden Sie auf der Windows XP-Website unter
http://www.microsoft.com/germany/ms/windowsxp/
bzw. http://www.microsoft.com/windowsxp/ (englischsprachig).
Dies ist ein vorläufiges Dokument, das vor der kommerziellen Einführung der hier beschriebenen Software
erheblichen Änderungen unterworfen sein kann. Die in diesem Dokument enthaltenen Informationen stellen die
behandelten Themen aus der Sicht der Microsoft Corporation zum Zeitpunkt der Veröffentlichung dar. Da
Microsoft auf sich ändernde Marktanforderungen reagieren muss, stellt dies keine Verpflichtung seitens
Microsoft dar, und Microsoft kann die Richtigkeit der hier dargelegten Informationen nach dem Zeitpunkt der
Veröffentlichung nicht garantieren.
Dieses Whitepaper dient nur zu Informationszwecken. MICROSOFT SCHLIESST FÜR DIESES DOKUMENT
JEDE GEWÄHRLEISTUNG AUS, SEI SIE AUSDRÜCKLICH ODER KONKLUDENT.
Die Benutzer/Innen sind verpflichtet, sich an alle anwendbaren Urheberrechtsgesetze zu halten. Unabhängig
von der Anwendbarkeit der entsprechenden Urheberrechtsgesetze darf ohne ausdrückliche schriftliche Erlaubnis
der Microsoft Corporation kein Teil dieses Dokuments für irgendwelche Zwecke vervielfältigt oder in einem
Datenempfangssystem gespeichert oder darin eingelesen werden, unabhängig davon, auf welche Art und Weise
oder mit welchen Mitteln (elektronisch, mechanisch, durch Fotokopieren, Aufzeichnen usw.) dies geschieht.
Es ist möglich, dass Microsoft Rechte an Patenten bzw. angemeldeten Patenten, an Marken, Urheberrechten
oder sonstigem geistigen Eigentum besitzt, die sich auf den fachlichen Inhalt dieses Dokuments beziehen. Das
Bereitstellen dieses Dokuments gibt Ihnen jedoch keinen Anspruch auf diese Patente, Marken, Urheberrechte
oder auf sonstiges geistiges Eigentum, es sei denn, dies wird ausdrücklich in den schriftlichen Lizenzverträgen
von Microsoft eingeräumt.
© 2001 Microsoft Corporation. Alle Rechte vorbehalten. Microsoft, Windows und Windows NT sind entweder
eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern.
Weitere in diesem Dokument aufgeführte Produkt- oder Firmennamen können geschützte Marken ihrer
jeweiligen Inhaber sein.
Microsoft Corporation • One Microsoft Way • Redmond, WA 98052-6399 • USA
Herunterladen