понеділок, 1 березня 2010 р.

EmbeddedWB, власний User Agent

Інколи виникає потреба встановити власний User Agent для браузера, наприклад, для того щоб відображати сайт чи його деякі сторінки лише в вашому браузері. В EmbeddedWb це все реалізовано на найпростішому рівні.

Декілька рядків про User Agent.

При відвідуванні веб-сторінки, браузер передає User-Agent рядок на сервер хостингу сайту, який ви відвідуєте. Цей рядок показує, який браузер ви використовуєте, номер версії, а також додаткову інформацію про вашу ситему. такі як операційна система і її версія, версію Microsoft. Net FrameWork. Веб-сервер може використувату дану інформацію для представлення контенту, який адаптований для вашого браузеру.

EmbeddedWB і User Agent.

В EmbeddedWB строку User-Agent можна змінювати в Object Inspector на вкладці Properties або відповідним кодом.
За User-Agent віповідають такі пункти з властивостей:
 1) UserAgent - змінна з типом string в яку вписується новий User-Agent;
 2) UserAgentMode - тип, що відповідає за режим відображення User-Agent.

UserAgentMode може приймати 3 значення:
 а) uaDefault - має таке саме значення User-Agent, як і в встановленому в системі браузері ІЕ;
 б) uaInternal - унікальне значення User-Agent для вашого браузеру;
 в) uaRegistry - встановлення власного User-Agent через реєстр, буде змінений на стандартний після закриття браузеру.

Реалізація кодом:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, OleCtrls, SHDocVw_EWB, EwbCore, EmbeddedWB, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    EmbeddedWB1: TEmbeddedWB;
    Button4: TButton;
    procedure Button4Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button4Click(Sender: TObject);
begin
EmbeddedWB1.Navigate('http://whatsmyuseragent.com/');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
EmbeddedWB1.UserAgentMode:=uaDefault;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
EmbeddedWB1.UserAgent:='My browser';
EmbeddedWB1.UserAgentMode:=uaInternal;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
EmbeddedWB1.UserAgent:='My browser1';
EmbeddedWB1.UserAgentMode:=uaRegistry;
end;

end.

Скрін має такий вигляд:

Офіційний сайт розробників.

Немає коментарів:

Дописати коментар