我知道这不是在托管代码中实现 shell 扩展的更好方法,但这不是主题。
我有一个扩展SharpShell
库的 C# 项目。我按照教程创建了一个图标处理程序扩展。虽然我所有的开发都是在 x64 平台上测试我的 dll。但是现在我希望能够在两个平台上都使用这个 dll,但是当我尝试在 Windows x86 资源管理器崩溃中注册我的 dll 时,每次他看到我的一个扩展程序出现访问冲突异常时:
问题事件名称:CLR20r3
所以我试图在任何 CPU、x86、x64 中重新编译我的 dll,但没有人在这个平台上工作。我尝试使用 SharpShell 提供的服务器管理器或使用 regasm 手动注册我的 dll,但没有任何效果。
有人知道这里发生了什么吗?