vs2013调试一闪而过时闪出来,

他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)C# Vs2017启动调试,debug或者release调试状态闪一下程序就独立运行了 - 邓疯子 - 博客园
最近发现一个没太大影响但是很奇怪的事情,编辑状态下点击调试,发现和之前的项目不一样,调试状态闪一下,程序就“独立了”,不受调试状态的控制了。
找了半天才发现,是在program.cs里加了一段代码引起的。
这段代码是用于让自己写的软件能设置本地IP地址用的,需要获取管理员权限。代码如下:
* 当前用户是管理员的时候,直接启动应用程序
* 如果不是管理员,则使用启动对象启动程序,以确保使用管理员身份运行
//获得当前登录的Windows用户标示
System.Security.Principal.WindowsIdentity identity = System.Security.Principal.WindowsIdentity.GetCurrent();
//创建Windows用户主题
Application.EnableVisualStyles();
System.Security.Principal.WindowsPrincipal principal = new System.Security.Principal.WindowsPrincipal(identity);
//判断当前登录用户是否为管理员
if (principal.IsInRole(System.Security.Principal.WindowsBuiltInRole.Administrator))
//如果是管理员,则直接运行
Application.EnableVisualStyles();
Application.Run(new Server());
//创建启动对象
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
//设置运行文件
startInfo.FileName = System.Windows.Forms.Application.ExecutableP
//设置启动参数
startInfo.Arguments = String.Join(" ", Args);
//设置启动动作,确保以管理员身份运行
startInfo.Verb = "runas";
//如果不是管理员,则启动UAC
System.Diagnostics.Process.Start(startInfo);
System.Windows.Forms.Application.Exit();
//Application.EnableVisualStyles();
//Application.Run(new Server());
这样程序调试启动后就获取了管理权限,而且自己new了一下自己,因此调试状态自动关闭了。
恢复这行代码的时候,调试状态就正常回来了,说明其余代码没有问题。}

我要回帖

更多关于 vs调试一闪而过 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信