Wie Sie feststellen, ob ein Laufwerk ein RAM-Laufwerk ist

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 113418 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Dieser Artikel wurde archiviert. Er wird im vorliegenden Zustand bereitgestellt und nicht mehr aktualisiert.
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Es gibt keine c-Funktionen oder C-Laufzeitfunktionen bestimmen, ob ein Laufwerk ein RAM-Laufwerk ist. Die GetDriveType()-API kann von Win32-Anwendungen zum Abrufen des Typ der ein bestimmtes Laufwerk aus das Betriebssystem aufgerufen werden. Weitere Informationen kann über GetDriveType() in der Win32 SDK-Referenz der Visual C++ 32-Bit Edition-Onlinedokumentation gefunden werden.

Für MS-DOS oder Win16-Anwendungen ist es zwar keine definitiven Methoden verfügbar, mehrere Möglichkeiten ermitteln, ob ein bestimmtes Laufwerk "wahrscheinlich" eines RAM-Laufwerks ist vorhanden. Der Rest des in diesem Artikel besprechen kurz jede der vier Methoden um ein RAM-Laufwerk zu überprüfen. Beachten Sie, dass für alle Methoden jedes Laufwerk des Host Systems überprüft werden muss.

Weitere Informationen

Methode 1

Überprüfen Sie die Datenträgerbezeichnung. Diese Methode ist wahrscheinlich die gängigere. Microsoft-RAMDRIVE.SYS verwendet eine Datenträgerbezeichnung "MS-RAMDRIVE". Allerdings dies nicht unbedingt gegen die Datenträgerbezeichnung und werden wahrscheinlich nicht die Volumebezeichnung auf RAM-Laufwerke von anderen Unternehmen. Ein Benutzer kann auch dies ändern mithilfe des Befehls Beschriftung.

Methode 2

Rufen Sie Interrupt 21 h Funktion 44 h Subfunction 0Dh ist eine generische e/A-Steuerelement-Funktion für Blockgeräte auf. Die meisten Geräte unterstützen diese Funktion. Allerdings wird RAMDRIVE.SYS derzeit nicht unterstützt. Dieser Mangel an Unterstützung kann zur Identifizierung eines RAM-Laufwerks verwendet werden. Laden das CX-Register mit 0860h zu Laufwerk Gerät Parameter; Wenn die Funktion fehlschlägt, verlässt das Carry Flag festgelegt das Laufwerk wahrscheinlich ein RAM-Laufwerk.

Methode 3

Wie viele FAT-Tabellen das Laufwerk hat überprüfen; wenn ihm nur 1, wahrscheinlich ein RAM-Laufwerk. Da RAMDRIVE.SYS der IOCTL-Aufruf nicht unterstützt Funktionen, die einzige Möglichkeit um die Anzahl der FAT-Tabellen zu ermitteln, besteht mit INT 25, absolute Datenträger lesen. Notieren Sie sich die Warnungen, die diese Funktion wurde ersetzt und nicht unter Windows unterstützt wird. Weitere Informationen und ein Beispiel zeigt, wie INT 25 verwenden finden Sie im folgenden Artikel der Microsoft Knowledge Base:
102870Lesen der Bootsektor des Laufwerks

Methode 4

Schließlich subfunction Aufruf Interrupt 21 h 44 h Funktion 09 h prüfen, ob das Laufwerk remote ist. Der Rückgabewert in DX ist 0x0800, 11 festgelegt dass nur bit, des Laufwerks wahrscheinlich ein RAM-Laufwerk. Dies ist ein RAM-Laufwerk werden bekannt, nach Abzug. Da Bits 6 und 7 deaktivieren, wird bezeichnet, dass dieses Gerät keine IOCTL-Funktionen wie die meisten Geräte akzeptiert. Da Bit 12 deaktiviert ist, ist dies nicht, ein Netzlaufwerk usw..

Da keine der oben genannten Methoden garantiert ist, empfiehlt es sich, eine Kombination dieser Methoden zu verwenden. Beseitigen Sie zuerst die offensichtlich, z. B. Netzlaufwerken, lokalen Festplatten, CD-ROM-Laufwerke und usw.. Dann versuchen Sie festzustellen, ob das angegebene Laufwerk ein RAM-Laufwerk ist.

Eigenschaften

Artikel-ID: 113418 - Geändert am: Samstag, 1. März 2014 - Version: 4.1
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Visual C++ 1.0 Professional Edition
  • Microsoft Visual C++ 1.5 Professional Edition
  • Microsoft Visual C++ 2.0 Professional Edition
  • Microsoft Visual C++ 2.1
  • Microsoft Visual C++ 4.0 Standard Edition
  • Microsoft Visual C++ 5.0 Enterprise Edition
  • Microsoft Visual C++ 6.0 Enterprise Edition
  • Microsoft Visual C++ 5.0 Professional Edition
  • Microsoft Visual C++ 6.0 Professional Edition
  • Microsoft Visual C++, 32-bit Learning Edition 6.0
  • Microsoft Visual C++ .NET 2002 Standard Edition
  • Microsoft Visual C++ .NET 2003 Standard Edition
Keywords: 
kbnosurvey kbarchive kbmt kbhowtomaster kblangc KB113418 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 113418
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com