procedure Ttest.TestRun;
begin
  if CheckFile then
    begin
      ShellExecute(Handle,'open',PChar('E:\DataProcess\del\Pdel.exe'),nil,'E:\DataProcess\del\Pdel.exe',SW_SHOW);
    end;
end;function Ttest.CheckFile:boolean;
var
  SearchRec:TSearchRec;
begin
  Result:=False;
  if FindFirst('E:\_libsrc\del\*.dat',faDirectory,SearchRec)=0 then
  begin
    repeat
    //Showmessage('找到'+SearchRec.Name+'这个文件');
    Result:=true;
    Until FindNext(SearchRec)<>0;
    FindClose(SearchRec);
  end;
end;
Pdel.exe就是不会运行....
为什么?

解决方案 »

  1.   

    ShellExecute(Handle,'open',PChar('E:\DataProcess\del\Pdel.exe'),nil,'E:\DataProcess\del',SW_SHOW);
      

  2.   

    ShellExecute(Handle,'open',PChar,  'E:\DataProcess\del\Pdel.exe'),nil,'
    E:\DataProcess\del',SW_SHOW);
      

  3.   

    另外:function Ttest.CheckFile:boolean;
    var
      SearchRec:TSearchRec;
    begin
      Result:=False;
      if FindFirst('E:\_libsrc\del\*.dat',faAnyFile+faHidden+faSysFile+faReadOnly+faDirectory,SearchRec)=0 then
      begin
        Result:=True;
        Exit;
        FindClose(SearchRec);
      end
      else
        while FindNext(SearchRec)=0 do
        begin
          Result:=true;
          Exit;
          FindClose(SearchRec);
        end;
    end;另:今天早上那个帖子中有个错误的地方,需要把FindClose放到每个Exit后....
      

  4.   

    最好写成ShellExecute(Handle,'open','Pdel.exe',nil,PChar('E:\DataProcess\del'),SW_SHOW);