在更改 盘符icon和label后,如何刷新 explorer?

碧螺春的马甲 2007-12-19 03:27:28
透过 AP 更改 盘符 G:\ 的 icon 和 exploeror

更改后如何去 refresh 打开的 explorer 和 “我的电脑”?

或者只需要 刷新 G:\ 等?
...全文
547 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
碧螺春的马甲 2007-12-21
  • 打赏
  • 举报
回复
楼上高手的方法成功了,谢谢。

F5 刷新,好方法。动感超人可以飞啊飞啊,哪里需要F5就去哪里。可是偶飞不过去 ...
碧螺春的马甲 2007-12-20
  • 打赏
  • 举报
回复
2楼的方法没成功,可能有些参数不对,我会再试。

偶的是 win32 的 NTService,感觉和AP还是有点区别的。

试试楼上的方法!
碧螺春的马甲 2007-12-20
  • 打赏
  • 举报
回复
2楼的方法没成功,可能有些参数不对,我会再试。

偶的是 win32 的 NTService,感觉和AP还是有点区别的。

试试楼上的方法!
heroboy2000 2007-12-20
  • 打赏
  • 举报
回复
按F5刷新
jameshooo 2007-12-20
  • 打赏
  • 举报
回复
我刚刚回答过别人类似的问题,代码改造一下供你参考:

HANDLE hThisProcess = GetCurrentProcess(); // 获取当前进程句柄

// 打开当前进程令牌
HANDLE hTokenThis = NULL;
OpenProcessToken(hThisProcess, TOKEN_ALL_ACCESS, &hTokenThis);

// 复制一个进程令牌,目的是为了修改session id属性,以便在其它session中创建进程
HANDLE hTokenDup = NULL;
DuplicateTokenEx(hTokenThis, MAXIMUM_ALLOWED,NULL, SecurityIdentification, TokenPrimary, &hTokenDup);
DWORD dwSessionId = WTSGetActiveConsoleSessionId(); // 获取活动session id
SetTokenInformation(hTokenDup, TokenSessionId, &dwSessionId, sizeof(DWORD)); // 把session id设置到备份的令牌中

// 好了,现在要用新的令牌来创建一个服务进程。注意:是“服务”进程!如果需要以用户身份运行,必须在前面执行LogonUser来获取用户令牌
STARTUPINFO si;
PROCESS_INFORMATION pi;
ZeroMemory(&si, sizeof(STARTUPINFO));
ZeroMemory(&pi, sizeof(PROCESS_INFORMATION));
si.cb = sizeof(STARTUPINFO);
si.lpDesktop = "WinSta0\\Default";

LPVOID pEnv = NULL;
DWORD dwCreationFlag = NORMAL_PRIORITY_CLASS | CREATE_NEW_CONSOLE;
CreateEnvironmentBlock(&pEnv, hTokenDup, FALSE); // 创建环境块
// 创建新的服务进程,这个进程应该接收参数来调用SHChangeNotify,它将工作在新的session 1中
CreateProcessAsUser(hTokenDup, NULL, _T("C:\\myservice.exe -Notify"), NULL, NULL, FALSE, dwCreationFlag, pEnv, NULL, &si, &pi);

阿呆_ 2007-12-20
  • 打赏
  • 举报
回复
CreateProcessAsUser在session 1创建一个进程然后通过那个进程发送消息
jameshooo 2007-12-20
  • 打赏
  • 举报
回复
哈哈,原来你开新贴了啊,帮顶
Chivalry 2007-12-20
  • 打赏
  • 举报
回复
mark jiangsheng
碧螺春的马甲 2007-12-20
  • 打赏
  • 举报
回复
楼上高手的 方法无疑在 AP 下都是 OK的,谢谢。

可是我的 程序是 Service,目前还不清楚有哪个细节不对,AP完全OK,Service不行。

看来和 Service的 安装权限等有关,还忘高手指点。
蒋晟 2007-12-19
  • 打赏
  • 举报
回复
Zgydd 2007-12-19
  • 打赏
  • 举报
回复
2楼的不错,可以试试。
或者:开始菜单->运行->explorer
o(∩_∩)o...哈哈,玩笑。
碧螺春的马甲 2007-12-19
  • 打赏
  • 举报
回复
试试楼上的方法!
zhoujianhei 2007-12-19
  • 打赏
  • 举报
回复
pptor 2007-12-19
  • 打赏
  • 举报
回复
好多分 接

16,470

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