本帖最后由 lightdc4 于 2013-09-13 17:41:05 编辑

解决方案 »

  1.   

    用xe4测试,毫无问题,xp系统
    winexec(pansichar('c:\windows\system32\calc.exe'),SW_NORMAL);另外,别再用winexec了,这玩意是win16中古时代的东东了,它之所以还活着只是为了兼容中古时代的代码
      

  2.   

    用《windows核心编程》中建议的用法,createprocessconst
     path = 'c:\windows\system32\calc.exe';
    var
     si:STARTUPINFOW;
     pi:PROCESS_INFORMATION;
    begin
      ZeroMemory(@si, SizeOf(si));
      ZeroMemory(@Pi,SizeOf(pi));
      si.cb :=SizeOf(si);  if CreateProcessW(path,'',nil,nil,False,0,nil,nil,si,pi) then
       begin
         CloseHandle(pi.hProcess);
         CloseHandle(pi.hThread);
       end;