keistimewaan proses mengangkat programmatically dalam C#
Banyak aplikasi memerlukan keistimewaan yang tinggi untuk melaksanakan tugas -tugas tertentu, seperti memasang perkhidmatan menggunakan. Kaedah standard InstallUtil.exe
Process.Start
Pertimbangkan coretan kod berikut:
Kod ini melancarkan proses dengan keizinan pengguna standard. Untuk meningkatkan keistimewaan, ubah suai
<code class="language-csharp">ProcessStartInfo startInfo = new ProcessStartInfo(m_strInstallUtil, strExePath); System.Diagnostics.Process.Start(startInfo);</code>
startInfo
<code class="language-csharp">startInfo.UseShellExecute = true; startInfo.Verb = "runas";</code>
dan UseShellExecute
untuk true
mengarahkan sistem untuk melancarkan proses dengan keizinan yang tinggi, sama dengan klik kanan dan memilih "Run sebagai Pentadbir." Kaedah ini mencetuskan Prompt Kawalan Akaun Pengguna (UAC), yang memerlukan pengesahan pengguna. Verb
"runas"
Untuk senario di mana arahan UAC tidak diingini, membenamkan manifes aplikasi adalah disyorkan. Meminta tahap pelaksanaan "Highestestableable" dalam manifes akan mendorong UAC apabila pelancaran permohonan, memberikan keistimewaan yang tinggi kepada semua proses kanak -kanak berikutnya tanpa gangguan lanjut. Ini memberikan pengalaman pengguna yang lebih lancar.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menjalankan proses secara programatik dengan keistimewaan yang tinggi di C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!