好像很久以前看到过代码,但实在找不到了,不好意思:)
麻烦各位大虾再给一段,谢谢啦:)千万不要用微软的 DispInvoker.exe 

解决方案 »

  1.   

    CallByName   函数   
        
      执行一个对象的方法,或者设置或返回一个对象的属性。   
        
      语法   
        
      CallByName(object,   procedurename,   calltype,[arguments()])   
        
      CallByName   函数的语法有以下部分:   
        
      部分   描述     
      object   必需的;变体型(对象)。函数将要执行的对象的名称。     
      procedurename   必需的;变体型(字符串)。一个包含该对象的属性名称或者方法名称的字符串表达式。     
      calltype   必需的;常数。一个   vbCallType   类型的常数,代表正在被调用的过程的类型。     
      arguments()   可选的:变体型(数组)。     
        
      ------------------------
      

  2.   

    实际上DispInvoker比CallByName好用多了,CallByName不会把原来的错误信息给你抛出来,而是一个自动化错误,调试的时候找死你。
      

  3.   

    To zyg0(影子(被评为本年度最可爱流氓) 
    首先感谢大虾的回帖,但标题里写明了 VB5!!!
    CallByName  函数是VB6起才有滴:)To fj182(阿花):
    我没用过DispInvoker,我想知道,当编译成可执行文件后,
    在其它电脑上直接运行(无安装文件)是否也要带DispInvoker?
    偶编的是绿色软件,绝对P-Code,从98se起系统就自带VB5运行库,故无需安装程序
      

  4.   

    Create your own CallByName function using IDispatch
    http://www.mvps.org/emorcillo/download/vb6/invoke.zip
    不过也得带一个类型库。
      

  5.   

    老大,好人做到底,请问这一个类型库在哪里?偶担心装全套DispInvoker.exe 后,本机会装上很多库什么的,
    到时目标机上也不一定有。偶希望知道最小运行环境是哪些?带一个类型库也可以,是否意味着最终编译后的exe文件,就可单独运行?谢谢:)
      

  6.   

    如果需要的是类型库的话,编译后是不需要这些文件的,意味着最终编译后的exe文件,就可单独运行
      

  7.   

    用DispInvoker发布时只需要带一个DLL.
      

  8.   

    :( 大虾们还有其它的办法吗?豆子在哪里啊?上次你那个是不是要用到COM接口才行?