2013-05-07 30 views
6

セットアップWebBrowserコントロール:ナビゲーションWebページには、

  • のWindows 8私は4つのWebBrowserコントロールのプロジェクトに取り組んでいます(フル)タブレット
  • .NET 2.0アプリケーション

キャンセルされましたアプリケーションがロードされると同時にいくつかのWebページにナビゲートしています。ウェブページは同じHTMLを持ちますが、異なるWebサーバーから来ています。

問題は、WebBrowserコントロールで「Webページへのナビゲーションがキャンセルされました」というメッセージが表示されることがあることです。これは、アプリケーションの起動時にのみ発生します。私はhereと記載されたソリューションを実装して、返された状態コードと奇妙なことに十分な状態コードを取得しました。これは200 = OKステータスです。

私はページをリフレッシュすると、突然正しく動作します。私はこの問題が同時航行によって引き起こされる可能性があると疑っていますが、どのように私がそれを確認できるかはわかりません。

アイデア?

答えて

3

申し訳ありませんので、ナビゲーションが終了し、次の操作を行う前に完了するのを待っていて、問題が発生していません。それは幻想的な解決策を必要としなかった問題であり、深く掘り下げる時間がなかったので、私たちはそれに行きました。

+0

私は過去にこの問題を抱えていました。集中的な調査の後、WebBrowserコントローラーが信頼済みサイトゾーンにアクセスするのを防ぐセキュリティKBをマイクロソフトから取得したようです。 –

0

WebBrowserコントロールに問題があります。私たちはWebページのURLからスクリーンショットを取得したいと思い、Webブラウザを使用しています。

private void GenerateThumbnail() 
    { 
     WebBrowser webrowse = new WebBrowser(); 
     webrowse.ScrollBarsEnabled = false; 
     webrowse.AllowNavigation = true; 

     webrowse.Navigate("https://stackoverflow.com/questions/31756420/how-to-run-asp-net-mvc-app-in-iis-10-on-windows-10"); 
     webrowse.Width = 1024; 
     webrowse.Height = 768; 
     webrowse.DocumentCompleted += webbrowse_DocumentCompleted; 
     while (webrowse.ReadyState != WebBrowserReadyState.Complete) 
     { 
      System.Windows.Forms.Application.DoEvents(); 
     } 
    } 
    private void webbrowse_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) 
    { 
     WebBrowser webrowse = sender as WebBrowser; 
     Bitmap bitmap = new Bitmap(webrowse.Width, webrowse.Height); 
     webrowse.DrawToBitmap(bitmap, webrowse.Bounds); 
     MemoryStream stream = new MemoryStream(); 
     bitmap.Save(stream, System.Drawing.Imaging.ImageFormat.Jpeg); 
     byte[] strbytes = stream.ToArray(); 
     //imgscreenshot.ImageUrl = "data:image/jpeg;base64," + Convert.ToBase64String(strbytes); 
     using (MemoryStream ms = new MemoryStream(strbytes)) 
     { 
      using (System.Drawing.Image screenShotImage = System.Drawing.Image.FromStream(ms)) 
      { 
       Bitmap cp = new Bitmap(screenShotImage); 
       cp.Save(@"webPage.png", ImageFormat.Png); 
       cp.Dispose(); 
      } 
     } 
    } 

「ページへのナビゲーションがキャンセルされました」というイメージが表示されています。これはMVC Webアプリケーションからのもので、コンソールアプリケーションから正常に動作します。

関連する問題