<Return[C]><Top>

CreateHardLink

Declare Function Api_CreateHardLink& Lib "kernel32" Alias "CreateHardLinkA" (ByVal lpFileName$, ByVal lpExistingFileName$, ByRef lpSecurityAttributes As SECURITY_ATTRIBUTES)

Declare Function CreateHardLink Lib "kernel32" Alias "CreateHardLinkA" (ByVal lpFileName As String, ByVal lpExistingFileName As String, ByRef lpSecurityAttributes As SECURITY_ATTRIBUTES) As Long

既存ファイルと新規ファイルの間に NTFS ハードリンクを確立する。NTFS ハードリンクは POSIX ハードリンクと類似している。

パラメータ
lpFileName
    開く新しいファイル名へのポインタを指定する。
lpExistingFileName
    新しいファイルをリンクする既存のファイル名へのポインタを指定する。
lpSecurityAttributes
    新しいファイルのセキュリティ記述子を定義する、SECURITY_ATTRIBUTES 構造体へのポインタを指定する。

戻り値
    関数が成功すると、0 以外の値が返る。
    関数が失敗すると、0 が返る。拡張エラー情報を取得するには、GetLastError 関数を使う。

解説
    ハードリンクを使い、同じ下位ファイルに複数の名前を付けることができる。更新が行われると、ハードリンクは下位ファイルを同期させる。

    つまり、既存のファイルを修正すると、リンクしている新しいファイルも修正される。