2012-11-08 19 views
5

Sie haben einen neuen API-Aufruf in Windows 8 CreateFile2   hinzugefügt, die, soweit ich sagen kann, genau das gleiche wie die bestehende CreateFile Funktion nur verpackt es seine Parameter etwas anders.Was ist der Zweck des Win32 CreateFile2 API-Aufrufs?

Was wurde hinzugefügt, um dies notwendig zu machen, da ich nichts in der Dokumentation sehen kann.

+3

'CreateFile2' kann von Store/Metro-App verwendet werden, während' CreateFile' nur für Desktop-Anwendungen ist, so vermutlich gibt es einige zusätzliche Sicherheits-Audit in der ehemaligen –

+1

Nun dachte ich, aber dann ich dachte, dass sie dafür keine neue Funktion brauchen würden, sie könnte nur einen Fehler für Dinge zurückgeben, die nicht erlaubt waren, wenn sie auf winrt ausgeführt wurden. – jcoder

+0

@ J99 "Need" ist nicht wirklich was hier zählt. Vielleicht hätten sie es auf deine Art tun können. Aber vielleicht war es einfacher und sauberer, es mit einer neuen Funktion zu machen. –

Antwort

2

Aufgrund der Multiplexen der Schöpfung Flags Datei, Datei-Attribut-Flags und Sicherheit QoS-Flags in ein einziges DWORD (DwFlagsAndAttributes) Parameter für Create, gibt es keine Möglichkeit, noch mehr Fahnen zu Createfile hinzuzufügen. Zusätzliche Flags für die Erstellungsoperation müssen nur zu CreateFile2 hinzugefügt werden. Zum Beispiel FILE_FLAG_OPEN_REQUIRING_OPLOCK Flag. Diese Flagge ist dokumentiert FltCreateFile - kernel mode

Verwandte Themen