NdisOpenFile 関数 (ndis.h)
NdisOpenFile 関数は、開かれたファイルのハンドルを返します。
構文
void NdisOpenFile(
[out] PNDIS_STATUS Status,
[out] PNDIS_HANDLE FileHandle,
[out] PUINT FileLength,
[in] PNDIS_STRING FileName,
[in] NDIS_PHYSICAL_ADDRESS HighestAcceptableAddress
);
パラメーター
[out] Status
呼び出し元が指定した変数へのポインター。この関数は、開いているファイル操作の状態を返します。これは、次のいずれかになります。
NDIS_STATUS_SUCCESS
FileHandle のハンドルは、NdisMapFile の後続の呼び出しに対して有効です。
NDIS_STATUS_FILE_NOT_FOUND
FileName の指定された文字列に、システム オブジェクト名前空間で見つかった名前が指定されていませんでした。
NDIS_STATUS_RESOURCES
NDIS は、ファイルを開き、ファイルの内容のバッファーを割り当てるために必要なリソースを割り当てませんでした。
NDIS_STATUS_ERROR_READING_FILE
指定されたファイルのデータを、呼び出し元による後続のアクセスのためにシステム メモリに読み込めませんでした。
[out] FileHandle
呼び出しが成功した場合に、この関数が開かれたファイルのハンドルを返す、呼び出し元が指定した変数へのポインター。
[out] FileLength
呼び出し元が指定した変数へのポインター。この関数は、呼び出しが成功した場合に、開かれたファイル内のデータのバイト数を書き込みます。
[in] FileName
初期化されたカウントされた文字列を含むNDIS_STRING型へのポインター。システムの既定の文字セット内で、開くファイルに名前を付けます。 Windows 2000 以降のドライバーの場合、この文字列には Unicode 文字が含まれます。 つまり、Windows 2000 以降の場合、NDIS はNDIS_STRING型を UNICODE_STRING 型として定義します。
[in] HighestAcceptableAddress
ファイル データを格納できる最大の物理アドレス。ドライバーが制限を設けなかった場合は -1 を指定します。
戻り値
なし
解説
NdisOpenFile はディスク ファイルを開きます。通常、ドライバーは後でインテリジェント NIC をプログラムするためにダウンロードするファイルです。 NdisOpenFile は、 NdisMapFile 関数に対するドライバーの後続の呼び出しのファイルの内容を保持する記憶域も割り当てます。
ミニポート ドライバーは、ミニポートInitializeEx 関数からのみ NdisOpenFile を呼び出す必要があります。
NdisOpenFile が返されると、ミニポート ドライバーは NdisMapFile を呼び出すことによってファイル データにアクセスできます。 NdisUnmapFile 関数を呼び出してファイルをページングし、ドライバーがファイル データにアクセスしていない間にリソースを不必要に消費しないようにすることができます。 ファイルの使用が完了したら、 MiniportInitializeEx は を呼び出す必要があります。
NdisCloseFile 関数。
注意
NDISOpenFile、 NdisCloseFile、 NdisMapFile 、 NdisUnmapFile は ARM64 ではサポートされていません。 ARM64 では、これらの関数を ZwCreateFile、 ZwReadFile、またはその他の同様の操作の呼び出しに置き換えます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista の NDIS 6.0 および NDIS 5.1 ドライバー (「NdisOpenFile (NDIS 5.1)」を参照) でサポートされています。 Windows XP の NDIS 5.1 ドライバー (NdisOpenFile (NDIS 5.1) を参照) でサポートされています。 |
対象プラットフォーム | ユニバーサル |
Header | ndis.h (Ndis.h を含む) |
Library | Ndis.lib |
IRQL | PASSIVE_LEVEL |
DDI コンプライアンス規則 | Irql_Miscellaneous_Function(ndis) |