Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.06.2013, 10:40   #1
mr_xxx
Пользователь
 
Регистрация: 22.03.2012
Сообщений: 99
По умолчанию delphi webbrowser Невозможно отобразить страницу

привет уважаемые
у меня вот такой вопрос
у меня есть browser
хочу чтобы когда в form1.webbrowser1 выводется Невозможно отобразить страницу то программа автоматичаски перезагружал туже страницу
допустим если webbrowser1.Navigate('http://192.168.0.5/test.php'); и если Невозможно отобразить страницу то автоматически зделал авторефреш до тех пор пока не откроет страницу
заранее всем блогодарен
mr_xxx вне форума Ответить с цитированием
Старый 28.06.2013, 12:15   #2
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

Можно как-то так извратиться:

Код:
procedure TForm1.WebBrowser1StatusTextChange(Sender: TObject;
  const Text: WideString);
begin
  if Pos ('res://ieframe.dll/', Text) > 0 then begin
    Sleep (100);
    Application.ProcessMessages;
    TWebBrowser(Sender).Navigate(TWebBrowser(Sender).Hint);
  end; {if}
end;

procedure TForm1.WebBrowser1BeforeNavigate2(Sender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
begin
  TWebBrowser(Sender).Hint := URL;
end;
Arigato вне форума Ответить с цитированием
Старый 02.07.2013, 09:23   #3
mr_xxx
Пользователь
 
Регистрация: 22.03.2012
Сообщений: 99
По умолчанию

не работает

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, OleCtrls, SHDocVw, StdCtrls;

type
  TForm1 = class(TForm)
    WebBrowser1: TWebBrowser;
    Edit1: TEdit;
    Button1: TButton;
    procedure FormActivate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure WebBrowser1StatusTextChange(ASender: TObject;
      const Text: WideString);
    procedure WebBrowser1BeforeNavigate2(ASender: TObject;
      const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
      Headers: OleVariant; var Cancel: WordBool);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 webbrowser1.Navigate(edit1.text);
end;

procedure TForm1.FormActivate(Sender: TObject);
{$J+} //writeable constants on
const
  rect: TRect = (Left:0; Top:0; Right:0; Bottom:0);
  ws : TWindowState = wsNormal;
{$J-} //writeable constants off
var
  r : TRect;
begin
WebBrowser1.Silent := True  ;
   if BorderStyle <> bsNone then
  begin
    ws := WindowState;
    rect := BoundsRect;

    BorderStyle := bsNone;
    r := Screen.MonitorFromWindow(Handle).BoundsRect;
    SetBounds(r.Left, r.Top, r.Right-r.Left, r.Bottom-r.Top) ;
  end
  else
  begin
    BorderStyle := bsSizeable;
    if ws = wsMaximized then
      WindowState := wsMaximized
    else
      SetBounds(rect.Left, rect.Top, rect.Right-rect.Left, rect.Bottom-rect.Top) ;
  end;
  webbrowser1.Align:=alclient;

end;


procedure TForm1.WebBrowser1BeforeNavigate2(ASender: TObject;
   const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
begin
TWebBrowser(ASender).Hint := URL;
end;

procedure TForm1.WebBrowser1StatusTextChange(ASender: TObject;
  const Text: WideString);
begin
  if Pos ('res://ieframe.dll/', 'невозможно отобразить страницу') > 0 then begin
    Sleep (1);
    Application.ProcessMessages;
    TWebBrowser(ASender).Navigate(TWebBrowser(ASender).Hint);
  end; {if}
end;

end.
mr_xxx вне форума Ответить с цитированием
Старый 02.07.2013, 10:07   #4
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

Понятно, что не будет работать. 'невозможно отобразить страницу' - это от куда тут взялось?
Arigato вне форума Ответить с цитированием
Старый 02.07.2013, 10:09   #5
mr_xxx
Пользователь
 
Регистрация: 22.03.2012
Сообщений: 99
По умолчанию

а что там должно быть ?
Код:
if Pos ('res://ieframe.dll/', Text) > 0 then begin
[DCC Error] Unit1.pas(81): E2251 Ambiguous overloaded call to 'Pos'
System.pas(22998): Related method: function Pos(const string; const string): Integer;
System.pas(23103): Related method: function Pos(const WideString; const WideString): Integer;

прошу если не трудно напишите конкретно что в коде не так

Последний раз редактировалось mr_xxx; 02.07.2013 в 10:12.
mr_xxx вне форума Ответить с цитированием
Старый 03.07.2013, 10:08   #6
mr_xxx
Пользователь
 
Регистрация: 22.03.2012
Сообщений: 99
По умолчанию

пожалуйста помогите это очен срочно
mr_xxx вне форума Ответить с цитированием
Старый 03.07.2013, 11:54   #7
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Вот почему подмена User-Agent'а не помогает =).
Человек_Борща вне форума Ответить с цитированием
Старый 03.07.2013, 21:19   #8
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

А что за версия Делфи?
Попробуйте Pos (WideString ('res://ieframe.dll/'), Text)
Arigato вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно создать новую страницу с исходным кодом из Textarea и отобразить Playa-RC HTML и CSS 1 27.03.2013 08:18
webbrowser iframe readystate//oleobject//отобразить часть страницы Jakethefish Работа с сетью в Delphi 2 03.09.2011 19:36
отобразить отдельную картинку в Webbrowser designer999 Работа с сетью в Delphi 0 25.01.2011 13:06
Обновить страницу, загруженную в WebBrowser Vladimir K. Общие вопросы Delphi 4 28.01.2008 19:28
Webbrowser и "Невозможно отобразить страницу" celovec Работа с сетью в Delphi 1 06.07.2007 13:45