C# Internet Explorer提示我是否要在运行';我正在运行log4net方法

C# Internet Explorer提示我是否要在运行';我正在运行log4net方法,c#,internet-explorer,log4net,bho,C#,Internet Explorer,Log4net,Bho,我在用C#编写的internetexplorer浏览器扩展中使用Log4Net。有时,Internet Explorer会提示我说“某个网站想在您的计算机上使用此程序打开web内容”,并要求我允许或不允许csc.exe。很明显,这不是网站,只有在我登录时才会发生,所以它看起来像是Log4Net。这是正常的吗?或者有没有办法让它不发生 只有在启用了保护模式时才会发生这种情况,但我需要能够在启用保护模式的情况下运行日志代码,并且不希望用户收到提示 听起来好像日志记录触发了对象的序列化。序列化的工作原

我在用C#编写的internetexplorer浏览器扩展中使用Log4Net。有时,Internet Explorer会提示我说“某个网站想在您的计算机上使用此程序打开web内容”,并要求我允许或不允许csc.exe。很明显,这不是网站,只有在我登录时才会发生,所以它看起来像是Log4Net。这是正常的吗?或者有没有办法让它不发生


只有在启用了保护模式时才会发生这种情况,但我需要能够在启用保护模式的情况下运行日志代码,并且不希望用户收到提示

听起来好像日志记录触发了对象的序列化。序列化的工作原理是检查对象、解析公共属性、创建代理类,然后编译它,因此需要调用C#编译器CSC


您可以使用手动生成序列化程序集,然后将这些程序集链接到您的应用程序中,应用程序将在运行时停止.NET生成代理。

可以。使用log4net,我只需将一个字符串传递给记录器,因此在执行任何日志代码之前,就可以将对象转换为字符串。这意味着,如果它是序列化,那么它必须是log4net内部的,对吗?我想是时候深入研究log4net代码了……事实上它根本不是log4net,它是在log4net之外的序列化代码,但是blowdart的答案是正确的,因为它是序列化。我不使用默认序列化,因此无法使用sgen。我提出了这个问题作为后续行动。