Sie sind zurzeit offline. Es wird auf die erneute Herstellung einer Internetverbindung gewartet.

Verwenden von alternativen NTFS-Datenströmen

Dieser Artikel ist eine Übersetzung des folgenden englischsprachigen Artikels der Microsoft Knowledge Base:
105763 How To Use NTFS Alternate Data Streams
Zusammenfassung
In der Dokumentation für das NTFS-Dateisystem wird erklärt, dass NTFS mehrere Datenströme unterstützt, die Syntax für die Datenströme selbst wird jedoch in der Dokumentation nicht angesprochen.

Im Windows NT Resource Kit wird die Syntax für Datenströme wie folgt dokumentiert:
filename:stream (Dateiname:Datenstrom)
Alternative Datenströme sind ein alleiniges Feature des NTFS-Dateisystems und werden möglicherweise in zukünftigen Dateisystemen nicht unterstützt. NTFS wird jedoch in zukünftigen Versionen von Windows NT unterstützt.

Zukünftige Dateisysteme werden ein Modell unterstützen, dass auf dem OLE 2.0-Strukturspeicher (IStream und IStorage) basiert. Durch Verwendung von OLE 2.0 kann eine Anwendung mehrere Datenströme auf einem beliebigen Dateisystem und auf allen unterstützten Betriebssystemen (Windows, Macintosh, Windows NT und Win32s), nicht nur auf Windows NT, unterstützen.
Weitere Informationen
Der folgende Beispielcode demonstriert NTFS-Datenströme:

Beispielcode

   #include <windows.h>   #include <stdio.h>   void main( )   {      HANDLE hFile, hStream;      DWORD dwRet;      hFile = CreateFile( "testfile",                       GENERIC_WRITE,                    FILE_SHARE_WRITE,                                NULL,                         OPEN_ALWAYS,                                   0,                                NULL );      if( hFile == INVALID_HANDLE_VALUE )         printf( "Cannot open testfile\n" );      else          WriteFile( hFile, "This is testfile", 16, &dwRet, NULL );      hStream = CreateFile( "testfile:stream",                                GENERIC_WRITE,                             FILE_SHARE_WRITE,                                         NULL,                                  OPEN_ALWAYS,                                            0,                                         NULL );      if( hStream == INVALID_HANDLE_VALUE )         printf( "Cannot open testfile:stream\n" );      else         WriteFile(hStream, "This is testfile:stream", 23, &dwRet, NULL);   }				
Die in einer Verzeichnisliste erhaltene Dateigröße ist 16, weil nur "testfile" zu sehen ist. Daher erzeugt
type testfile
folgende Ausgabe:
   This is testfile				
Dagegen erzeugt
type testfile:stream
folgende Ausgabe:
   The filename syntax is incorrect				
Verwenden Sie
more < testfile:stream
-oder-
mep testfile:stream
zum Anzeigen des Inhalts von "testfile:stream", wobei "mep" der im Platform SDK verfügbare Microsoft Editor ist.
Bitte beachten Sie: Bei diesem Artikel handelt es sich um eine Übersetzung aus dem Englischen. Es ist möglich, dass nachträgliche Änderungen bzw. Ergänzungen im englischen Originalartikel in dieser Übersetzung nicht berücksichtigt sind. Die in diesem Artikel enthaltenen Informationen basieren auf der/den englischsprachigen Produktversion(en). Die Richtigkeit dieser Informationen in Zusammenhang mit anderssprachigen Produktversionen wurde im Rahmen dieser Übersetzung nicht getestet. Microsoft stellt diese Informationen ohne Gewähr für Richtigkeit bzw. Funktionalität zur Verfügung und übernimmt auch keine Gewährleistung bezüglich der Vollständigkeit oder Richtigkeit der Übersetzung.
Eigenschaften

Artikelnummer: 105763 – Letzte Überarbeitung: 06/16/2006 10:01:00 – Revision: 4.2

Microsoft Win32 Application Programming Interface

  • kbhowto kbapi kbkernbase kbfileio KB105763
Feedback
varAutoFirePV = 1; var varClickTracking = 1; var varCustomerTracking = 1; var Route = "76500"; var Ctrl = ""; document.write(" d=1&t=">
>://c1.microsoft.com/c.gif?DI=4050&did=1&t=">1&t=">ent.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?"> mp;t=">protocol) + "//c.microsoft.com/ms.js'><\/script>");