绕过vb6二进制兼容性

时间:2011-11-19 00:27:28

标签: vb6 dll binary-compatibility

这或多或少是一个学术问题,可以帮助我更好地理解这个过程...而不是要求弄清楚如何绕过二进制兼容性所以不需要解释为什么我不应该尝试这个:)< / p>

假设我在vb6中创建并编译了一个没有公共成员的DLL。实际上,我认为它可能不允许你在没有至少一个的情况下进行编译,所以让我们说我们创建一个单独的公共方法,但它只是存在,所以dll会编译,否则我们会忽略它。

现在说我将项目兼容性设置为此dll,我从来没有在任何情况下更新此dll或更改与dll的更新版本的兼容性。

在这种情况下,我认为vb6永远不会抛出那些破坏性兼容性错误消息,并且即使你实际上破坏了兼容性,也会继续在每次编译时对dll使用相同的UUID。

但是,我认为为您在该dll中创建的类生成的值每次都会更改。即使您没有编译该DLL的兼容性问题,您最终仍会遇到引用此dll的项目的兼容性问题。

这听起来是对的吗?

1 个答案:

答案 0 :(得分:1)

我认为你的逻辑是正确的。虽然您可能只是使用项目兼容性?

我不知道为什么你会想要这个,但你确实说这是一个学术问题!