由于System.Security.SecurityException,我的Windows窗体应用程序无法启动。 这是Program.cs上的代码
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new BaseForm());
}
Stacktrace如下。
StackTrace:
System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet)
System.Security.CodeAccessPermission.Demand()
System.Windows.Forms.Application.add_ThreadException(ThreadExceptionEventHandler value)
MyApp._0.Program.Main()
我不知道解决这个问题......任何提示都会受到赞赏。
答案 0 :(得分:2)
我在传递这个安全异常时遇到了很多困难。阅读大量博客,参与讨论但没有任何成效。
最后在msdn中找到了“启用ClickOnce安全设置”。我只是遵循这些步骤并禁用了项目属性中的安全设置。
这是一个链接希望这有助于一些:http://msdn.microsoft.com/en-us/library/1sfbfyk0.aspx
答案 1 :(得分:2)
自己解决。
检查my_project app.config ,附加未知的安全策略设置,如下所示。
<runtime>
<NetFx40_LegacySecurityPolicy enabled="true" />
</runtime>
<system.web>
<membership defaultProvider="ClientAuthenticationMembershipProvider">
<providers>
<add name="ClientAuthenticationMembershipProvider" type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" />
</providers>
</membership>
<roleManager defaultProvider="ClientRoleProvider" enabled="true">
<providers>
<add name="ClientRoleProvider" type="System.Web.ClientServices.Providers.ClientRoleProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" cacheTimeout="86400" />
</providers>
</roleManager>
</system.web>
删除所有,然后在Visual Studio调试模式下启动应用程序启动。