0

我知道这不是在托管代码中实现 shell 扩展的更好方法,但这不是主题。

我有一个扩展SharpShell库的 C# 项目。我按照教程创建了一个图标处理程序扩展。虽然我所有的开发都是在 x64 平台上测试我的 dll。但是现在我希望能够在两个平台上都使用这个 dll,但是当我尝试在 Windows x86 资源管理器崩溃中注册我的 dll 时,每次他看到我的一个扩展程序出现访问冲突异常时:

问题事件名称:CLR20r3

所以我试图在任何 CPU、x86、x64 中重新编译我的 dll,但没有人在这个平台上工作。我尝试使用 SharpShell 提供的服务器管理器或使用 regasm 手动注册我的 dll,但没有任何效果。

有人知道这里发生了什么吗?

4

1 回答 1

1

不知道反对票是为了什么。图标处理程序扩展可以作为单个 dll 正常工作,只需确保它被编译为“任何 CPU” - 但是,在注册它时,请使用正确版本的 regasm 注册(x64 有一个,x86 有一个)。

于 2013-08-15T19:48:52.963 回答