Bagaimana cara memulai proses, seperti meluncurkan URL ketika pengguna mengklik tombol?
155
Seperti yang disarankan oleh Matt Hamilton, pendekatan cepat di mana Anda memiliki kontrol terbatas atas proses, adalah dengan menggunakan metode Mulai statis pada System.Diagnostics. Kelas proses ...
using System.Diagnostics;
...
Process.Start("process.exe");
Alternatifnya adalah menggunakan turunan dari kelas Proses. Ini memungkinkan lebih banyak kontrol atas proses termasuk penjadwalan, jenis jendela yang akan dijalankan dan, yang paling berguna bagi saya, kemampuan untuk menunggu proses selesai.
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.
Metode ini memungkinkan kontrol jauh lebih banyak daripada yang saya sebutkan.
Anda dapat menggunakan metode System.Diagnostics.Process.Start untuk memulai proses. Anda bahkan dapat meneruskan URL sebagai string dan itu akan memulai peramban default.
sumber
Seperti yang Matt katakan, gunakan Process.Start .
Anda dapat mengirimkan URL, atau dokumen. Mereka akan dimulai oleh aplikasi terdaftar.
Contoh:
Ini akan memulai Notepad.exe dengan Text.Txt dimuat.
sumber
Win32Exception
(0x80004005) "Tidak ada aplikasi yang dikaitkan dengan file yang ditentukan untuk operasi ini"Saya menggunakan yang berikut ini di program saya sendiri.
Ini agak mendasar, tetapi itu berhasil bagi saya.
sumber
sumber
Anda dapat menggunakan sintaks ini untuk menjalankan aplikasi apa pun:
Dan yang sama untuk URL. Cukup tulis URL Anda di antara ini
()
.Contoh:
sumber
Gunakan kelas Proses . Dokumentasi MSDN memiliki contoh cara menggunakannya.
sumber
sumber
Nyatakan ini
Dan letakkan ini di dalam fungsi Anda (perhatikan bahwa "checkInstalled" adalah opsional, tetapi jika Anda akan menggunakannya, Anda harus mengimplementasikannya)
CATATAN: Saya tidak yakin apakah ini berfungsi ketika lebih dari satu instance dari .exe berjalan.
sumber
Sertakan
using System.Diagnostics;
.Dan kemudian panggil ini
Process.Start("Paste your URL string here!");
Coba sesuatu seperti ini:
Harap perhatikan bahwa ini adalah contoh halaman ASP.NET sebagai contoh. Anda harus mencoba dan berimprovisasi sedikit.
sumber
Untuk memulai Microsoft Word misalnya, gunakan kode ini:
Untuk penjelasan lebih lanjut, lihat tautan ini .
sumber
Jika menggunakan Windows
Bekerja untuk .Net Framework tetapi untuk Net core 3.1 juga perlu mengatur UseShellExecute menjadi true
sumber