2013-02-01 33 views
5

Sau khi sử dụng bộ điều khiển trình duyệt web trong một thời gian, tôi quyết định thử một lần nữa, vì các vấn đề của webbrowser mà tôi đã gặp phải, tốc độ thấp và hiệu suất làm suy giảm. Tôi đã tải xuống phiên bản mới nhất của geckofx (16.0.0.2) và xulrunner (16.0.2) và tạo ra một điều khiển geckoWebbrowser. Khi tôi cố gắng điều hướng đến một trang web, tôi đã nhận được javascript.alert rằng trình duyệt web của tôi không được hỗ trợ và tôi nên sử dụng firefox> 2.0.0.2, điều này tất nhiên là vô lý. Vấn đề là - tôi giả định rằng chuỗi phát hiện useragent là "Mozilla/5.0 (Windows NT 6.1; WOW64; rv: 16.0) Gecko//16.0" thay vì chuỗi firefox bình thường "Mozilla/5.0 (Windows NT 6.1; WOW64 ; rv: 18.0) Gecko/20100101 Firefox/18.0 ". '20100101' và 'Firefox' bị thiếu trong chuỗi useragent của kiểm soát. Có cách nào để thay đổi nó bằng C#? Tôi sử dụng C# winforms .net 4.5.Cách đặt tác nhân người dùng trong GeckoFX?

+0

Xin vui lòng gửi một số liên kết hoặc bổ sung thông tin về biên dịch. –

+0

Tôi không chắc chắn những gì bạn đang tìm kiếm ... Tôi sẽ cung cấp cho bạn một số liên kết, hy vọng sẽ trả lời câu hỏi của bạn. GeckoFX = "https://bitbucket.org/geckofx", XULRunner = "http://ftp.mozilla.org/pub/mozilla.org/xulrunner/releases/". Câu hỏi đã được trả lời. – pzogr

Trả lời

11

Từ http://www.webprogrammingblog.com/geckofx-set-user-agent/:

public Form1() 
{ 
    InitializeComponent(); 
    Gecko.Xpcom.Initialize("c:\\tools\\xulrunner"); 
    myBrowser = new GeckoWebBrowser(); 
    myBrowser.Parent = this; 
    myBrowser.Dock = DockStyle.Fill; 

    string sUserAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; pl; rv:1.9.1) Gecko/20090624 Firefox/3.5 (.NET CLR 3.5.30729)"; 
    Gecko.GeckoPreferences.User["general.useragent.override"] = sUserAgent; 
} 
+0

Tuyệt đối tuyệt vời! Cảm ơn bạn! Tôi chỉ phải thay thế phần bầu trời vì nó không còn tồn tại nữa. Lệnh cuối cùng như sau: Gecko.GeckoPreferences.User ["general.useragent.override"] = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv: 18.0) Gecko/20100101 Firefox/18.0"; – pzogr

+0

@pzogr Tôi đã chỉnh sửa câu trả lời để phù hợp với điều đó. –

Các vấn đề liên quan