如果我在Visual Studio -VB.net中使用standart web瀏覽器,最終用戶將使用哪個版本的Internet Explorer,我的(調試)PC上的版本還是他的PC上的版本?有沒有可能改變這種情況?最終用戶將擁有哪個版本的Web瀏覽器?
回答
我遇到了瀏覽器版本控制方面的問題,它受到用戶在PC上安裝的瀏覽器的影響。使用IE10/11,您無法在.NET應用程序中正確設置兼容模式。
我的解決辦法是使用Gecko的是火狐for .NET的相對作爲替換對web瀏覽器:
您需要下載和Geckofx-Core and Geckofx-Winforms dll的添加引用。
Imports Gecko
Imports Gecko.DOM
...
'In your form load:
Gecko.Xpcom.Initialize("xulrunner\")
..
'In a function:
'Here i used a Tab
Dim tabA As New TabPage
Dim browser As New GeckoWebBrowser
web_br = browser
browser.Dock = DockStyle.Fill
tabA.Controls.Add(browser)
Me.TabControl1.TabPages.Clear()
Me.TabControl1.TabPages.Add(tabA)
Me.TabControl1.SelectedTab = tabA
CType(TabControl1.SelectedTab.Controls.Item(0), GeckoWebBrowser).Navigate(Application.StartupPath & "\PathTo\index.html")
我使用的是Awesomium,但它沒有x64的支持,所以我切換回IE瀏覽器,但我仍然不確定它是如何工作的。壁虎是我正在考慮的另一種選擇。但我只需要我的應用程序來運行IE10最低限度,所以使用資源管理器會更容易。 –
我必須切換,因爲IE10和更新版本阻止直接從磁盤加載的網站與http:// url的某些功能,我不想將網絡服務器添加到我的應用中。 –
在VB/NET和C#總是默認顯示7「文件模式」,這意味着該瀏覽器充當的Internet Explorer 7,無論實際的版本是什麼在IE頁數web瀏覽器控件。
只要用戶的計算機上安裝了該版本或更高版本,就有辦法讓瀏覽器控件像更新版本的IE一樣運行。通常解決方案是使用FEATURE_BROWSER_EMULATION註冊表項;將X-UA-Compatible標題放入要顯示的HTML文件中也應該有所裨益。
另請參閱:Will the IE9 WebBrowser Control Support all of IE9's features, including SVG?
謝謝你的回答,我正在檢查。但我認爲這不會完成這項工作。如果用戶只有IE9,它將最多運行IE9。有沒有辦法以某種方式「編譯IE 10或11」與應用程序一起? –
- 1. 哪個瀏覽器擁有這個奇怪的用戶代理? (IOS設備)
- 2. 用戶代理瀏覽器版本
- 3. 爲最終用戶版本化Web Apps有哪些常規策略?
- 4. 多個用戶使用Web瀏覽器
- 5. 「最後2個版本」有哪些瀏覽器會自動執行autoprefixer目標?
- 6. 如何知道瀏覽器使用javascript的哪個版本?
- 7. 哪個是NLog最好的瀏覽器?
- 8. Web瀏覽器控件在最新IE版本中運行
- 9. LESS在客戶端運行的最低瀏覽器版本
- 10. 瀏覽器的JavaScript版本
- 11. 強制用戶擁有應用程序的最新版本
- 12. 最終用戶最有效的界面:Winforms/WCF與網頁瀏覽器訪問
- 13. 哪個網頁瀏覽器最安全?
- 14. 在新瀏覽器選項卡上的最終用戶會話
- 15. 僅將BabelJS用作舊版瀏覽器的後備版本
- 16. 哪個版本的sql server 2008將在MSDN上擁有分析器?
- 17. Selenium 3中哪個ChromeDriver和Chrome瀏覽器版本兼容?
- 18. 瀏覽器版本檢測
- 19. WPF WebBrowser瀏覽器版本
- 20. 瀏覽器版本jQuery中
- 21. Matlab瀏覽器版本
- 22. Flash版本跨瀏覽器
- 23. 基於瀏覽器版本
- 24. 瀏覽器版本測試
- 25. 是否有基於瀏覽器的版本控制客戶端?
- 26. 哪些瀏覽器支持數據URI,以及哪些版本?
- 27. 最終用戶瀏覽器和操作系統配置
- 28. 是否有可能找到哪個IE用戶真的擁有瀏覽器/文檔模式組合?
- 29. Chrome瀏覽器擁有重裝
- 30. 哪些版本的iOS和Android Web瀏覽器已經支持ES6模塊?
您在項目中引用的版本。 – Steve
答案可以有不同的含義,這不是一個明確的答案 –
不,這很清楚。在你的項目中,你引用了一個特定版本的DLL(網頁瀏覽器)。如果用戶有一個新版本,向後兼容性基本上將它視爲您的版本,如果他們有一箇舊版本,它將失敗,本質上,使用沒有版本。所以答案是,無論你在項目中引用什麼版本。 – Steve