我使用 .NET 4.0 在 C# 中成功创建了一个 shell 扩展(准确地说是一个上下文菜单处理程序)。我使用 Regasm 注册扩展,然后再次使用 Regasm 注销扩展。整个过程非常有效。
不过我遇到了一个问题:explorer.exe 在测试后不会释放我的 DLL。我不能删除它,而且我不能在没有 VS 提示的情况下进行另一个构建。为了释放 DLL,我唯一能做的就是重新启动 explorer.exe。这就是我的问题:如何在进行过程中进行测试,而不必每次都经历整个过程?
我也非常感谢有关加快测试/调试过程的任何提示。
编辑:我在我的项目属性中找到了注册 COM Interop 选项。它确实加快了调试过程,但我仍然遇到 explorer.exe 问题。
编辑 2:我确实创建了一个批处理文件以终止并重新启动 explorer.exe,并在我的预构建事件中使用了它。然而,即使我曾经使用“启动”命令在后台运行任务,Visual Studio 也会在构建过程中无限期地卡住。我最终使用了这个工具 http://www.commandline.co.uk/cmdow/在后台完全运行命令。
最佳答案
我确实创建了一个批处理文件来终止然后重新启动 explorer.exe,并在我的预构建事件中使用了它。然而,即使我曾经使用“启动”命令在后台运行任务,Visual Studio 也会在构建过程中无限期地卡住。我最终使用了这个工具 http://www.commandline.co.uk/cmdow/在后台完全运行命令。
关于c# - 测试/调试 Shell Extension & Regasm & explorer.exe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5061125/