2017-04-11 113 views
1

我想在我的應用程序中創建一個簡單的Google Maps(使用WebBrowser),您可以在其中輸入地址。開始時它正在工作,但幾天後它告訴我,我正在爲Google地圖使用不兼容的瀏覽器。 下面是簡單的代碼:Visual Studio 2017中不兼容的瀏覽器(WebBrowser)

private void searchData_Click(object sender, EventArgs e) 
    { 
     string rue = textBoxRue.Text; //address 

     // Google Maps 
     try 
     { 
      StringBuilder requete = new StringBuilder(); 

      requete.Append("http://maps.google.com/maps?z=1&t=m&q="); 

      if (rue != string.Empty) 
      { 
       requete.Append(rue); 
      } 


      webBrowser1.Navigate(requete.ToString()); 
     } 

     catch 
     { 
      MessageBox.Show("Erreur lors de l'exécution de la requête"); 
     } 
    } 

是否有人有問題的想法?

+0

'catch(Exception e)''並在這裏發佈'e'。 – Sinatr

+0

「它告訴我,我正在使用不兼容的瀏覽器的谷歌地圖」***具體***:什麼是錯誤信息? – spender

+0

VS和.NET使用Edge瀏覽器,嘗試打開它並從那裏訪問相同的網站。如果您使用的是舊版Windows,則可能會使用IE。 –

回答

0

Visual Studio默認爲IE7。如果您控制網站,則可以通過向網站添加元標記來強制它使用更新的版本。我認爲情況並非如此。相反,您將不得不使用RegEdit在目標機器上的以下位置添加DWord。

32位: 電腦\ HKEY_LOCAL_MACHINE \ SOFTWARE \微軟\的Internet Explorer \ MAIN \ FeatureControl \ FEATURE_BROWSER_EMULATION

64位: 電腦\ HKEY_LOCAL_MACHINE \ SOFTWARE \ WOW6432Node \微軟\的Internet Explorer \ MAIN \ FeatureControl \ FEATURE_BROWSER_EMULATION

DWord的名稱是您可執行文件的名稱,例如。 「myprogram.exe」沒有任何路徑。該值是要模擬的IE的版本號加上三個零。對於IE11,您的十進制值將是「11000」。

請注意,這將影響所有用戶。如果出於某種原因,您只想影響當前用戶,您將改爲使用HKEY_CURRENT_USER集。

我希望有幫助。