次の方法で共有


ZwDeleteFile 関数 (ntifs.h)

ZwDeleteFile ルーチンは、指定したファイルを削除します。

構文

NTSYSAPI NTSTATUS ZwDeleteFile(
  [in] POBJECT_ATTRIBUTES ObjectAttributes
);

パラメーター

[in] ObjectAttributes

ファイル オブジェクトに使用する呼び出し元によって提供される属性を含む OBJECT_ATTRIBUTES 構造体へのポインター。 これらの属性には、たとえば、ObjectNameSECURITY_DESCRIPTORが含まれます。 このパラメーターは、InitializeObjectAttributes マクロを呼び出すことによって初期化されます。

戻り値

ZwDeleteFile は、操作の最終的な完了状態を表すSTATUS_SUCCESSまたは適切なエラー状態を返します。 考えられるエラー状態コードは次のとおりです。

リターン コード 形容
STATUS_INSUFFICIENT_RESOURCES この関数に必要な一時バッファーを割り当てませんでした。
STATUS_INVALID_PARAMETER 指定した ObjectAttributes パラメーターが NULL ポインターであり、OBJECT_ATTRIBUTES 構造体への有効なポインターではなかったか、指定された ObjectAttributes 構造体メンバーの一部が無効でした。
STATUS_OBJECT_NAME_INVALID ObjectAttributes パラメーターには、OBJECT_NAME_PATH_SEPARATOR文字の後に空の文字列が見つかったため、無効だった OBJECT_ATTRIBUTES 構造体に ObjectName が含まれていました。
STATUS_OBJECT_NAME_NOT_FOUND ObjectAttributes パラメーターには、見つからなかった OBJECT_ATTRIBUTES 構造体に ObjectName メンバーが含まれていました。
STATUS_OBJECT_PATH_NOT_FOUND ObjectAttributes パラメーターには、見つからなかったオブジェクト パスを持つ OBJECT_ATTRIBUTES 構造体に、ObjectName メンバーが含まれていました。
STATUS_OBJECT_PATH_SYNTAX_BAD ObjectAttributes パラメーターには、RootDirectory メンバーが含まれていませんでしたが、OBJECT_ATTRIBUTES 構造体の ObjectName メンバーが空の文字列であるか、OBJECT_NAME_PATH_SEPARATOR文字が含まれていませんでした。 これは、オブジェクト パスの構文が正しく示されていません。

備考

ZwDeleteFile 指定したファイル オブジェクトを削除します。

ZwDeleteFile 関数は、InitializeAttributes マクロを使用して、削除するファイル オブジェクトの OBJECT_ATTRIBUTES 構造に属性を設定した後に呼び出されます。

ZwDeleteFileを使用して削除するファイルの名前 指定するには、次の 2 つの方法があります。

  • 完全修飾パス名として、入力 ObjectAttributesObjectName メンバーで指定されます。
  • 入力 ObjectAttributesRootDirectory メンバー内のハンドルによって表されるディレクトリ ファイルを基準とした相対パス名として

ZwDeleteFile の呼び出し元は、IRQL = PASSIVE_LEVEL で実行され、特殊なカーネル API が有効になっている 必要があります。

ZwDeleteFile 関数の呼び出しがユーザー モードで発生する場合は、"ZwDeleteFile" ではなく"NtDeleteFile" という名前使用する必要があります。

カーネル モード ドライバーからの呼び出しの場合、Windows ネイティブ システム サービス ルーチンの NtXxx および ZwXxx バージョンは、入力パラメーターを処理および解釈する方法で動作が異なる場合があります。 ルーチンの NtXxxZwXxx バージョンの間の関係の詳細については、「ネイティブ システム サービス ルーチンの Nt および Zw バージョンの使用 を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows XP
ターゲット プラットフォーム の 万国
ヘッダー ntifs.h (Ntifs.h を含む)
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL (「解説」セクションを参照)
DDI コンプライアンス規則 を する HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)

関連項目

InitializeObjectAttributes の

OBJECT_ATTRIBUTES