在VB中如果调用别的语言编的程序?????????????

99175776 2004-04-29 09:33:25
假如我现在用VB 编了一个功能相对 完的一个程序,但有一外功能是我以前用DELPHI做的程序是一个.EXE程序,我有原程序!也知道用VB如何做,但不知道能不能用这个程序得到一个返回值,给VB,两个程序都在运行行吗>???????
谢谢!!!
...全文
48 8 点赞 打赏 收藏 举报
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hdf1023 2004-04-30
可以将返回值写到一个文件中,再读取
  • 打赏
  • 举报
回复
hdf1023 2004-04-30
shell 完整路径名 & "\nodepad.exe",vbnormal
  • 打赏
  • 举报
回复
flyingZFX 2004-04-30
up
  • 打赏
  • 举报
回复
韩誉 2004-04-30
在两个可执行文件之间实现数值的传递,对vb来说,需要借助API。API实现太烦琐,我并不喜欢,我想你也不喜欢,而且不稳定,是通过跨过本程序的内存,vb程序直接去读delphi程序运行时内存的数据。因为你的哪个delphi程序已经是完成的了。如果不想费太大工夫修改,我可以给你说个简单的方法。通过对临时文件同步处理来实现。你可以让两个程序生成临时文件来保存数据。如果是两个程序都一直运行。数据一直传输两者之间的话,可以这样:
vb程序在1、3、5、7、9秒时打开 data1.temp
在2、4、6、8、0秒时打开data2.temp
delphi程序在 1、3、5、7、9秒时打开data2.temp
在2、4、6、8、0秒时打开data1.temp
记得数据要简练,读取完毕。马上关闭。如果感觉时间不够用。可以两秒读一次。这种方法在山东鲁能电子集控上用的这种方法。还是比较可以的。对文件操作的事件,应该不关数据是否处理完毕、都要按时发送、可以发送空值。但也要准时发送。数据处理好,也要等一秒后发送,在vb里可以这样,使用哪个时钟控件timer定义一秒种。
sub timer_timer()
if second(now) mod 2=1 then '这里用奇数秒来读取数据
open"data1.temp" for input as #22
input #22,datatemp ‘你要把所传的数据最好制作成编码的方式。这样有利于提高速度
close #22
end if
end sub

在delphi里也应该能这样实现。
虽然我的办法笨,但我想还是可用的,我喜欢basic,所以我用basic!我编的软件实现过与
汇编编的软件进行通讯,也是可以的。当时是汇编的哪个小程序通过命令行来接收数据。马上运行完毕。返回数据是由汇编程序改vb要调用的文件。

BASIC最容易学习、普及最广、应用最广、最好的语言
(你不信的话,可以在网上搜索一下 “winxp 由 basic”)
空格 空格
vb疑难解答 主持人:韩誉
双号日晚间在线直接帮你解答问题
MSN:swpcsoft@hotmail.com
(擅长数据库、系统控制、事务处理)


  • 打赏
  • 举报
回复
artoksxb 2004-04-30
楼上说的不行吗?关注
  • 打赏
  • 举报
回复
huangjianyou 2004-04-30
可以用Shell运行其他程序,至于返回值嘛,关注...
  • 打赏
  • 举报
回复
li_zero 2004-04-30
可以运行其他程序,至于返回值就不知道了
  • 打赏
  • 举报
回复
99175776 2004-04-30
看来今天高手都没来! 我再等等,,,,,,
  • 打赏
  • 举报
回复
相关推荐
发帖
非技术类
加入

724

社区成员

VB 版八卦、闲侃,联络感情地盘,禁广告帖、作业帖
申请成为版主
帖子事件
创建了帖子
2004-04-29 09:33
社区公告
暂无公告