動作環境 WinXP,VB2008
USBの自動起動をOFFにする処理を作成していますが、
レジストリを反映する処理が上手くいきません。
どなたかご教授お願いします。
(再起動しないでよい方法を探しています)
変更手順
1.HKLM\Software\Microsoft\Windows\CurrentVersion\
Policies\ExplorerキーのNoDriveTypeAutoRunエントリ
を0x91->0x95に変更。
2.すべてのウィンドウに WM_SETTINGCHANGE メッセージ
を投げてシステム変更を反映。
SendMessageTimeout(HWND_BROADCAST, WM_WININICHANGE, 0, _
"Environment", SMTO_ABORTIFHUNG, 5000, 0)
以前ネットワーク周りのレジストリ変更の反映は2の方法で上手
くいきましたが、AutoRunの場合は上手くいきません。
本来、PC再起動が必須な操作なのですが・・・
ActiveDirectory用のグループポリシー更新の方法が
使えるかも。(未確認です)
gpupdate.exe を実行してみる。
※ システムにどんな影響があるのか解らないので、
自己責任でお願いします。
※ 調べれば他にも方法があることが解ると思います
が、OS(WinXPと、Vista/Win7)で、AutoRUNに
ついては、変更が為されている部分もあるので、
あくまでPC再起動をオススメ。
どうしてもと言うなら・・・
自動ログオンをレジストリでいじって、ログオフ
後に自動ログオンさせ、更新情報を反映させた後
自動ログオン設定を元に戻すとか・・・
※ もっと荒っぽい方法では、explorer.exeを強制終了
させて、再度、explorer.exeを起動させる・・・
なんて方法も行っている人、いるようですが・・・
要はレジストリ(ユーザープロファイル情報かも)
を強制的に再ロードさせて更新結果を反映させると
意図ですネ!
以上。参考まで
オショウさんありがとうございました。
>※ もっと荒っぽい方法では、explorer.exeを強制終了
> させて、再度、explorer.exeを起動させる・・・
> なんて方法も行っている人、いるようですが・・・
この方法で出来ました。
ただ、再起動しないほうがよいとはいえ、システムへの
影響が心配になります。
色々と提案いただきましたが、処理はログオフまでとし、
ログオンはオペレーターの手動操作も考えたいと思います。
※ログオフからの起動だったら、復帰までの待ち時間も
少ない。
ツイート | ![]() |