現在、ファイルのハードリンクの数とそのリンクの場所を読み取ることができる C# ソリューションを探しています。ファイルのプロパティに移動して、1 つのファイルのすべてのハードリンクを一覧表示することで、これを実行できるプログラム リンク シェル拡張機能を考えています。完全なディスクを検索せずに同じことを行うことができる C# コーダー向けのソリューションがあることを期待しています。
編集1:
2 つの HardLinks が同じファイルであるかどうかをテストする方法はありますか?
リンク数を取得するにはGetFileInformationByHandle
、メンバーを使用してアクセスしますNumberOfLinks
。
VBで API を使用する例を次に示します。
すべてのリンクの名前を見つけるには、FindFirstFileNameWを使用する必要がありますが、Vista (または Server 2k8) 以降でしか利用できず、P/Invoke 情報が見つかりません。