这个问题是我上一个问题的延伸。
在与创建 .DLL 的其他项目进行了超越比较之后,我能够弄清楚如何构建我的 .DLL——通过删除 VC++ 6 项目中的 _WINDLL 预处理器定义——以便在 64 位机器上注册. 我正在寻找为什么会发生这种情况的解释。
在 Visual Studio 中,一旦我转到项目属性 > C/C++ > 预处理器定义,并删除 _WINDLL,然后构建项目,我就可以在 Windows 64 位计算机上注册 .DLL。如果包含定义,则在尝试在 64 位计算机上注册时出现“此模块无法加载”错误。
那么,有人可以告诉我导致这个问题的原因是什么吗?我在这里环顾四周,但没有任何东西让我得出结论。最后,我的 .DLL 似乎工作正常,但我可以肯定地说我的应用程序不会受到排除定义的影响吗?