|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2003/9/30 21:34:04 |
标题: |
请问如何在Delphi6下调用16位的DLL |
浏览:2022 |
|
加入我的收藏 |
楼主: |
我现在手头有一块96年以前的数模转换卡,插在电脑ISA插槽上的。现在我们实验需要对 它进行编程,可是原来的生产厂商只提供据说是16位的动态连接库文件,是基于Borland C++ 45编写的,面向Windows 3.1 和95,现在我编写其他配套的控制程序必须用Delphi 6,所以必须在Delphi 6里面调用原厂提供的动态连接库文件,把DLL文件放到调用它的源 程序同级子目录下,结果无论我怎么试(如:function XXXX(XXXX):Integer;stdcall;e xternal abc.dll index 1)都报错“DLL文件已损坏,请重新安装此文件,然后再试一次 。”“Unable to create process,与系统连接的设备不能正常运转”。我的计算机是赛 扬300的老机子,操作系统是WinMe,以前用Delphi 6编的程序用同样的语法调用其他DLL 文件均不报此错,只要一调用这个卡的DLL文件都报此错。向厂家求救,对方说,鉴于此 卡过于老旧,早就不再开发新软件,无法提供相应帮助,建议我购买新卡。 请问有哪位高手知道此问题的解决方法,还望不吝赐教。
----------------------------------------------
- |
作者: |
bios (阿贡) |
★☆☆☆☆ |
-
|
盒子中级会员 |
|
2003/10/2 8:51:56 |
1楼: |
正在帮你一起研究中。。。请等待。。。
----------------------------------------------
|
作者: |
bios (阿贡) |
★☆☆☆☆ |
-
|
盒子中级会员 |
|
2003/10/2 13:48:25 |
2楼: |
p16位DLL直接使用LoadLibrary会失败的 自然更不用说调用函数了 在32为调用16位DLL,在MSDN专门有讲,你查找 Trunk(?)/32/16/DLL可以找到,可惜 全是英文,而且一直没有用过,所以没仔细读过。大概意思好像是生成一个转换的 DLL通过他来访问
----------------------------------------------
|
作者: |
|
2003/10/8 13:58:40 |
3楼: |
非常感谢!我正在查找帮助中。。。
----------------------------------------------
-
|
作者: |
|
2003/10/8 14:16:58 |
4楼: |
请教一个弱智问题: MSDN在哪里可以找到?
----------------------------------------------
-
|
作者: |
|
2003/10/8 17:05:29 |
5楼: |
好象听说过MSDN的大名,就是从来没有用过,可否赐教? 另外,我听说用高版本的32位的C(原来的16位DLL就是用低版本的16位的C写的)重新编译DLL的原程序可以得到32位的DLL,请问是这样的吗?至少我看过一篇关于Delphi的文章中这么说过,不知道这样做是否能得到32位的Delphi能调用的DLL。
----------------------------------------------
-
|
作者: |
bios (阿贡) |
★☆☆☆☆ |
-
|
盒子中级会员 |
|
2003/10/9 13:57:14 |
6楼: |
Microsoft visual studio60安装盘10张中 (整个一整套都装下来就很全了 ,什么都有)
----------------------------------------------
|
作者: |
bios (阿贡) |
★☆☆☆☆ |
-
|
盒子中级会员 |
|
2003/10/9 13:59:44 |
7楼: |
"我听说用高版本的32位的C(原来的16位DLL就是用低版本的16位的C写的)重新编 译DLL的原程序可以得到32位的DLL,请问是这样的吗?"
我也听说过啊,可能吧!你试试,然后告诉大家结论如何?谢谢!
----------------------------------------------
|
|