IShellExecuteInfo.Parameters

Синтаксис Fore

Parameters: String;

Синтаксис Fore.NET

Parameters: String;

Описание

Свойство Parameters определяет параметры командной строки, с которыми открывается файл (приложение).

Пример Fore

Для выполнения примера разместите на форме компоненты: два Button, два Label и Timer с наименованиями «Button1», «Button2», «Label1», «Label2» и «Timer1» соответственно.

Добавьте ссылки на системные сборки: Host, Ui, Forms.

Пример является обработчиком события OnClick для компонента «Button1», OnClick для компонента «Button2», OnTimer для компонента «Timer1».

Class TESTForm: Form
    Button1: Button;
    Button2: Button;
    Label1: Label;
    Label2: Label;
    Timer1: Timer;
    Process: IShellProcess;

    
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
    
Var
        Info: IShellExecuteInfo;
    
Begin
        Info := 
New ShellExecuteInfo.Create;
        Info.Directory := 
"C:\Program Files\Foresight\Foresight Analytics Platform 9.2";
        Info.File := 
"Studio.exe";
        Info.Parameters := 
"Repository/user@password";
        Info.WaitToTerminate := True;
        Info.WaitTimeout := 
10000
        Process := 
New ShellProcess.Create;
        Process.Start(Info);
        Timer1.Enabled := 
True;
    
End Sub Button1OnClick;

    
Sub Timer1OnTimer(Sender: Object; Args: IEventArgs);
    
Begin
        
If Process <> Null Then
            
If Not Process.HasExited Then
                Label1.Text := 
"Процесс выполняется";
            
Else
                Label1.Text := 
"Процесс завершен. Код завершения(0-Программа завершила выполнение;-1-Программа завершена принудительно): " + Process.ExitCode.ToString;
                Label2.Text := 
"Поток вывода:" + Process.Output + ";  " + "Поток ошибок:" + Process.Error;
            
End If;
        
Else
            Label1.Text := 
"Процесс не запущен";
        
End If;
    
End Sub Timer1OnTimer;
    
    
Sub Button2OnClick(Sender: Object; Args: IMouseEventArgs);
    
Begin
        Process.Kill;
    
End Sub Button2OnClick;
End Class TESTForm;

После выполнения примера:

  1. При нажатии на кнопку «Button1» будет запущено приложение «Форсайт. Аналитическая платформа». Платформа запустится с параметром для автоматического подключения к схеме репозитория «Repository».

  2. В компоненте «Label1» будут отображаться сообщения о статусе выполнения приложения.

  3. В течение десяти секунд текущее приложение будет ожидать завершения его работы и будет недоступно. По истечении этого времени текущее приложение вновь станет доступно для работы.

  4. При нажатии на кнопку «Button2» будет прерван процесс выполнения и приложение завершит свою работу.

  5. После завершения процесса в компоненте «Label2» будет отображаться сообщение о потоке вывода и ошибок.

См. также:

IShellExecuteInfo