刷新Windows资源管理器中的命令工具栏消失

时间:2010-03-29 12:48:32

标签: c# toolbar windows-explorer

我在C#中创建了一个Windows资源管理器工具栏。卸载我的应用程序时会删除此工具栏,但在取消注册后仍会显示(在explorer.exe中缓存)。 explorer.exe需要重新启动才能使工具栏消失。我如何通过C#代码解决这个问题?

3 个答案:

答案 0 :(得分:1)

在没有要求用户注销的情况下,真的没有办法干净利落地做到这一点。

如果有关闭工具栏的编程访问权限,您可以在每个加载了dll的资源管理器进程中注入一些代码并关闭工具栏,然后调用CoFreeUnusedLibraries(仍然有些hacky但你不必杀死进程)

答案 1 :(得分:0)

如果工具栏已正确卸载,我不确定它是否会缓存工具栏。我对这些事情知之甚少,但您确定在安装程序中没有错过撤销注册电话吗?

答案 2 :(得分:-5)

foreach(Process p in Process.GetProcesses()){

try{

if(p.MainModule.ModuleName.Contains("explorer") == true)p.Kill();

}
catch(Exception e){}

Process.Start("explorer.exe");

}

放手一搏。