2017-05-23 52 views
0

我做了一个winForms应用程序,它使用web浏览器控件,使用户可以使用他的google或facebook帐户登录,然后在获取信息或任何错误或异常后,包含web浏览器的表单将关闭并返回回到主窗体中,我执行以下操作,准备请求,使用该请求导航(),然后使用Navigated事件捕获响应。 在代码中所有工作都很好,但是当我构建为Release并安装应用程序时,Navigated事件永远不会启动,这真的很奇怪,因为我的代码中没有任何内容处于调试状态,任何想法如何解决此问题?WinForms导航事件

在窗体的负载事件中的代码是:

private void GoogleLogin_Load(object sender, EventArgs e) 
    { 
     AuthHelper authHelper = new AuthHelper(); 

     Uri loginURI = authHelper.GetGoogleAuthURI(_appID, redirectURI); 
     GoogleLoginControl.Navigate(loginURI); 
    } 

在在导航中事件的web浏览器控件的代码

private void GoogleLoginControl_Navigated(object sender, WebBrowserNavigatedEventArgs e) 
    { 
     CoreStaticMembers.ologger.LogToFile("Navigated event with the absolute URL "+ e.Url.AbsoluteUri); 
     MessageBox.Show("Navigated event is fired"); 
     ///used if parameters are empty so ignore the following messages 
     bool ignore = false; 
     string code = null; 

     if (e.Url.AbsolutePath.Equals("/connect/login_success.html")) 
     { 
      AuthHelper authHelper = new AuthHelper(); 
      //NameValueCollection parameters = HttpUtility.ParseQueryString(e.Url.Query); 
      try 
      { 
       NameValueCollection parameters = HttpUtility.ParseQueryString(e.Url.Query); 
       if (parameters != null) 
       { 
        string jsonResponse = null; 

和之后,我继续正常认证和数据获取,请记住,只有当我构建为Release然后安装应用程序时,才会出现此问题,并且导航甚至会为Web浏览器控件触发,所以doe S为父窗体的Load事件 预先感谢

UPDATE 的方式我也试图与所需的网址导航,当我通过调用形式的构造函数中初始化函数初始化的形式,但同样的问题出现,

+0

请添加您的代码 –

+0

请加好标点符号。 –

回答

0

我发现这个问题是与一个DLL文件相关的兼容性问题,特别是“Newtonsoft”DLL。