掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
RegSaveKeyによるレジストリのエクスポート方法について (ID:68721)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> 「クライアントは要求された特権を保有していません。」だそうです。 そんな気がしていました。 同じページに、こうも書いてあります。 > The calling process must have the SE_BACKUP_NAME privilege enabled. ということで、この特権を有効にする必要があります。 特権には、「持っている/持っていない」と「有効/無効」という状態があり、「持っていて有効」「持っていて無効」「持っていない」の3通りの組み合わせがあります(持っていない場合は有効にできません)。 で、Administrators と Backup Operators に属するユーザはこの特権を持っているので有効にできますが、Users は持っていないので有効にできません。 従って、Users ではこれらの関数は使用できないということになります。 設定次第では Users にこの特権を持たせることもできるのですが、そうすると、HKCU のみならず、システム上の全ファイルに対して(ACLに関係なく)読み取りアクセス権を持ってしまうので、過ぎた権限と言えます。 ちなみに、RegSaveKey が生成するのはバイナリファイルで、RegEdit のエクスポートで生成できるようなテキストファイルではありません。 RegEnumKeyEx / RegQueryValueEx / WritePrivateProfileString 等の API を使って自分でロジックを組めば、RegEdit を模倣した ini 形式のファイルを作ることは可能です。 レストアするにも RegSetValueEx 等を何度も呼ばなければいけないので面倒ではありますが、これらの API を使うだけなら、SE_BACKUP_NAME 特権は要りません。 個人的にはそっちをおすすめしますが、いかがでしょうか?
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.