次の方法で共有


GetUserProfileDirectoryW 関数 (userenv.h)

指定したユーザーのプロファイルのルート ディレクトリへのパスを取得します。

構文

USERENVAPI BOOL GetUserProfileDirectoryW(
  [in]            HANDLE  hToken,
  [out, optional] LPWSTR  lpProfileDir,
  [in, out]       LPDWORD lpcchSize
);

パラメーター

[in] hToken

型: HANDLE

LogonUser、CreateRestrictedToken、DuplicateTokenOpenProcessToken、または OpenThreadToken 関数 によって返される、ユーザーのトークン。 トークンにはTOKEN_QUERYアクセス権が必要です。 詳細については、「Access-Token オブジェクトのアクセス権を する」を参照してください。

[out, optional] lpProfileDir

型: LPTSTR

この関数が正常に返されるときに、指定したユーザーのプロファイル ディレクトリへのパスを受け取るバッファーへのポインター。

[in, out] lpcchSize

型: LPDWORD

TCHARで、lpProfileDir バッファーのサイズを指定します。

lpProfileDir 指定されたバッファーが十分な大きさでない場合、または lpProfileDir が NULL場合、関数は失敗し、このパラメーターは必要なバッファー サイズ (終端の null 文字を含む) を受け取ります。

戻り値

型: BOOL

成功した場合は TRUE を します。それ以外の場合は、FALSEを します。 拡張エラー情報を取得するには、GetLastError呼び出します。

備考

Windows XP で GetUserProfileDirectory 返されるパスの例を次に示します。

C:\Documents and Settings\Joe

Windows 7 で GetUserProfileDirectory 返されるパスの例を次に示します。

C:\Users\Joe

このディレクトリのサブディレクトリのパスを取得するには、SHGetFolderPath (Windows XP 以前) または SHGetKnownFolderPath (Windows Vista) 関数 使用します。

手記

userenv.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして GetUserProfileDirectory を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー userenv.h
ライブラリ Userenv.lib
DLL Userenv.dll

関連項目

GetAllUsersProfileDirectory の

GetDefaultUserProfileDirectory の

GetProfilesDirectory の

ユーザー プロファイルの概要

ユーザー プロファイル リファレンス