ClusterGetVolumePathName 関数 (resapi.h)
[ClusterGetVolumePathName は、[要件] セクションで指定されたオペレーティング システムで使用できます。 今後のバージョンでは変更されるか、利用できなくなる場合もあります。 代わりに、 GetVolumePathName を使用します。
指定したパスがマウントされているクラスター上のボリューム マウント ポイントを取得します。
構文
BOOL ClusterGetVolumePathName(
[in] LPCWSTR lpszFileName,
[out] LPWSTR lpszVolumePathName,
[in] DWORD cchBufferLength
);
パラメーター
[in] lpszFileName
入力パス文字列へのポインター。 このパスでは、絶対ファイル名と相対ファイル名とディレクトリ名 (".." など) の両方を使用できます。
ボリューム修飾子を指定せずに相対ディレクトリまたはファイル名を指定した場合、 ClusterGetVolumePathName は現在のボリュームのドライブ文字を返します。
このパラメーターが空の文字列 "" の場合、関数は失敗しますが、最後のエラーは ERROR_SUCCESS に設定されます。
[out] lpszVolumePathName
入力パスのボリューム マウント ポイントを受け取る文字列へのポインター。
[in] cchBufferLength
WCHAR での出力バッファーの長さ。
戻り値
関数が成功すると、戻り値は 0 以外になります。
関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。
解説
次の例が役立つ場合があります。 これらの例では、"Filename.Ext" は存在しますが、"Path\that\does\not\exist" は存在しません。
-
入力: "C:\ClusterStorage\Volume31\Filename.Ext"
出力: "C:\ClusterStorage\Volume31"
-
入力: "\\?\C:\ClusterStorage\Volume31\Filename.Ext"
出力: "\?\C:\ClusterStorage\Volume31"
-
入力: "C:\ClusterStorage\Volume31\Path\that\does\not\exist"
出力: "C:\ClusterStorage\Volume31"
-
入力: "\\?\Volume{deadbeef-895e-4a1d-9d64-9b82fa068d76}\ClusterStorage\Volume31\Filename.Ext"
出力: "\?\Volume{deadbeef-895e-4a1d-9d64-9b82fa068d76}\ClusterStorage\Volume31"
-
入力: "\\?\GLOBALROOT\Device\Harddisk0\Partition1\ClusterStorage\Volume31\Filename.Ext"
出力: "\?\GLOBALROOT\Device\Harddisk0\Partition1\ClusterStorage\Volume31"
-
入力: "\\?\GLOBALROOT\Device\HarddiskVolume1\ClusterStorage\Volume31\Filename.Ext"
出力: "\?\GLOBALROOT\Device\HarddiskVolume1\ClusterStorage\Volume31"
#define UNICODE 1
#include <ResApi.h>
ClusterGetVolumePathName 関数は、クラスターのノードから呼び出す必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | サポートなし |
サポートされている最小のサーバー | Windows Server 2008 R2 Enterprise、Windows Server 2008 R2 Datacenter |
対象プラットフォーム | Windows |
ヘッダー | resapi.h |
Library | ResUtils.Lib |
[DLL] | ResUtils.Dll |