次の方法で共有


ExpandEnvironmentStringsForUserA 関数 (userenv.h)

指定したユーザーに対して確立された環境ブロックを使用して、ソース文字列を展開します。

構文

USERENVAPI BOOL ExpandEnvironmentStringsForUserA(
  [in, optional] HANDLE hToken,
  [in]           LPCSTR lpSrc,
  [out]          LPSTR  lpDest,
  [in]           DWORD  dwSize
);

パラメーター

[in, optional] hToken

型: HANDLE

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

hToken NULL場合、環境ブロックにはシステム変数のみが含まれます。

[in] lpSrc

型: LPCTSTR

展開する null で終わるソース文字列へのポインター。

[out] lpDest

型: LPTSTR

展開された文字列を受け取るバッファーへのポインター。

[in] dwSize

型: DWORD

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

戻り値

型: BOOL

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

備考

ソース文字列の例を次に示します。

%USERPROFILE%\ntuser.dat

ExpandEnvironmentStringsForUser 戻ると、変換先の文字列は次のように展開されます。

C:\Documents and Settings\UserName\ntuser.dat

手記

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

必要条件

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

関連項目

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

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