Как передать параметры в exe?

Я использую psexec на своем сервере для запуска exe-файла на другом сервере. Как передать параметры другому exe ?

exe, который я запускаю на своем сервере, - это psexec, который, в свою очередь, должен запускать exe с именем vmtoolsd.exe находится в другой системе. Как передать параметры vmtoolsd.exe ? Кроме того, где я могу передать его ? Я бы передал это как часть информации.Споры ? Я пробовал, но не получается.

ProcessStartInfo info = new ProcessStartInfo(@"C:Tools");
info.FileName = @"C:Toolspsexec.exe";
info.Arguments = @"" + serverIP + @"C:Program FilesVMwareVMwareToolsvmtoolsd.exe";
Process.Start(info);

также, как часть информации.Аргументы я должен предисловие путь vmtoolsd.exe с IP-адресом, за которым следует путь к диску ?

3 ответов


надеемся, что приведенный ниже код может помочь.

код из первого .exe:

Process p= new Process();
p.StartInfo.FileName = "demo.exe";
p.StartInfo.Arguments = "param1 param2";
p.Start();
p.WaitForExit();

or

Process.Start("demo.exe", "param1 param2");

код в демо.exe:

static void Main (string [] args)
{
  Console.WriteLine(args[0]);
  Console.WriteLine(args[1]);
}

вы можете увидеть его в следующем сообщении (ответ @AndyMcCluggage):

как запустить процесс с C#?

using System.Diagnostics;
...
Process process = new Process();
// Configure the process using the StartInfo properties.
process.StartInfo.FileName = "process.exe";
process.StartInfo.Arguments = "-n";
process.StartInfo.WindowStyle = ProcessWindowStyle.Maximized;
process.Start();
process.WaitForExit();// Waits here for the process to exit.

он обеспечивает гораздо больше контроля, как вы можете видеть в MSDN, но в основном управление аргументами довольно легко, как вы можете видеть, просто изменить свойство со строкой.

обновление: так как с кодом фрагмента выше вы будете запускать PsExec, основанный on:

программы PsExec

формат, который вы должны использовать это:

psexec @run_file [options] command [arguments]

где: arguments Arguments to pass (file paths must be absolute paths on the target system).

так как процесс, который вы начинаете,psexec, в process.StartInfo.Arguments вам нужно будет поместить все параметры, которые ему понадобятся, в цепочку Сигле:@run_file [options] command [arguments].


Правой Кнопкой Мыши на .exe-файл-->goto shortcut-->на вкладке target напишите аргумент в крайнем правом углу... в моем случае это сработало