“二进制兼容性”是一个 VB6 术语,它与生成一个 COM dll 相关,该 COM dll 对接口和类使用相同的 Guid,因此您可以更新现有的 dll,而不必担心您的更新会破坏现有的程序。.NET 代码的规则完全不同,抖动有很大帮助。
DLL 项目的平台目标设置也不是很相关。只有 EXE 项目的设置很重要,它决定了进程的位数。如果它依赖于旧的 32 位代码,您可以考虑将您的 DLL 强制为 x86。这将使程序在 BadImageFormatException 上更快地崩溃,而不是得到一个模糊的 COM 异常。