将64位DLL链接到Visual Basic 6

问题描述 投票:0回答:3

我正在更新用C编写的现有DLL项目。出于多种原因,需要同时使用32位和64位版本。

使用这些DLL的应用程序是用Visual Basic 6编写的,并且是项目中的类所需要的。此类包含一个对DLL充满Public Declare功能的模块;该类是模块中功能的包装。

Visual Basic 6项目本身中没有引用。到目前为止,我已经完成了对32位版本的编码并对此感到满意。

如果使用Visual Basic 6编写的32位应用程序中的64位DLL是从32位DLL调用的,则更改模块中的文件名以指向64位DLL是否存在任何问题?

dll vb6 32bit-64bit
3个回答
4
投票

您不能从32位调用64位代码。这样做的唯一方法是在64位进程中运行64位代码,并使用某种进程间通信与之对话。


2
投票

[Raymond“ The Old New Thing”的nice article解释了为什么无法从32位转换为64位。


0
投票

[由于对VB6的所有应有的尊重,VB6于1998年问世,当时尚不完全清楚计算是否将从16位迁移到32位,更不用说64位处理了。除非您提出某种64位 16/32位互通层,否则这是不可能直接实现的。至少不是通过VB6的方式

© www.soinside.com 2019 - 2024. All rights reserved.