![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как передать строку в коммандную строку... [D7, XP]
mctarik © (2006-06-21 08:44:00)При вводе в едит айпишника, передать переменную в коммандную строку?
Далее показано место вставки {168.192.1.1}
function TExeFrm.ExecCmd(const aCommand, aPath: String; const aShow, aWaitExit: Boolean): Boolean;
var
pi:PROCESS_INFORMATION;
si:STARTUPINFO;
cmdLine,Path: String;
begin
ZeroMemory(@si,sizeof(si));
si.cb:=SizeOf(si);
si.dwFlags := STARTF_FORCEONFEEDBACK+STARTF_USESHOWWINDOW;
if aShow then si.wShowWindow := SW_SHOWNORMAL else si.wShowWindow := SW_HIDE;
Path := aPath;
cmdLine := aCommand;
Result :=
CreateProcess(nil, PChar(cmdLine), nil, nil, False, 0, nil, PChar(Path), si, pi);
if Result then
begin
CloseHandle(pi.hThread);
if aWaitExit then WaitForSingleObject( pi.hProcess, infinite );
CloseHandle(pi.hProcess);
end;
end;
Чтото в этом роде...
procedure TExeFrm.PingBtnClick(Sender: TObject);
var
IP : String;
begin
IP := IPedit.Text;
if IP <> '' then // Проверка на предмет пустого ввода (Не введён IP_ишник)
ExecCmd('d:\windows\system32\cmd.exe /c ping.exe {192.168.1.1}>\Ping_IP.txt','d:\windows\system32\',true,true) { здесь вставить String(IP)}
else
// Мессага Ошибки!
MessageBox(Handle, ' Вы не ввели IP_адрес! ' + #13 + #10 +
'Пожалуйста введите IP' + #13 + #10 +
'и попробуйте ещё раз!' + #13 + #10,
'Внимание: Ошибка!', MB_ICONERROR or MB_OK);
exit;
end;
end.
mctarik (2006-06-21 22:01:00) [1]
> Ega23 © (21.06.06 15:48) [5]
> Leonid Troyanovsky © (21.06.06 19:12) [6]
Пасибо братцыОгро_мноЕ!
С Уважением mctarik!
Leonid Troyanovsky (2006-06-21 19:12:00) [2]
> mctarik © (21.06.06 14:58) [3]
> А Как мона при выполнении ping.exe передать данные в memo?
http://groups.google.com/group/borland.public.delphi.winapi/msg/9e51c6861b0769dd
--
Regards, LVT.
Ega23 (2006-06-21 15:48:00) [3]http://dfc.com.ru/?sid=2&id=7&itemid=2
novill (2006-06-21 15:30:00) [4]1. разбираться с перенаправлением stdout
2. Если не обязательно ping использовать, используй компонент. В инди такой был...
mctarik (2006-06-21 14:58:00) [5]А Как мона при выполнении ping.exe передать данные в memo?
Если мона для варианта Leonid Troyanovsky © (21.06.06 09:09) [1]
novill (2006-06-21 09:34:00) [6]или так
'd:\windows\system32\cmd.exe /c ping.exe '+Edit1.text+'>\Ping_IP.txt',
Leonid Troyanovsky (2006-06-21 09:09:00) [7]
> mctarik © (21.06.06 08:44)
> Чтото в этом роде...
ExecCmd(Format('cmd /c ping %s', [Edit1.Text], ..)
--
Regards, LVT.