SHRegSetPathA 関数 (shlwapi.h)

ファイル パスを取得し、フォルダー名を環境文字列に置き換え、結果の文字列をレジストリに配置します。

構文

LSTATUS SHRegSetPathA(
  [in] HKEY   hKey,
  [in] LPCSTR pcszSubKey,
  [in] LPCSTR pcszValue,
  [in] LPCSTR pcszPath,
       DWORD  dwFlags
);

パラメーター

[in] hKey

種類: HKEY

現在開いているキーのハンドル、またはレジストリ ルート キー。

[in] pcszSubKey

種類: LPCTSTR

既存のサブキーの名前を含む null で終わる文字列へのポインター。 サブキーが存在しない場合、 SHRegSetPath は失敗します。

[in] pcszValue

種類: LPCTSTR

パス文字列を保持する値の名前を持つ null で終わる文字列へのポインター。

[in] pcszPath

種類: LPCTSTR

完全修飾ファイル パスを持つ null で終わる文字列へのポインター。

dwFlags

型: DWORD

予約済み。

戻り値

種類: LSTATUS

成功した場合はERROR_SUCCESSを返し、それ以外の場合は Windows エラー コードを返します。

注釈

Windows 2000 の場合、 SHRegSetPathPathUnExpandEnvStrings を使用して、フォルダー名を対応する環境文字列に変換します。 環境変数が置き換えられた場合、レジストリ値は REG_EXPAND_SZ データ型で設定されます。 それ以外の場合は、 REG_SZ データ型で設定されます。

次のフォルダー パスは、同等の環境文字列に置き換えられます。

Folder 環境文字列
現在のユーザーのプロファイル フォルダー %USERPROFILE%
[すべてのユーザー] プロファイル フォルダー %ALLUSERSPROFILE%
Program Files フォルダー %ProgramFiles%
システム ルート フォルダー %SystemRoot%
システム ドライブ文字 %SystemDrive%
 
メモ %USERPROFILE% は、呼び出しを行うユーザーを基準にしています。 ユーザーがサービスから偽装されている場合、この関数は機能しません。
 
上記の表に示す環境変数は、特定のシステムで設定されていない可能性があります。 環境変数が設定されていない場合、その変数は拡張されません。 特に、これらの変数はいずれも Windows 95 または Windows 98 の既定の環境に設定されていません。 %ProgramFiles% 変数は Windows 2000 の新機能であり、通常は Microsoft Windows NT 4.0 システムでは設定されません。

注意

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

要件

要件
サポートされている最小のクライアント Windows 2000 Professional、Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー shlwapi.h
Library Shlwapi.lib
[DLL] Shlwapi.dll (バージョン 5.0 以降)