Показать сообщение отдельно
  #1  
Старый 15.11.2010, 09:28
MAcK MAcK вне форума
Прохожий
 
Регистрация: 24.07.2008
Сообщения: 39
Репутация: 10
Плохо CreateProcess. Не запускает программу

Пробую открыть udl файл, но получаю ошибку. Как правильно открыть этот файл?
PS: не открывается если файл имеет неправильные данные подключения к БД.

Код:
function WinExecAndWait(FileName:String; Visibility : integer):Cardinal;
var
zAppName:array[0..512] of char;
zCurDir:array[0..255] of char;
WorkDir:String;
StartupInfo:TStartupInfo;
ProcessInfo:TProcessInformation;

begin
  StrPCopy(zAppName,FileName);
  GetDir(0,WorkDir);
  StrPCopy(zCurDir,WorkDir);
  FillChar(StartupInfo,Sizeof(StartupInfo),#0);
  StartupInfo.cb := Sizeof(StartupInfo);

  StartupInfo.dwFlags := STARTF_USESHOWWINDOW;
  StartupInfo.wShowWindow := Visibility;

  if not CreateProcess(PChar(FileName), nil, nil, nil, false, CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, nil, nil, StartupInfo, ProcessInfo) then begin
    Result := 0;
  end else begin
    WaitforSingleObject(ProcessInfo.hProcess,200);
    GetExitCodeProcess(ProcessInfo.hProcess, Result);
  end;
end;
Вложения
Тип файла: rar myChart.rar (293 байт, 1 просмотров)
Ответить с цитированием