【发布时间】:2011-11-27 14:20:46
【问题描述】:
我目前正在为Windows Explorer 开发一个DLL,它为某些类型的文件提供各种功能,例如信息和缩略图。到目前为止,它在 Windows x64 上运行良好,我现在正在处理 32/64 bits 问题和注册过程(这个过程是由一个用 C# 编写的小型独立程序完成的)。
我的理解是:
- 64 位 DLL 不适用于 32 位应用程序,反之亦然
- 因此 64 位 DLL 不适用于 32 位应用程序的打开文件对话框
- 我需要分别注册 32 位和 64 位版本
我的问题是:
- 到目前为止我的假设是否正确? 我特别想知道应用程序打开的浏览对话框是否必须与应用程序具有相同的位数(或者该对话框是否由某些 Windows 64 进程管理?)
- 假设我的 DLL 有 32 位和 64 位版本,如何从 64 位程序中注册它们? (“好的 Windows,我是一个 64 位进程,但我正在为 32 位应用程序注册它,明白吗?”)
我读过的一些关于该主题的页面:
Windows 64-bit registry v.s. 32-bit registry
http://msdn.microsoft.com/en-us/library/aa384232%28v=VS.85%29.aspx
【问题讨论】:
标签: c# .net windows 32bit-64bit dllregistration