当前位置:首页 > 多媒体相关

VB中创建可以输出函数的DLL



热门问答:
  • 救命呀!!!为什么升级到win2000sp2后出现脚本错误?该怎么办? [详细内容]
  • 如何用数组取出数据库中数据?怎么写? [详细内容]
  • 请问如何修改默认的输入法? [详细内容]
  • 请教各位:关于全文检索的两个问题 [详细内容]
  • 一断开网络就无法连接本机的SQLServer数据库,现在要拿本机去演示,没办法连网,怎么解决? [详细内容]

  • 推荐阅读
      · 7150摄像照相功能及操作
        摘要:7150摄像照相功能非常强大,加上超大的存储空间,其功能在同类产品中处于非常领先的地位。 (1)摄像照相共享配置和功能: 1、flash存储空间:32.8m; 2、ccd摄像头 &nbs......
      · 市场传真 10.25-10.29dc市场综述
        摘要:it世界  周末将至,acesyp又要给大家谈一谈一周dc行情热点了。不知道是不是有热心读者在等待这一刻的到来^_^。不过不管读者是否热情,这个星期的市场可真够火热的,(看来还真的被笔者说中了,新品迭出的时代过后必然就是大减价和促销盛行的时代),各位看客还是赶紧去搬个凳子来吧。         周末将至,acesyp又要给大家谈一谈一周dc行情了。不知道是不是有热心读者在等待这一刻的到来^_^。不过不管读者是否,这个星期的市场可真够火热的......

    正文
    介绍:细处着手,巧处用功。高手和菜鸟之间的差别就是:高手什么都知道,菜鸟知道一些。电脑小技巧收集最新奇招高招,让你轻松踏上高手之路。
      vb中创建的dll只是com组件,无法作为输出函数的dll。今天从朋友哪里搞到一种可以创建输出函数的dll的方法,欣喜之余,不敢独享,现在把他介绍给大家。

      vb编译文件实际上采取了两次编译的方法,首先是调用c2.exe产生obj文件,然后调用link.exe连接。如果在link的时候添加export选项,实际上是可以输出函数的。但是,在vb的工程选项中将这些屏蔽了。而且过分的是:vb在build完成后会将obj文件删除,这样就无法通过link来输出函数了。不过我找到一个比较龌鹾的变通的方法,就是先创建一个exe工程,在form_load事件里面写下面的语句:


      然后编译为linktemp.exe,接下来将link.exe改名为link2.exe,将linktemp.exe改名为link.exe。这样在vb调用link.exe时会弹出对话框,处理就会中断。这时就可以有机会将obj文件拷贝出来了 j

      然后我创建了一个activex dll工程,在这个工程里面添加一个module并创建一个public函数mathadd:


      builder这个工程,在link的时候就会中断。然后把创建的class1.obj、module1.obj、project1.obj备份出来。

      然后就可以调用link2.exe连接obj到dll了,我的连接代码是:


      注意里面的/entry和/export开关,/export开关声明了输出函数mathadd。这样就大功告成了 :-d,可以被其他语言引入,例如在vb中,只需要:


      就可以了。

    讨论区

    Login