ファイル管理機能

ファイルの管理には、次の関数を使用します。

このセクションでは、次の操作を行います。

機能 形容
AddUsersToEncryptedFileの 指定した暗号化ファイルにユーザー キーを追加します。
AreFileApisANSIの ファイル I/O 関数が ANSI 文字セット コード ページと OEM 文字セット コード ページのどちらを使用しているかを判断します。
CancelIoをする 指定したファイルの呼び出し元スレッドによって発行されたすべての保留中の入力および出力 (I/O) 操作を取り消します。
CancelIoExの 指定したファイル ハンドルの未処理の I/O 操作をマークします。 この関数は、I/O 操作を作成したスレッドに関係なく、現在のプロセスの I/O 操作のみを取り消します。
CancelSynchronousIoの 指定したスレッドによって発行された保留中の同期 I/O 操作を取り消し済みとしてマークします。
CheckNameLegalDOS8Dot3 指定した名前を使用して FAT ファイル システム上にファイルを作成できるかどうかを判断します。
CloseEncryptedFileRawをする バックアップまたは復元操作の後に暗号化されたファイルを閉じ、関連するシステム リソースを解放します。
CopyFileの 既存のファイルを新しいファイルにコピーします。
CopyFile2の 既存のファイルを新しいファイルにコピーし、コールバック関数を介してその進行状況をアプリケーションに通知します。
PCOPYFILE2_PROGRESS_ROUTINE CopyFile2 関数で使用されるアプリケーション定義のコールバック関数。
CopyFileExをする 既存のファイルを新しいファイルにコピーし、コールバック関数を介してその進行状況をアプリケーションに通知します。
CopyFileTransactedの トランザクション操作として既存のファイルを新しいファイルにコピーし、コールバック関数を介してその進行状況をアプリケーションに通知します。
CopyProgressRoutine CopyFileEx、MoveFileTransacted、および MoveFileWithProgress関数使用されるアプリケーション定義のコールバック関数。
CreateFileの ファイルまたは I/O デバイスを作成または開きます。 最も一般的に使用される I/O デバイスは、ファイル、ファイル ストリーム、ディレクトリ、物理ディスク、ボリューム、コンソール バッファー、テープ ドライブ、通信リソース、mailslot、パイプです。
CreateFile2の ファイルを作成または開きます。
CreateFile3 ファイルを作成または開きます。
CreateFileTransactedの トランザクション操作としてファイル、ファイル ストリーム、またはディレクトリを作成または開きます。
CreateHardLinkの 既存のファイルと新しいファイルの間にハード リンクを確立します。
CreateHardLinkTransactedの トランザクション操作として、既存のファイルと新しいファイルの間にハード リンクを確立します。
CreateIoCompletionPortの 入力/出力 (I/O) 完了ポートを作成し、指定されたファイル ハンドルに関連付けるか、ファイル ハンドルにまだ関連付けられていない I/O 完了ポートを作成して、後で関連付けを許可します。
CreateSymbolicLinkの シンボリック リンクを作成します。
CreateSymbolicLinkTransactedの シンボリック リンクをトランザクション操作として作成します。
DecryptFileの 暗号化されたファイルまたはディレクトリの暗号化を解除します。
DeleteFileの 既存のファイルを削除します。
DeleteFile2 既存のファイルを削除します。
DeleteFileTransactedの トランザクション操作として既存のファイルを削除します。
DuplicateEncryptionInfoFileの ファイルまたはディレクトリ間で EFS メタデータをコピーします。
EncryptFile ファイルまたはディレクトリを暗号化します。
EncryptionDisable 指定したディレクトリとその中のファイルの暗号化を無効または有効にします。
ExportCallback ReadEncryptedFileRawで使用されるアプリケーション定義のコールバック関数。
FileEncryptionStatusの 指定したファイルの暗号化状態を取得します。
FileIOCompletionRoutineの ReadFileEx および WriteFileEx関数使用されるアプリケーション定義のコールバック関数。 非同期の入出力 (I/O) 操作が完了または取り消され、呼び出し元のスレッドが警告可能な状態になると呼び出されます。
FindClose FindFirstFileEx、 FindFirstFileEx、 FindFirstFileNameW、 FindFirstFile によって開かれたファイル検索ハンドルを閉じます。NameTransactedW、FindFirstFileTransacted、FindFirstStreamTransactedW、または FindFirstStreamW関数をします。
FindFirstFileの 特定の名前 (またはワイルドカードが使用されている場合は部分名) と一致する名前を持つファイルまたはサブディレクトリのディレクトリを検索します。
FindFirstFileExの 指定されたファイルまたはサブディレクトリに一致する名前と属性を持つディレクトリを検索します。
FindFirstFileNameTransactedWの トランザクション操作として、指定したファイルへのすべてのハード リンクの列挙体を作成します。 この関数は、FindNextFileNameW 関数の後続の呼び出しで使用できる列挙型のハンドルを返します。
FindFirstFileNameW 指定したファイルへのすべてのハード リンクの列挙体を作成します。 FindFirstFileNameW 関数は、FindNextFileNameW 関数への後続の呼び出しで使用できる列挙型へのハンドルを返します。
FindFirstFileTransactedの トランザクション操作として特定の名前と一致する名前を持つファイルまたはサブディレクトリのディレクトリを検索します。
FindFirstStreamTransactedWの 指定したファイルまたはディレクトリ内の最初のストリームをトランザクション操作として列挙します。
FindFirstStreamWの 指定したファイルまたはディレクトリ内の ::$DATA ストリーム型を持つ最初のストリームを列挙します。
FindNextFileの FindFirstFile、FindFirstFileEx、または FindFirstFileTransacted関数のに対する以前の呼び出しからファイル検索を続行します。
FindNextFileNameWの FindFirstFileNameW 関数の正常な呼び出しによって返されたハンドルを使用して、ファイルへのハード リンクの列挙を続行します。
FindNextStreamWの FindFirstStreamW 関数の前回の呼び出しによって開始されたストリーム検索を続行します。
FlushFileBuffersの 指定したファイルのバッファーをフラッシュし、バッファー内のすべてのデータをファイルに書き込みます。
FreeEncryptionCertificateHashListの 証明書ハッシュ リストを解放します。
GetBinaryTypeの ファイルが実行可能 (.exe) ファイルであるかどうかを判断し、その場合は実行可能ファイルを実行するサブシステムを決定します。
GetCompressedFileSizeの 指定したファイルを格納するために使用されるディスク ストレージの実際のバイト数を取得します。
GetCompressedFileSizeTransactedの 指定したファイルをトランザクション操作として格納するために使用されるディスク ストレージの実際のバイト数を取得します。
GetExpandedNameをする ファイルが Lempel-Ziv アルゴリズムによって圧縮された場合に、圧縮されたファイルの元の名前を取得します。
GetFileAttributesをする 指定したファイルまたはディレクトリのファイル システム属性を取得します。
GetFileAttributesExの 指定したファイルまたはディレクトリの属性を取得します。
GetFileAttributesTransactedの 指定したファイルまたはディレクトリのファイル システム属性をトランザクション操作として取得します。
GetFileBandwidthReservationの 指定したファイルが存在するボリュームの帯域幅予約プロパティを取得します。
GetFileInformationByHandleの 指定したファイルのファイル情報を取得します。
GetFileInformationByHandleExの 指定したファイルのファイル情報を取得します。
GetFileSize 指定したファイルのサイズをバイト単位で取得します。
GetFileSizeExの 指定したファイルのサイズを取得します。
GetFileTypeをする 指定したファイルのファイルの種類を取得します。
GetFinalPathNameByHandleをする 指定したファイルの最終的なパスを取得します。
GetFullPathNameをする 指定したファイルの完全なパスとファイル名を取得します。
GetFullPathNameTransactedの トランザクション操作として、指定したファイルの完全なパスとファイル名を取得します。
GetLongPathNameをする 指定したパスを長い形式に変換します。
GetLongPathNameTransactedの 指定したパスを、トランザクション操作として長い形式に変換します。
GetQueuedCompletionStatusをする 指定した I/O 完了ポートから I/O 完了パケットのデキューを試みます。
GetQueuedCompletionStatusExの 複数の完了ポート エントリを同時に取得します。
GetShortPathNameをする 指定したパスの短いパス形式を取得します。
GetTempFileNameをする 一時ファイルの名前を作成します。 一意のファイル名が生成されると、空のファイルが作成され、それに対するハンドルが解放されます。それ以外の場合は、ファイル名のみが生成されます。
GetTempPathをする 一時ファイル用に指定されたディレクトリのパスを取得します。
ImportCallback WriteEncryptedFileRaw使用されるアプリケーション定義コールバック関数。 システムは、ImportCallback 1 回以上呼び出して、バックアップ ファイルのデータの一部を取得します。
LockFileの 呼び出し元プロセスによる排他アクセスのために、指定されたファイルをロックします。
LockFileExの 呼び出し元プロセスによる排他アクセスのために、指定されたファイルをロックします。 この関数は、同期的または非同期的に動作でき、排他ロックまたは共有ロックを要求できます。
LZClose LZOpenFile 関数を使用して開かれたファイルを閉じます。
LZCopy コピー元ファイルをコピー先ファイルにコピーします。
LZInit ファイルの展開に必要な内部データ構造にメモリを割り当て、作成して初期化します。
LZOpenFile 指定したファイルを作成、開く、再度開く、または削除します。
LZRead 指定したバイト数をファイルから (最大で) 読み取り、バッファーにコピーします。
LZSeek 指定したバイト数のファイル ポインターを開始位置から移動します。
MoveFileの 既存のファイルまたはその子を含むディレクトリを移動します。
MoveFileExの さまざまな移動オプションを使用して、既存のファイルまたはディレクトリ (子を含む) を移動します。
MoveFileTransactedの 既存のファイルまたはディレクトリ (子を含む) をトランザクション操作として移動します。
MoveFileWithProgressの 子を含むファイルまたはディレクトリを移動します。 進行状況通知を受け取るコールバック関数を指定できます。
OpenEncryptedFileRaw ファイルをバックアップ (エクスポート) または復元 (インポート) するために、暗号化されたファイルを開きます。
OpenFile ファイルを作成、開く、再度開く、または削除します。
OpenFileById 指定した識別子と一致するファイルを開きます。
PostQueuedCompletionStatusをする I/O 完了パケットを I/O 完了ポートにポストします。
QueryRecoveryAgentsOnEncryptedFile 指定したファイルの回復エージェントの一覧を取得します。
QueryUsersOnEncryptedFileの 指定したファイルのユーザーの一覧を取得します。
ReadEncryptedFileRawの 暗号化されたファイルをバックアップ (エクスポート) します。
ReadFile 指定したファイルまたは入出力 (I/O) デバイスからデータを読み取ります。 デバイスでサポートされている場合、読み取りはファイル ポインターで指定された位置で行われます。
ReadFileExの 指定したファイルまたは入出力 (I/O) デバイスからデータを読み取ります。 読み取りが完了または取り消され、呼び出し元のスレッドが警告可能な待機状態のときに、指定された完了ルーチンを呼び出して、完了状態を非同期に報告します。
ReadFileScatter ファイルからデータを読み取り、バッファーの配列に格納します。
RemoveUsersFromEncryptedFileの 指定したファイルから指定した証明書ハッシュを削除します。
ReOpenFile 異なるアクセス権、共有モード、およびフラグを使用して、指定されたファイル システム オブジェクトを再度開きます。
ReplaceFileの 1 つのファイルを別のファイルに置き換え、元のファイルのバックアップ コピーを作成するオプションで置き換えます。
SearchPath 指定したパス内の指定したファイルを検索します。
SetEndOfFileの 指定したファイルの物理ファイル サイズを、ファイル ポインターの現在位置に設定します。
SetFileApisToANSIの ファイル I/O 関数で、現在のプロセスに ANSI 文字セット コード ページを使用させます。
SetFileApisToOEMの プロセスのファイル I/O 関数が OEM 文字セットコード ページを使用するようにします。
SetFileAttributesの ファイルまたはディレクトリの属性を設定します。
SetFileAttributesTransactedの ファイルまたはディレクトリの属性をトランザクション操作として設定します。
SetFileBandwidthReservationの 指定したファイル ストリームの帯域幅を予約することを要求します。 予約は、指定されたファイル ハンドルの I/O 要求のミリ秒単位のバイト数として指定されます。
SetFileCompletionNotificationModesの ファイル ハンドルの通知モードを設定します。これにより、指定したファイルに対する完了通知の動作を指定できます。
SetFileInformationByHandleの 指定したファイルのファイル情報を設定します。
SetFileIoOverlappedRangeの 指定したファイル ハンドルに仮想アドレス範囲を関連付けます。
SetFilePointerの 指定したファイルのファイル ポインターを移動します。
SetFilePointerExの 指定したファイルのファイル ポインターを移動します。
SetFileShortNameの 指定したファイルの短い名前を設定します。
SetFileValidDataの 指定したファイルの有効なデータ長を設定します。 この関数は、非常に限られたシナリオで役立ちます。 詳細については、「解説」セクションを参照してください。
SetSearchPathModeの SearchPath 関数がファイルを検索するときに使用するプロセスごとのモードを設定します。
SetUserFileEncryptionKeyの ユーザーの現在のキーを指定した証明書に設定します。
UnlockFile 開いているファイル内のリージョンのロックを解除します。
UnlockFileExの 指定したファイル内のリージョンのロックを解除します。 この関数は、同期的または非同期的に動作できます。
WofEnumEntries 指定したボリュームの指定したプロバイダーからのすべてのデータ ソースを列挙します。
WofEnumEntryProc WofEnumEntriesへの呼び出しに応答して各データ ソースに対して呼び出されるコールバック関数。
WofEnumFilesProcの WIM ファイルなどの外部データ ソースによってサポートされる各ファイルに対して呼び出されるコールバック関数。
WofFileEnumFiles 指定したボリューム上の指定した圧縮アルゴリズムで圧縮されているすべてのファイルを列挙します。
WofGetDriverVersionをする 特定のプロバイダーをサポートするために使用されるドライバーのバージョンを照会するために使用されます。
WofIsExternalFileの ファイルが物理ファイルによってバックアップされているか、システム データ プロバイダーによってサポートされているかを判断するために使用され、必要に応じて、ファイルに関するプロバイダーまたは追加のデータを示します。
WofSetFileDataLocationの 物理ファイルによってサポートされるファイルから、システム データ プロバイダーによってサポートされるファイルに変更するために使用されます。
WofShouldCompressBinaries 特定のボリュームで圧縮を使用するかどうかを示し、使用する場合は、どの圧縮アルゴリズムを使用するかを示します。
WofWimAddEntry WIM 内に格納されているボリュームにファイルを作成できるように、単一の WIM データ ソースをボリュームに追加します。
WofWimEnumFiles 指定したボリューム上の指定した WIM データ ソースによってバックアップされているすべてのファイルを列挙します。
WofWimRemoveEntry ボリューム上のバッキング ファイルから 1 つの WIM データ ソースを削除します。
WofWimSuspendEntry ボリュームが再マウントされるか、データ ソースが wofWimUpdateEntryで更新されるまで、ボリューム上のバッキング ファイルから WIM データ ソース一時的に削除します。
WofWimUpdateEntry 別の WIM ファイルの場所を指す WIM エントリを更新します。
Wow64DisableWow64FsRedirection 呼び出し元スレッドのファイル システム リダイレクトを無効にします。 ファイル システムのリダイレクトは、既定で有効になっています。
Wow64EnableWow64FsRedirection 呼び出し元スレッドのファイル システム リダイレクトを有効または無効にします。
Wow64RevertWow64FsRedirection 呼び出し元スレッドのファイル システム リダイレクトを復元します。
WriteEncryptedFileRawの 暗号化されたファイルを復元 (インポート) します。
WriteFileの 指定したファイルまたは入出力 (I/O) デバイスにデータを書き込みます。
WriteFileExの 指定したファイルまたは入出力 (I/O) デバイスにデータを書き込みます。 完了状態は非同期的に報告され、書き込みが完了または取り消されたときに指定された完了ルーチンが呼び出され、呼び出し元のスレッドが警告可能な待機状態になります。
WriteFileGatherの バッファーの配列からデータを取得し、データをファイルに書き込みます。

