如题!
   在Delphi里面调用我C#写的一个可执行程序,然后运行Delphi的应用程序的时候,有很大的概率调用不上C#写的应用程序。
   代码肯定没有问题。有时候能调用上,有时候点了没有反应,即不能调用C#写的应用程序。
   头疼啊,不知道哪个哥们知道的,指点一下啊!

解决方案 »

  1.   

    调用的过程如下:(TransformData.exe就是C#写的WinForm程序)procedure TMain.CustomItem3Click(Sender: TObject);
    begin
      Shellexecute(Handle, 'Open', 'TransformData.exe','', nil, sw_shownormal);
    end;
      

  2.   

    我是这么用的,没发现有问题,跟你的差一个nil。
    会不会调用成功了,显示在delphi界面后面了。
    ShellExecute(handle,'open',pchar('使用帮助.chm'),nil,nil,sw_ShowNormal);
      

  3.   

    感觉像是外部原因
    是否调用其他非C#编写的EXE也这样
    调用Win32原生EXE有没有这种情况
      

  4.   

    可能是编译环境的问题,或者是你的delphi版本问题,也许是没打补丁把,楼主仔细检查一下
      

  5.   

    procedure TMain.CustomItem3Click(Sender: TObject); 
    begin 
      Shellexecute(Handle, 'Open', 'TransformData.exe','', nil,nil, sw_shownormal); 
    end;如果还不行的话,有可能是你的DELPHI版本的问题。请你仔细查一下。
      

  6.   

    这种问题只可能是调用的EXE没有反应,另外一个就是改用绝对路径,不要用相对路径。
      

  7.   

    没尝试用Delphi调用C#编写的应用程序! 哎 菜鸟啊!
      

  8.   

    Shellexecute(Handle, 'Open', 'TransformData.exe','', nil,nil, sw_shownormal); 这样都掉不起来应该和被调的程序用什么语言开发的没关系,估计是路径的问题
      

  9.   

    我调用过啊,这个和语言没有关系啊,用这个函数啊
    ExtractFilePath(路径;winExec(pchar(s),SW_SHOWNORMAL);