C# Winform应用程序可以';由于System.Security.SecurityException,无法启动

C# Winform应用程序可以';由于System.Security.SecurityException,无法启动,c#,winforms,C#,Winforms,由于System.Security.SecurityException,我的Windows窗体应用程序未启动。 下面是Program.cs上的代码 [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new B

由于System.Security.SecurityException,我的Windows窗体应用程序未启动。 下面是Program.cs上的代码

 [STAThread]
    static void Main()
    {

        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        Application.Run(new BaseForm());
    }
如下所示

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()
<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>

我不知道如何解决这个问题。。。非常感谢您的任何提示。

我在传递此安全异常方面做了很多努力。阅读大量的博客,参与讨论,但毫无结果

最终在msdn中找到了“启用ClickOnce安全设置”。我只是按照这些步骤禁用了项目属性中的安全设置

这里有一个链接,希望对你有所帮助:

自己解决问题

正在检查my_projectapp.config,添加了未知的安全策略设置,如下所示

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()
<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调试模式下启动winform应用程序。

窗体启动中有什么内容?