我有项目FiddlerApplication可以为我节省一些会话。当我在重新启动后首次启动程序时,100% 失败,然后 10% 失败,90% 工作。
最大的问题是当它失败时它不会在 try/catch 中捕获任何异常。这是我的代码
static class Program
{
[STAThread]
static void Main(string[] args)
{
try
{
browserToRun.GoTo("www.test.com");
FiddlerApplication.AfterSessionComplete += FiddlerApplication_AfterSessionComplete;
//HERE it fails
FiddlerApplication.Startup(8888, true, true, true);
FiddlerApplication.Shutdown();
}
catch (Exception ex)
{
// it is not getting to here
FiddlerApplication.AfterSessionComplete -= FiddlerApplication_AfterSessionComplete;
FiddlerApplication.Shutdown();
}
}
public static void FiddlerApplication_AfterSessionComplete(Session sess)
{
try
{
if (!sess.fullUrl.Contains("test"))
return;
GlobalDownloadLink = sess.fullUrl;
}
catch (Exception ex)
{
successful = false;
throw new System.ArgumentException(ex.Message, "FiddlerApplication_AfterSessionComplete");
}
}
}
Run Code Online (Sandbox Code Playgroud)
我的新更新 Apconfig 出现新错误配置系统无法初始化
<configuration>
<runtime>
<legacyCorruptedStateExceptionsPolicy enabled="true" />
</runtime>
<configSections>
</configSections>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup>
<appSettings>
<add key="BrowserShow" value="Y"/>
<add key="DebugCreate" value="true"/>
<add key="FileName10" value="AccountActivity"/>
<add key="FileName20" value="ForeignActivities"/>
<add key="FileNameShar" value="MatbeotSchirim"/>
</appSettings>
</configuration>
Run Code Online (Sandbox Code Playgroud)
除非您[HandleProcessCorruptedStateExceptions]在函数(Main代码中的函数)上指定属性,否则 try..catch 块不会捕获某些异常。当然,同样可以通过修改 Oxoron 描述的配置文件来实现。