次の方法で共有


SHRegSetPathW 関数 (shlwapi.h)

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

構文

LSTATUS SHRegSetPathW(
  [in] HKEY    hKey,
  [in] LPCWSTR pcszSubKey,
  [in] LPCWSTR pcszValue,
  [in] LPCWSTR 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 の場合、SHRegSetPath では、PathUnExpandEnvStrings を使用して、フォルダー名を対応する環境文字列に変換します。 環境変数が置き換えられた場合、レジストリ値は REG_EXPAND_SZ データ型で設定されます。 それ以外の場合は、REG_SZ データ型で設定されます。

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

フォルダ 環境文字列
現在のユーザーのプロファイル フォルダー %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 [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー shlwapi.h
ライブラリ Shlwapi.lib
DLL Shlwapi.dll (バージョン 5.0 以降)