请问:
在VB下如何调用已写好的EXE文件(delphi写的)?一定要把EXE改成OCX或者DLL吗?哪个容易一点,工作量小一点?

解决方案 »

  1.   

    UINT WinExec(    LPCSTR lpCmdLine, // address of command line 
        UINT uCmdShow  // window style for new application 
       );
     import this api
      

  2.   

    vb里有shell 函数 用它就可以调用了
      

  3.   

    那要看你怎么使用了。如果仅仅是调用EXE文件,别说是Delphi的,C++的照样用Shell来调用,返回值是进程句柄
    如果你要和Delphi的程序互操作,那么还是建议你写成OCX或者DLL
      

  4.   

    呵呵,楼上都已经说的很明白了如果是单纯的执行可执行文件,只要用VB的shell函数就可以了
      

  5.   

    谢谢各位,我用的比较简单,不用互操作。看来用shell就可以了。不过这样写:shell("c:\1.exe",VbNormalFocus),为什么提示缺少"="呢?
      

  6.   

    VB的调用函数方法有点“畸形”你若是直接调用函数而不要他的返回至,那么参数列表不要括号,如果你一定要括号,那么你应该在函数前面加上Call,例如下面的都是正确的写法:Call shell("c:\1.exe",VbNormalFocus)
    shell "c:\1.exe",VbNormalFocus
      

  7.   

    Shell是API,必须先申明一下。
    公共模块里写入
    Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
    程序中即可调用了,用法楼上已经讲的很清楚了