![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Выполнение программ
veles © (2001-12-27 08:44:00)Извините за непонимание,
почему, когда путь к программе указывается явно:
WinExec ("c:\Probe\Probe.exe", SW_SHOW);
все работает, а если взять путь вот таким образом:
Edit2.Text := """ + Label1.Caption + "\" + Edit1.Text + """;
WinExec ("Edit2.Text", SW_SHOW);
То в лучшем случае просто ничего не происходит, если я убираю кавычки:
Edit2.Text := Label1.Caption + "\" + Edit1.Text;
то просто выдает ошибку типов...
Monk (2002-01-06 16:13:00) [1]procedure TForm1.FileListBox1Click(Sender: TObject);
begin
Edit2.Text := Label1.Caption + "\" + Edit1.Text;
WinExec (Pchar(Edit2.Text), SW_SHOW);
end;
MBo (2001-12-27 10:00:00) [2]у меня работает
veles (2001-12-27 09:43:00) [3]procedure TForm1.Button2Click(Sender: TObject);
begin
WinExec (PChar(Edit2.Text), SW_SHOW);
end;
procedure TForm1.FileListBox1Click(Sender: TObject);
begin
Edit2.Text := Label1.Caption + "\" + Edit1.Text;
end;
Где ошибка ? {Invalid tipe cast}
MBo (2001-12-27 08:59:00) [4]>WinExec ("Edit2.Text", SW_SHOW);
так ты пытаешься выполнить программу edit2.Text ;)
WinExec требует первым параметром PChar
если строка в кавычках (константа), она неявно приводится к PChar
если передаешь строковую переменную, приводи сам
WinExec (PChar(Edit2.Text), SW_SHOW);