Как запустить процесс, например, запустить URL-адрес, когда пользователь нажимает кнопку?
155
Как предложил Мэтт Гамильтон, быстрый подход, при котором вы имеете ограниченный контроль над процессом, заключается в использовании статического метода Start в классе System.Diagnostics.Process ...
using System.Diagnostics;
...
Process.Start("process.exe");
Альтернативой является использование экземпляра класса Process. Это дает гораздо больший контроль над процессом, включая планирование, тип окна, в котором он будет выполняться, и, что наиболее полезно для меня, возможность ожидания завершения процесса.
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.
Этот метод позволяет гораздо больше контроля, чем я упоминал.
Вы можете использовать метод System.Diagnostics.Process.Start, чтобы запустить процесс. Вы даже можете передать URL-адрес в виде строки, и он откроет браузер по умолчанию.
источник
Как говорит Мэтт, используйте Process.Start .
Вы можете передать URL или документ. Они будут запущены зарегистрированным приложением.
Пример:
Это запустит Notepad.exe с загруженным Text.Txt.
источник
Win32Exception
(0x80004005) «Нет приложения, связанного с указанным файлом для этой операции»Я использовал следующее в моей собственной программе.
Это немного элементарно, но это делает работу за меня.
источник
источник
Вы можете использовать этот синтаксис для запуска любого приложения:
И то же самое для URL. Просто напишите свой URL между этим
()
.Пример:
источник
Используйте класс Process . В документации MSDN есть пример, как его использовать.
источник
источник
Объявите это
И поместите это в вашу функцию (обратите внимание, что checkInstalled не является обязательным, но если вы будете использовать его, вы должны реализовать его)
ПРИМЕЧАНИЕ. Я не уверен, работает ли это, когда запущено более одного экземпляра .exe.
источник
Включить
using System.Diagnostics;
.А потом позвони
Process.Start("Paste your URL string here!");
Попробуйте что-то вроде этого:
Обратите внимание, что это пример страницы ASP.NET в качестве примера. Вы должны попытаться импровизировать немного.
источник
Например, чтобы запустить Microsoft Word , используйте этот код:
Для получения дополнительных объяснений, проверьте эту ссылку .
источник
При использовании на Windows
Работает для .Net Framework, но для Net core 3.1 также необходимо установить для UseShellExecute значение true
источник