Freigeben über


[Newsletter-Archiv ^] [< Band 5, Nummer 1] [Band 6, Nummer 1 >]

Der Systems Internals Newsletter Band 5, Nummer 2

http://www.sysinternals.com
Copyright (C) 2003 Mark Russinovich


23. Juni 2003 – In dieser Ausgabe:

  1. LEITARTIKEL

  2. NEUIGKEITEN BEI SYSINTERNALS

    • Filemon v6.06, Regmon v6.06
    • PsPassword v1.01
    • PsLogList v2.3
    • AccessEnum v1.0
    • Process Explorer v6.03
  3. INTERNALS – INFORMATIONEN

    • PsExec Teil des Deloader-Wurms
    • Verwenden von PsTools zum Verursachen von Problemen
    • Microsoft dokumentiert NtQuerySystemInformation (sozusagen)
  4. INTERNALS-SCHULUNG

    • Sommervideo-Special
    • Microsoft TechEd Europe
    • Nächste öffentliche Windows Internals-Klasse

Der Sysinternals-Newsletter wird von Winternals Software gesponsert (im Web unter http://www.winternals.com.). Winternals Software ist der führende Entwickler und Anbieter von erweiterten Systemtools für Windows NT/2000/XP.

Winternals freut sich, die Veröffentlichung von Administrator's Pak 4.0 mit einem umfassenden Update unseres Flaggschiffprodukts ERD Commander 2003 anzukündigen. Zu den neuen Funktionen von ERD Commander 2003 gehören: FileRestore, um gelöschte Dateien wiederherzustellen, die Möglichkeit, Windows XP-Systemwiederherstellungspunkte zu verwenden, um nicht mehr startfähige Systeme wiederherzustellen, Disk Commander, um den Master Boot Record (MBR) zu reparieren und Daten sogar von gelöschten Datenträgern zu retten sowie ein Diagnosetool „System Compare“, um System- und Konfigurationsdateien auf einem toten System mit funktionierenden Systemen zu vergleichen. Um eine Testversion anzufordern, besuchen Sie http://www.winternals.com/sn.

LEITARTIKEL

Guten Tag,

Willkommen beim Sysinternals-Newsletter. Der Newsletter hat aktuell 36.000 Abonnenten.

Endlich habe ich es getan. Ich bin von Internet Explorer auf Mozilla (http://www.mozilla.org) umgestiegen. Bryce Cogswell (mein Mitbegründer von Sysinternals und Winternals) verwendet Mozilla nun schon seit einigen Jahren und hat mich regelmäßig über all die coolen Funktionen informiert, die IE nicht bietet. Am offensichtlichsten ist, dass Sie neue Seiten nicht mehr in separaten Fenstern öffnen müssen, sondern sie auf Registerkarten desselben Browserfensters anzeigen lassen können. Wenn Sie mehrere Seiten haben, die beim Start des Browsers geöffnet werden sollen, legen Sie einfach eine Gruppe von Registerkarten als Startgruppe fest.

Während IE eine globale Einstellung für das Speichern von Kennwörtern für Webseiten bietet, können Sie bei Mozilla festlegen, für welche Webseiten Kennwörter gespeichert werden sollen, und Sie können den Kennwort-Manager verwenden, um gespeicherte Kennwörter jederzeit zu entfernen. Hinzu kommen ein integrierter Download-Manager, ein integrierter E-Mail-Client (den ich nicht verwende), mehrere Profile, ein integriertes Chatprogramm und die Integration beliebter Suchmaschinen, sodass der Abstand zwischen Mozilla und IE beeindruckend wird.

Mozilla glänzt jedoch wirklich, wenn es um lästige Webseiten geht. Der Browser enthält einen integrierten Popup-Manager, mit dem Sie Popupfilterung für jede einzelne Website konfigurieren können, wenn Sie dies wünschen. Er verfügt über einen Cookie-Manager, mit dem Sie Cookies blockieren können, auf Wunsch auch pro Website, und mit dem Sie die Cookies einsehen können, die auf Ihrem System abgelegt wurden. Sie können auch das Verhalten von Mozilla in Bezug auf Bilder konfigurieren. Die meisten Websites mit unangenehmen Bannern beziehen die Grafikdateien von externen Sponsorenwebsites, und Sie können Mozilla so konfigurieren, dass externe Bilder ignoriert werden. Auch hier gilt: pro Website, wenn Sie dies wünschen. Eine nette visuelle Note ist schließlich Mozillas Unterstützung für Skins, von denen zahlreiche kostenlos erhältlich sind.

Das klingt sicher wie ein Verkaufsgespräch, ist es aber nicht. Es handelt sich eher um einen Kommentar dazu, was mangelnder Wettbewerb für ein Produktsegment bedeutet. Warum verfügt IE nicht über Funktionen wie die Cookieverwaltung und einen Popupblocker, für die Verbraucher Geld ausgeben müssen, während Mozilla diese und weitere Funktionen kostenlos anbietet? Warum hat sich IE zwischen Version 5 und 6 so wenig verändert, und warum wurde der Browser seit zwei Jahren nicht mehr aktualisiert? Die überwiegende Mehrheit der Verbraucher verwendet die Software, die auf ihren Computern vorhanden ist, und liest keine Open-Source-Newsgroups oder besucht Slashdot.org, sodass sie nicht weiß, dass es bessere, kostenlos verfügbare Alternativen gibt. Microsoft und Netscape haben in ihrem Wettbewerb um die Vorherrschaft auf dem Markt für Webserveranwendungen die Browser kostenlos zur Verfügung gestellt, sodass es für Microsoft keinen finanziellen Vorteil bringt, IE zu verbessern – das Unternehmen verliert kein Geld, wenn ein Poweruser wie ich auf Mozilla umsteigt.

Derselbe Effekt ist auch bei der Add-On-Software von Microsoft zu beobachten. Ich habe früher Eudora als E-Mail-Client verwendet, bin aber vor etwa zwei Jahren auf Outlook umgestiegen. Alle schienen Outlook zu verwenden, und ich wollte die Vorteile der Kalenderfunktion nutzen. Ich habe sofort eine Reihe von kleinen Ärgernissen festgestellt. Sie können Eudora beispielsweise so konfigurieren, dass E-Mails, die eine bestimmte Größe überschreiten, auf dem Server verbleiben, was hilfreich ist, wenn Sie sich in einem Hotelzimmer mit 25 KB eingewählt haben. Outlook verfügt über eine ähnliche Funktion, aber Eudora lädt die ersten Zeilen des Nachrichtentextes herunter, sodass Sie sehen können, worum es in der E-Mail geht, und anhand dieser Informationen entscheiden können, ob Sie einen langen Download in Kauf nehmen möchten oder nicht. Outlook kann das nicht.

Ich könnte so weitermachen, aber Sie haben meine Botschaft inzwischen verstanden und können wahrscheinlich eine Liste mit eigenen Anekdoten hinzufügen. Unter dem Strich ist Wettbewerb gut für den Konsumenten von Computern. Vielleicht wird IE „Longhorn“ Mozilla den Rang ablaufen?

Bitte leiten Sie den Newsletter an alle Personen weiter, für die diese Informationen von Interesse sein könnten.

Vielen Dank!

– Mark

NEUIGKEITEN BEI SYSINTERNALS

FILEMON V6.06, REGMON V6.06

Filemon und Regmon haben sich in weniger als sechs Monaten um zwei volle Versionsnummern weiterentwickelt. Dieses letzte große Update bringt Verbesserungen, die die Bedienung erleichtern und die Anzeige informativer machen.

Wenn Sie die neuen Versionen ausführen, sehen Sie sofort, dass in der Prozessspalte Prozesssymbole angezeigt werden, die Ihnen einen visuellen Hinweis darauf geben, welche Anwendung mit der angezeigten E/A verbunden ist. Wenn Sie detaillierte Informationen zu einem Prozess wünschen, einschließlich seiner Versionsinformationen, des vollständigen Pfads und der Befehlszeile, klicken Sie mit der rechten Maustaste auf die Zeile mit der E/A dieses Prozesses, und wählen Sie „Prozesseigenschaften“ aus.

In einigen Fällen kann es vorkommen, dass Sie kein passendes Symbol für einen Prozess sehen und ein Fehlerdialogfeld erhalten, wenn Sie versuchen, seine Eigenschaften anzuzeigen. Dies ist der Fall, wenn ein Prozess gestartet und beendet wird, bevor die Benutzeroberfläche die Möglichkeit hat, auf den Prozess zuzugreifen und seinen Pfad zu ermitteln.

Wenn Sie das Kontextmenü öffnen, sehen Sie auch Einträge, mit denen Sie den Prozess oder den Pfad zum Filter „Einschließen“ oder „Ausschließen“ hinzufügen können. Wenn Sie sich für die Anwendung eines neuen Filters entscheiden, erhalten Sie eine neue Eingabeaufforderung, in der Sie gefragt werden, ob Sie den neuen Filter auf die erfasste Ausgabe anwenden möchten. Auf diese Weise können Sie die Ausgabe schnell auf die Informationen eingrenzen, an denen Sie interessiert sind, ohne die Ausgabe speichern und zur Nachbearbeitung in ein Tabellenkalkulationsprogramm laden zu müssen.

Eine weitere Verbesserung ist die Möglichkeit, gespeicherte Protokolldateien erneut in die Anzeige zu laden. In Verbindung mit den neuen Filterfunktionen und Hervorhebungen werden die Tools dadurch vielseitig bei der Post-Mortem-Problemanalyse einsetzbar.

Herunterladen von Filemon v6.06 unter
http://www.sysinternals.com/ntw2k/source/filemon.shtml
Herunterladen von Regmon v6.06 unter
http://www.sysinternals.com/ntw2k/source/regmon.shtml

PSPASSWORD V1.01

Mit dieser neuesten Ergänzung der PsTools-Suite erhöht sich die Gesamtzahl der gebündelten Befehlszeilen- und remotefähigen Verwaltungstools, aus denen die Suite besteht, auf 12. Viele Systemadministratoren, darunter auch die bei Winternals, dem von mir mitgegründeten Unternehmen, ändern regelmäßig die lokalen administrativen Kennwörter der von ihnen verwalteten Clientcomputer. Es gibt keine integrierte Möglichkeit, lokale Kennwörter remote zu ändern. Dies ist der Zweck von PsPassword. Sie können damit lokale Kennwörter (oder Domänenkennwörter) auf einem Remotecomputer ändern. Durch das Hinzufügen zu einem Skript oder einer Batchdatei, die das Programm auf einer Liste von Computern ausführt, wird das Tool zu einem idealen Hilfsprogramm für die Massenänderung von Kennwörtern.

Herunterladen von PsPassword v1.01 unter
http://www.sysinternals.com/ntw2k/freeware/pspasswd.shtml
Herunterladen der gesamten PsTools-Suite unter
http://www.sysinternals.com/ntw2k/freeware/pstools.shtml

PSLOGLIST V2.3

PsLoglist ist eines der vielen Sysinternals-Tools, für die ich häufig Featureanfragen erhalte. Die Verbesserungen von Version 2.3 spiegeln alle Benutzeranfragen wider. Der Bereich mit den meisten Verbesserungen ist die Filterung. PsLoglist verfügt über neue Optionen, mit denen Sie die angezeigten Ereignisdatensätze auf diejenigen beschränken können, die mit einer bestimmten Ereignis-ID übereinstimmen oder eine bestimmte Ereignisquelle haben, beispielsweise IIS. In früheren Versionen akzeptierte der Ereignistypfilter nur einen Ereignistyp, aber jetzt erlaubt er die Eingabe mehrerer Typen. Um beispielsweise alle Fehler und Warnungen anzuzeigen, können Sie eine Befehlszeile wie die folgende verwenden: psloglist -t f w.

Herunterladen von PsLogList v2.3 unter
http://www.sysinternals.com/ntw2k/freeware/psloglist.shtml
Herunterladen der gesamten PsTools-Suite unter
http://www.sysinternals.com/ntw2k/freeware/pstools.shtml

ACCESSENUM V1.0

Das umfangreiche Berechtigungsmodell von NTFS bietet enorme Flexibilität. Diese Flexibilität birgt ein Potenzial für Komplexität und falsch konfigurierte Sicherheit. Leider gibt es keine integrierten Tools, die die Verwaltung der Sicherheit von Verzeichnissen und Dateien vereinfachen. Das Befehlszeilendienstprogramm cacls verfolgt zwar die richtige Idee, aber die Tatsache, dass es sich um ein Befehlszeilentool handelt, erschwert die Analyse seiner Ausgabe. Hier kommt AccessEnum ins Spiel. AccessEnum bietet Ihnen eine leicht verständliche Übersicht über die Datei- und Verzeichnisberechtigungen für ganze Verzeichnisstrukturen. Mit AccessEnum können Sie Berechtigungsprobleme leicht erkennen.

Wenn Sie AccessEnum ausführen, geben Sie ein Verzeichnis an, und AccessEnum zeigt Ihnen, welche Benutzer welchen Zugriff auf dieses Verzeichnis besitzen, ggf. auch die Dateien und Verzeichnisse unter diesem Verzeichnis. Standardmäßig listet AccessEnum ein Verzeichnis nur dann auf, wenn sich die Berechtigungen des Verzeichnisses von denen des übergeordneten Verzeichnisses unterscheiden, und das Tool zeigt nur Dateien an, wenn die Berechtigungen der Datei lascher sind als die des übergeordneten Verzeichnisses. Wenn Sie möchten, können Sie im Dialogfeld „Optionen“ festlegen, dass AccessEnum Dateien anzeigt, deren Berechtigungen von denen des übergeordneten Verzeichnisses abweichen.

Herunterladen von AccessEnum v1.0 unter
http://www.sysinternals.com/ntw2k/source/accessenum.shtml

PROCESS EXPLORER V6.03

Process Explorer ist ein Hilfsprogramm zur Anzeige und Steuerung von Prozessen, das dort ansetzt, wo der Task-Manager aufhört. Neben seiner umfangreichen Liste von Funktionen zeigt der Process Explorer die Struktur der Prozesserstellung, zeigt Handles an, die Prozesse geöffnet haben, listet DLLs (und andere speicherzugeordnete Dateien) auf, die Prozesse geladen haben, und ermöglicht die Suche nach dem Prozess oder den Prozessen, die eine bestimmte Datei geöffnet haben.

Die wichtigsten Verbesserungen in Version 6.0 beziehen sich auf Ansichtsspalten. Bis zu dieser Version gab es keine Möglichkeit, Spalten zu konfigurieren, sodass ich sorgfältig auswählte, welche Spalten angezeigt werden sollten, um den begrenzten verfügbaren Platz optimal zu nutzen. Dadurch wurden die Daten, die ohne Öffnen eines Eigenschaftendialogfelds angezeigt werden konnten, auf die Daten beschränkt, die ich für am meisten nützlich hielt.

Genau wie im Task-Manager können Sie nun über die Menüoption „View|Select Columns“ (Ansicht|Spalten auswählen) auswählen, welche Spalten Sie in jeder der drei Ansichten „Process“ (Prozesse), „Handle“ und „DLL“ anzeigen möchten. Sie können auch Spalten ziehen, um sie neu anzuordnen. Sie können nicht nur die Anzeige nach Ihren Wünschen anpassen, sondern haben auch die Möglichkeit, eine Vielzahl von Spalten auszuwählen. Die Prozessansicht unterstützt beispielsweise die Spaltenauswahl des Task-Managers sowie weitere nützliche Spalten wie Prozessabbildpfad, Befehlszeile, Versionsnummer und Firmenname.

In früheren Versionen aktualisierte Process Explorer seine Anzeige synchron, was bedeutete, dass die Benutzeroberfläche zeitweise nicht mehr reagierte, insbesondere wenn die Handleansicht aktiv und ein Prozess mit Tausenden von Handles ausgewählt war. Version 6.0 führt asynchrone Aktualisierungen aller drei Ansichten ein, wodurch die Benutzeroberfläche immer reaktionsschnell ist und der Process Explorer schneller erscheint.

Eine leistungsstarke Funktion, die ich mit einer früheren Version von Process Explorer eingeführt habe, ist die Differenzmarkierung, bei der neue Elemente in der Anzeige grün und gelöschte Elemente rot hervorgehoben werden. Ich habe die Funktion erweitert, sodass in Version 6.0 die Hervorhebung der Aktualisierungen 4 Sekunden lang anhält, sofern Sie die Anzeige nicht angehalten haben, sodass Änderungen leichter zu erkennen sind (im angehaltenen Modus bleibt die Hervorhebung bis zur nächsten manuellen Aktualisierung erhalten).

Zu wissen, welche Dienste innerhalb eines Prozesses ausgeführt werden, ist eine der Fähigkeiten der Prozessansicht von Process Explorer. Sie können die Prozesse, die Dienste hosten, hervorheben, indem Sie „Options|Highlight Services“ (Optionen|Dienste hervorheben) auswählen. Wenn Sie die Eigenschaften eines Prozesses anzeigen, der einen Dienst hostet, gibt es eine zusätzliche Registerkarte mit dem Titel „Services“ (Dienste), die eine Liste der im Prozess ausgeführten Dienste (einschließlich ihrer Dienst- und Anzeigenamen) anzeigt. Unter Windows 2000 und höher zeigt Process Explorer jetzt auch die Beschreibung eines Diensts an, den Sie in der Diensteliste ausgewählt haben, wenn der Entwickler des Diensts eine Beschreibung bereitgestellt hat. Diese zusätzlichen Informationen machen die Identifizierung von Diensten mit Process Explorer einfacher als mit jedem anderen Tool (wie Tlist /s oder dem neuen Befehl tasklist /svc in XP und 2003).

Zu den weiteren kleineren Verbesserungen gehört die Tatsache, dass Process Explorer beim Speichern nun den Inhalt sowohl der Prozessansicht als auch der unteren Ansicht (Handle oder DLL) speichert, anstatt nur die untere Ansicht. Außerdem gibt es jetzt eine Option zum Minimieren, sodass Sie Process Explorer immer griffbereit haben.

Herunterladen von Process Explorer v6.03 unter
http://www.sysinternals.com/ntw2k/freeware/procexp.shtml

SYSINTERNALS BEI WWW.MICROSOFT.COM

Dies ist die aktuelle Version der Sysinternals-Verweise in den Microsoft Knowledge Base-Artikeln (KB), die seit dem letzten Newsletter veröffentlicht wurden. Damit sind insgesamt 41 KB-Verweise auf Sysinternals verfügbar.

  • ACC2002: Fehlermeldung: ActiveX-Komponente kann ein Objekt nicht erstellen http://support.microsoft.com/default.aspx?scid=kb%3Ben-us%3B319844

  • FIX: Langsame Leistung, wenn die Browserfunktionenauswertung aus dem Cache entfernt wird http://support.microsoft.com/default.aspx?scid=kb%3Ben-us%3B819612

  • VORGEHENSWEISE: Behandeln von Problemen bei der Standortbereitstellung in Microsoft Content Management Server 2002 http://support.microsoft.com/default.aspx?scid=kb%3Ben-us%3B814774

  • PSVR2002: Fehlermeldung mit dem Hinweis, dass keine Informationen zur Anzeige in dieser Ansicht vorhanden sind, wenn Sie auf eine Projektansicht zugreifen http://support.microsoft.com/default.aspx?scid=kb%3Ben-us%3B810596

INTERNALS – INFORMATIONEN

PSEXEC TEIL DES DELOADER-WURMS

PsExec, ein Tool, mit dem Sie Prozesse auf Remotesystemen ausführen können, auf die Sie als Administrator Zugriff besitzen, hat seinen Weg in mehrere Würmer gefunden, vor allem in Deloader (http://www.f-secure.com/v-descs/deloader.shtml), der in diesem Frühjahr im Internet auftauchte. Ich habe eine Reihe von E-Mails von Benutzern erhalten, die mit Sysinternals nicht vertraut sind und mich beschuldigen, ihre Systeme hacken zu wollen, weil sie meinen Namen im Banner gesehen haben, das PsExec bei der Ausführung anzeigt.

Es ist bedauerlich, dass Menschen die Software von Sysinternals in böser Absicht verwenden, aber ich kann nicht viel dagegen unternehmen. Ein wichtiger Punkt ist, dass ein Benutzer keines der Tools verwenden kann, um ein Remotesystem zu beeinflussen, es sei denn, das Konto, unter dem es ausgeführt wird, verfügt über administrative Berechtigungen auf dem Remotesystem. Mit diesen Berechtigungen können sie auf dem Remotesystem jeden beliebigen Schaden anrichten, ohne irgendwelche Tools zu benutzen: rmdir /s \\remotesystem\admin$ löscht das SystemRoot-Verzeichnis eines Remotesystems.

Was die Remoteprozessausführung betrifft, so würden sie, wenn sie nicht PsExec verwenden würden, andere Tools einsetzen. Die Windows-Verwaltungsinstrumentation, die in Windows 2000 und höher integriert und als Zusatz zu NT 4 und Windows 9x verfügbar ist, verfügt über eine Schnittstelle zur Ausführung von Remoteprozessen, die eine Teilmenge der Funktionalität von PsExec bietet.

VERWENDEN VON PSTOOLS ZUM VERURSACHEN VON PROBLEMEN

Die meisten Tools, die Bryce und ich auf Sysinternals veröffentlichen, sind in erster Linie für Systemverwaltung und Problembehandlung vorgesehen. Eine bemerkenswerte Ausnahme ist der Bluescreen-Bildschirmschoner (http://www.sysinternals.com/ntw2k/freeware/bluescreensaver)) von Sysinternals, der einen authentisch aussehenden blauen Todesbildschirm und eine Neustartsequenz darstellt, die speziell auf die Version von Windows NT zugeschnitten ist, unter der Sie ihn ausführen (er kann sogar unter Windows 9x ausgeführt werden). Vielleicht haben Sie aber noch nicht bemerkt, dass einige der anderen Tools auf der Website genutzt werden können, um mit Ihren Kollegen im Büro Spaß zu haben.

Es gibt vor allem drei Tools, die das Quälen von Bürokollegen erleichtern: PsExec, PsKill und PsSuspend. Sie können damit Computer remote manipulieren, solange Ihr Konto administrativen Zugriff auf das Remotesystem besitzt oder Sie Zugriff auf ein Konto haben, das diesen Zugriff aufweist.

Mit PsExec können Sie Anwendungen auf einem Remotesystem starten. Eine einfache Möglichkeit, jemanden zu verblüffen, besteht daher darin, zufällige Programme auf seiner Konsole zu starten. Um Solitaire auf ihrem Computer auszuführen, würden Sie eine Zeile wie diese verwenden:

psexec \\remotesystem -i sol.exe

Der Switch -i lässt psExec den Prozess auf der Konsole starten, anstatt ihn auf dem Desktop für ausgeblendete Dienste zu starten. PsExec wird beendet, wenn der Benutzer den Solitaire-Prozess schließt. Wenn Sie mehrere Instanzen starten möchten, um den Benutzer zu verwirren, verwenden Sie den Switch -d, sodass PsExec beendet wird, ohne auf das Beenden der Prozesse zu warten.

Noch hinterhältiger ist es, den Bluescreen-Bildschirmschoner auf ihrem System zu starten, um sie glauben zu lassen, ihr System sei abgestürzt. Verwenden Sie dazu die folgende Befehlszeile:

psexec \\remotesystem -i -c "sysinternals bluescreen.scr" /s

Der Switch -c kopiert die angegebene Datei in das Remotesystem.

Wenn Sie noch mehr Probleme verursachen möchten, verwenden Sie PsKill, um Prozesse auf dem System von Kollegen zu beenden. Ein gutes Beispiel ist der Explorer, den jeder im Einsatz hat, der automatisch neu gestartet wird und der im normalen Betrieb (bei mir jedenfalls) gelegentlich abstürzt.

Und wenn Sie jemanden wirklich ärgern möchten, verwenden Sie PsSuspend, um zufällige Prozesse auf dem System für eine kurze Zeitspanne anzuhalten. Auch hier könnten sie denken, dass es sich um ein normales anormales Windows-Verhalten handelt, aber Sie werden es besser wissen!

Herunterladen von PsExec, PsKill und PsSuspend von
http://www.sysinternals.com/ntw2k/freeware/pstools.shtml

MICROSOFT DOKUMENTIERT NTQUERYSYSTEMINFORMATION (SOZUSAGEN)

Neulich habe ich die MSDN Library vom April 2003 durchstöbert und bin dabei auf eine Dokumentationsseite für NtQuerySystemInformation gestoßen. NtQuerySystemInformation ist Teil der „nativen“ API, die sich unter einem Großteil der Win32-API befindet und fast ausschließlich von Systemprozessen verwendet wird, die Teil des Betriebssystems sind (mehr über die native API erfahren Sie unter http://www.sysinternals.com/ntw2k/info/ntdll.shtml).). Einige Sysinternals-Tools nutzen die APIs, um Zugang zu Funktionen zu erhalten, die von Win32 nicht zur Verfügung gestellt werden, aber diese Funktionen beziehen sich nur auf den Erhalt von Prozess- und Threadinformationen.

Ich war daher überrascht, NtQuerySystemInformation zu finden, und mein erster Gedanke war, dass Microsoft beschlossen hatte, einige der nützlichen Funktionen, die von der API bereitgestellt werden, offenzulegen. Die Lektüre der Dokumentation hat mich vom Gegenteil überzeugt. Alle beschriebenen Einsatzmöglichkeiten der API werden von wohldefinierten Win32-APIs bereitgestellt, deren Verwendung in der Dokumentation dringend empfohlen wird, beginnend mit der Aussage am Anfang der Funktionsbeschreibung, die lautet „NtQuerySystemInformation ist eine interne Windows-Funktion, die verschiedene Arten von Systeminformationen abruft. Da sich diese Funktion in zukünftigen Versionen von Windows ändern kann, verwenden Sie die unten aufgeführten alternativen Funktionen.“

In der Tat sind einige der in der Dokumentation aufgeführten Verwendungsmöglichkeiten völlig nutzlos. In der Beschreibung der API-Variante SYSTEM_PERFORMANCE_INFORMATION heißt es beispielsweise, dass Sie eine Datenstruktur erhalten, die nicht auf die gleiche Weise wie Windows verwendet werden kann, sondern die als zufälliges Byte-Layout behandelt werden muss und eventuell als Zufallszahl verwendet werden kann. Dann heißt es weiter, dass Sie keine Zufallszahlen mit der API generieren sollten, sondern stattdessen die dokumentierte Win32-Funktion CryptGenRandom aufrufen sollten. Unterm Strich gibt es wirklich keinen Nutzen, der dokumentiert wird, der nicht von Win32 zuverlässiger und einfacher bereitgestellt wird.

Neugierig geworden, stellte ich fest, dass die Include-Datei, die die für die Verwendung der API erforderlichen Informationen enthält, „winternl.h“ im SDK ist. Eine Suche in der MSDN-Dokumentation nach dieser Datei zeigt das Gleiche: Dokumentation für eine Handvoll nativer APIs mit ebenso nutzlosen Anwendungen oder Funktionen, auf die der Zugriff besser über Win32 erfolgt. Die Headerdatei selbst verrät nichts, was nicht im SDK dokumentiert ist.

Wofür sind diese nutzlosen APIs in MSDN und dem SDK also gut? Ich vermute, dass dies Teil von Microsofts Compliance mit dem DOJ-Zustimmungsdekret ist, in dem Microsoft weitere der internen APIs „dokumentiert“, die von einigen der Anwendungen des Unternehmens verwendet werden. Die folgende Zeile aus der Dokumentation zu NtOpenFile deutet an, dass sie nur für rechtliche Zwecke zur Verfügung steht: „Die NtOpenFile-Dokumentation wird im Interesse einer vollständigen API-Abdeckung bereitgestellt“.

Aufgrund des Mangels an nützlichen Informationen und der Tatsache, dass ich mir ziemlich sicher bin, dass alle Microsoft-Anwendungen, die die SYSTEM_PERFORMANCE_INFORMATION-Klasse der NtQuerySystemInformation-API verwenden, nicht einfach nur eine Zufallszahl abrufen, frage ich mich, ob die Dokumentation der winternl.h-Funktionen wirklich mit der rechtlichen Richtlinie übereinstimmt, die zu ihrer Aufnahme in das SDK führte.

Wenn Sie an der vollständigen Dokumentation von NtQuerySystemInformation und den anderen nativen APIs interessiert sind, besorgen Sie sich ein Exemplar von „Inside Windows NT/2000 Native API Reference“ (http://www.amazon.com/exec/obidos/ASIN/1578701996/103-8560745-7945431 ).

INTERNALS-SCHULUNG

SOMMERVIDEO-SPECIAL

KAUFEN: Inside Windows 2000, ABRUFEN: XP/Server 2003-Update KOSTENLOS

Jetzt können Sie das ultimative Schulungspaket für Interna zu einem sehr günstigen Preis erwerben. Für eine begrenzte Zeit erhalten Sie beim Kauf des sehr beliebten Videos „INSIDE Windows 2000“ zum bereits reduzierten Internetpreis das XP/Server 2003-UPDATE absolut GRATIS. Das sind fast 35 % weniger als der Einzelhandelspreis.

Diese beiden hervorragenden Lernwerkzeuge werden von Microsoft weltweit für die Unternehmensschulung eingesetzt. Laut Rob Short, Vice President Core Technologies bei Microsoft, „dringen diese Videos in den Kern der Plattform ein, erfassen ihre technische Essenz und präsentieren sie in einem leistungsstarken interaktiven Videoformat“.

Sehen Sie sich die Produktdetails an, oder laden Sie ein Videobeispiel unter www.solsem.com herunter. Warten Sie nicht zu lange. Nutzen Sie jetzt dieses zeitlich begrenzte Angebot!

MICROSOFT TECHED EUROPE 2003

Dave Solomon (http://www.solsem.com)) und ich führten vor zwei Wochen auf der TechEd US in Dallas durch ein eintägiges Tutorial vor der Konferenz mit Lab-Übungen, die die Verwendung von Sysinternals-Tools beleuchteten, sowie eine 75-minütige Breakoutsitzung, die einen kleinen Teil desselben Materials behandelte. Beide Sitzungen wurden mit Bestnoten bewertet. Wenn Sie in Europa leben, könnte es Sie interessieren, dass wir nächste Woche auf der TechEd Europe noch mehr bieten.

TechEd Europe findet vom 30. Juni bis 4. Juli in Barcelona statt. Dave und ich sind wieder als „Top-Referenten“ (http://www.microsoft.com/europe/teched/Speakers.asp)) aufgeführt und führen gemeinsam durch ein eintägiges Tutorial vor der Konferenz (http://www.microsoft.com/europe/teched/PreConfWinInt.asp)) zur die Behandlung von Windows-Prozess-, Arbeitsspeicher- und Absturzproblemen (ohne Übungen) sowie durch vier weitere Sitzungen, darunter: „A Tour of Sysinternals Tools“, „Troubleshooting with Sysinternals Tools“, „Windows Crash Dump Analysis“ und „Windows XP and Server 2003 Kernel Changes“ („Sysinternals-Tools im Überblick“, „Problembehandlung mit Sysinternals-Tools“, „Analyse von Windows-Absturzabbildern“ und „Kernel-Änderungen bei Windows XP und Server 2003“).

Vollständige Beschreibungen und Registrierungsinformationen finden Sie unter
http://www.microsoft.com/europe/teched/home.asp
Wir freuen uns auf Sie in Spanien!

NÄCHSTR ÖFFENTLICHER KURS ZU WINDOWS-INTERNA UND PROBLEMBEHANDLUNG FÜR FORTGESCHRITTENE

Unser nächster 3-tägiger öffentlicher Windows-Kurs „Internals Advanced Troubleshooting“ (Interna und Problembehandlung für Fortgeschrittene) ist für September in New York City geplant (und wenn Sie nicht so lange warten möchten, sind Last-Minute-Anmeldungen für unseren Londoner Kurs, der diese Woche am 25. Juni beginnt, noch möglich). Die Termine und Einzelheiten zur Anmeldung finden Sie unter www.sysinternals.com.


Vielen Dank, dass Sie den Sysinternals-Newsletter gelesen haben.

Veröffentlicht: Montag, 23. Juni 2003, 16:46 Uhr von ottoh

[Newsletter-Archiv ^] [< Band 5, Nummer 1] [Band 6, Nummer 1 >]