如何立即隐藏驱动器
我查了一些资料,通过修改修改注册表可以隐藏驱动器:
HKEY_USERS\.Default\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下新建NoDrives
我测了一下,确实可以隐藏,但是必须注销或重启后才会生效,我的问题是如何使电脑不重启直接可以生效?
[解决办法]
需要在修改注冊表後廣播發送WM_SETTINGCHANGE消息(在Windows NT下為WM_WININICHANGE消息)。
如果使用SystemParametersInfo 修改繫統設置,最後一個參數應設置為SPIF_SENDWININICHANGE。這
樣 , 有關程序接收到該消息采取相應的操作, 不過不是所有的操作都可以立即生效, 有些操作需要重
新啟動Windows或重新啟動軟件。
Declare Function SendMessageA Lib "user32 " (ByVal hwnd As Long, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long
Sub Test()
Const WM_WININICHANGE = &H1A
Const WM_SETTINGCHANGE = &H1A
Call SendMessageA(Me.hwnd, WM_SETTINGCHANGE, 0, 0)
End Sub