5

如果在 VisualStudio 中使用项目设置Security> Enable ClickOnce security settings>构建了 .NET 控制台应用程序,则由于权限不足而无法访问系统环境This is a partial trust application,导致以下退出应用程序的方法:SecurityException

  • Environment.Exit()
  • Environment.FailFast()
  • End语句 (Visual Basic)

如何在不遇到此异常的情况下退出应用程序?

更多细节:

异常消息是:Message=Request for the permission of type 'System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.

这完全没问题,因为他们显然想返回一个ErrorLevel,但当时无法访问系统环境。但是您是否知道过早退出尝试访问环境并因此能够在不触发异常的情况下退出的应用程序的任何方法?

到目前为止,我发现的唯一工作方法是继续执行到Main()应用程序“自然”退出的地方。但这有时会添加不需要的代码结构。这就是为什么我要问如何立即退出。

拜托,在这种情况下,我们不要通过向应用程序添加权限等来结束。让我们保持应用程序受到限制并找到退出它的方法。.NET 是否提供其他方式来立即退出应用程序而不是上述三种方式?

4

1 回答 1

1

你试过了吗

Process.GetCurrentProcess().Kill()

或者

AppDomain.Unload(AppDomain.CurrentDomain)

?

于 2013-09-11T07:05:44.253 回答