解决方案 »

  1.   

    我看了下,那个 /EXPORT 应该就是“导出函数”。
    你完全照他的例子来做,没有 mathadd、mm、rit 这三个函数,当然就出了3个 error(错误) 了。
    只要有error ,链接就不能成功。
    但是 warning(警告) 基本是可以不管的。如果你按他说的例子做,应该删除这几个参数: /EXPORT:mm /EXPORT:mathadd /EXPORT:rit 
    但是要增加这个: /EXPORT:fun1 /EXPORT:fun2这样就成功了。
      

  2.   

    其实用他这个方法,我觉得那个“假 Link.exe”应该这样做好些:新建一个 标准EXE工程。
    移除 Form1(不用保存它)。
    然后添加一个标准模块,加入下面这段代码:
    Private Sub Main()
       Open "CmdLine.txt" For Output As #1
       Print #1, VBA.Command$
       Close
       MsgBox "现在可以拷贝OBJ文件了!", vbInformation
    End Sub
    然后编译成 Link.exe ,照他说的方法替换文件。这样,在编译DLL文件时,把VB6所在目录内的 CmdLine.txt 打开,就能看到
    用 /EXPORT:函数名 把函数列表加上(可以有几个),再全部复制下来,作为Link2.exe 的参数就行了。
    只是他这种方法,用起来很麻烦,还不如用老马他们的那个“函数添加大师”。
      

  3.   

    楼主如果还处在这个阶段,“你完全照他的例子来做,没有 mathadd、mm、rit 这三个函数,当然就出了3个 error(错误) 了”,那搞这个东西确实比较困难了,尤其是在需要处理非VB程序调用你的“标准DLL”的时候。
      

  4.   

    我觉得用VB6来搞这种所谓的“标准DLL”,没多大意思的。
    并且,这个DLL实质上还是ActiveX DLL。
      

  5.   

    ActiveX DLL也是标准DLL啊,无非是调用的方式不同
      

  6.   

    还能问吗?我用vb编译了一个标准dll。在xp下可以正常调用,vb、vc都可以调用,但在64位win7下,用vc调用的会报错,老马有遇到过这种情况吗?咋整?
    注:是vc6和vc2010的都试过,64位win7下失败,xp下正常。vb按标准dll来调用,在64位win7下也能正常运行