ファイル I/O では、次の関数が使用されます。

CancelIoをする
CancelIoExの
CancelSynchronousIoの
CreateIoCompletionPortの
FlushFileBuffersの
GetQueuedCompletionStatusをする
GetQueuedCompletionStatusExの
LockFileの
LockFileExの
PostQueuedCompletionStatusをする
ReadFile
ReadFileExの
ReadFileScatter
SetEndOfFileの
SetFileCompletionNotificationModesの
SetFileIoOverlappedRangeの
SetFilePointerの
SetFilePointerExの
UnlockFile
UnlockFileExの
WriteFileの
WriteFileExの
WriteFileGatherの

暗号化されたファイル システムでは、次の関数が使用されます。

AddUsersToEncryptedFileの
CloseEncryptedFileRawをする
DecryptFileの
DuplicateEncryptionInfoFileの
EncryptFile
EncryptionDisable
FileEncryptionStatusの
FreeEncryptionCertificateHashListの
OpenEncryptedFileRaw
QueryRecoveryAgentsOnEncryptedFile
QueryUsersOnEncryptedFileの
ReadEncryptedFileRawの
RemoveUsersFromEncryptedFileの
SetUserFileEncryptionKeyの
WriteEncryptedFileRawの

次の関数は、ファイル システム リダイレクターで使用されます。

Wow64DisableWow64FsRedirection
Wow64EnableWow64FsRedirection
Wow64RevertWow64FsRedirection

次の関数は、Lempel-Ziv アルゴリズムによって圧縮されたファイルを展開するために使用されます。

GetExpandedNameをする
LZClose
LZCopy
LZInit
LZOpenFile
LZRead
LZSeek

ファイル I/O では、次のコールバック関数が使用されます。

CopyProgressRoutine
ExportCallback
FileIOCompletionRoutineの
ImportCallback