|
@关于程序修改Windows环境变量后使环境变量立即生效的问题:
本程序是使用SendMessageTimeout函数向系统发送设置改变的消息来实现的。具体代码如下:
DWORD dwMsgResult = 0L;
SendMessageTimeout(HWND_BROADCAST, WM_SETTINGCHANGE, 0,LPARAM("Environment"), SMTO_ABORTIFHUNG, 5000, &dwMsgResult);
5000是延时等待的时间长度,单位为毫秒。整个等待的长度为:
Therefore, the total wait time can be up to the value of uTimeout multiplied by the number of top-level windows.
在本示例中整个程序等待的长度 = 5000 * 顶层窗口的个数; |
|