HKCR配下のレジストリキーが勝手にコピーされる?

vista対策】
http://pc10.2ch.net/test/read.cgi/tech/1162813293/312-313n

312 :デフォルトの名無しさん :2007/02/27(火) 00:32:42 
MSが仕様だと言い張るので、Vistaのすばらしい機能を紹介します。 
レジストリのHKEY_CURRENT_USERのキーを同一PC上のユーザにコピーする「機能」です。 

(条件) 
・実行ファイル名に"UPDATA"や"SETUP"などの文字を含む 例)MyUpdate.exe つまり、UACにひっかかるexeであること。 
・そのexeにmanifestをつけないこと。あってもいいけど、実行権限を指定しなければok。 

(方法) 
・そのexeの中で、HKCUのキーを書き込むだけでそのキーが全ユーザにコピーされます。 
・MFCアプリなら、CWinApp::GetProfileStringなどで、参照するだけでOK!ナイスすぎ。 
 しかも、書き込んだキーだけじゃなく、SetRegistryKeyで設定したグループ以下を 
 全部丸ごとコピーしてくれるから、とっても簡単! 
 通常は、会社名を設定するから、あなたの会社のソフトをまとめて面倒みてくれます。 
 microsoftをSetRegistryKeyにしたら・・・うは〜 
・書き込むって言ったけど、RegCreateKeyExをやっても、そのキーが丸ごとコピーされマス! 

(ただし) 
・すでにキーが設定されていれば、上書きはされません。 
 キーが空だった場合のみ,ほかのユーザのHKCUのキーが新規で追加されます。 
 でも、普通デフォルト設定はキーを空にするよね。 
・コピーする内容がパスだった場合、ご親切にもパスのユーザー名の部分だけ置き換えてくれます。 
 たとえば、c:\User\papa\秘密.txt という文字列を書き込んだ場合は、ママのレジストリには 
 c:\User\mama\秘密.txt と置き換えてコピーしてくれるんです!開発者のことよく考えてくれるね〜  

このすごい機能は、RedirectHKCUKeysと言うらしいです。 
これで、パパのクレジット番号だろうが、パスワードだろうが、ママがいちいち入力しなくても 
親切にコピーしてくれるから、すごく便利だね! 
一度おためしあれ。 


313 :312:2007/02/27(火) 00:43:18 
あ、ちょっと間違えました。 

実行ファイル名に"UPDATA"や・・・ 
↓ 
実行ファイル名に"UPDATE"や・・・ 

動作確認はしてないけど、これちょっと酷いってか、ヤバイね。確かにインストーラを作る立場で見ればありがたい挙動ではあるんだけどねぇ。