Delphi: Как указать переменные в качестве параметра в команде cmd - PullRequest
0 голосов
/ 17 января 2019

Вместо передачи числа в качестве параметра. Я хочу передать переменную для IP-адреса. Как я могу это сделать? Я уже пробовал оператор +, но он не работал.

ShellExecute(
    Application.handle, 
    'open', 
    'cmd.exe', 
    PChar('/c "mysqldump -h 192.168.100.1 -uroot database table > C:/Users/user1/Desktop/export.sql"'), 
    nil, 
    SW_show
);

1 Ответ

0 голосов
/ 17 января 2019

Если я правильно понял ваш вопрос, вы ищете что-то для составления командной строки с использованием переменных. Вы можете сделать это несколькими способами, это один (с использованием функции Format):

var
  IPAddress : string;
begin
  IPAddress := '192.168.100.1';

  ShellExecute(
    Application.Handle,
    'open',
    'cmd.exe',
    PChar(Format('/c "mysqldump -h %s -uroot database table > C:/Users/user1/Desktop/export.sql"', [IPAddress])),
    nil,
    SW_SHOW
  );
end;
...