http://blog.csdn.net/lanwilliam/article/details/5342714
将需要管理员权限的操作单独写成一个应用程序在此启动或以管理员权限重新启动当前应用程序
32 // 这里演示的是以管理员权限启动另一个应用程序
33 ProcessStartInfo start = new ProcessStartInfo();
34 start.WorkingDirectory = Environment.CurrentDirectory;
35 start.FileName = "UacValidation.exe"; // 需要以管理员权限启动的文件
36 start.Verb = "runas"; // 这个动词将弹出 UAC 提示
37 try
38 {
39 Process p = Process.Start(start);
40 }
41 catch (System.ComponentModel.Win32Exception ex)
42 {
43 // 如用户在 UAC 提示中点击取消,也就是获取管理员权限失败后的处理
44 MessageBox.Show("未获得管理员权限", "操作失败");
45 }
单独写一个exe程序,然后调用另外一个就可以了。