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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.10.2012, 21:55   #1
megostudent
Форумчанин
 
Регистрация: 31.12.2010
Сообщений: 320
По умолчанию Узнать доступна ли интернет страница или нет

Есть 2 мемо и 1 кнопка.
Суть: в мемо1 вводим 2 сайта (например: google.com и iuhbasde.gasd.com)
по нажатию на кнопки эти 2 сайта должны провериться на работоспособность ну или простыми словами есть ли такой сайт на просторах интернета или нет. После того как кнопка была нажата в мемо2 должны появиться 2 строки типа:
google.com - существует
iuhbasde.gasd.com - не существует.
Как я понял нам нужен компонент IdHTTP и пост запрос к сайту. Но как проверить его отстук? Подскажите.
megostudent вне форума Ответить с цитированием
Старый 21.10.2012, 22:25   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

HEAD запрос на сайт. Если ответ 200 то сайт живой, иначе не живой.
Человек_Борща вне форума Ответить с цитированием
Старый 22.10.2012, 18:43   #3
megostudent
Форумчанин
 
Регистрация: 31.12.2010
Сообщений: 320
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
idhttp1.Head(Edit1.text);
end;
ввожу в едит google.ru выдает ошибку, так же и с http://google.ru/
компонент idhttp на форме есть
Если можно то киньте примерчик плиз

Последний раз редактировалось megostudent; 22.10.2012 в 21:51.
megostudent вне форума Ответить с цитированием
Старый 23.10.2012, 00:00   #4
Delphi_ProGer
Форумчанин
 
Регистрация: 30.10.2010
Сообщений: 524
По умолчанию

Цитата:
выдает ошибку
Да, мы вот взяли и сразу догадались, что это за ошибка.
Delphi_ProGer вне форума Ответить с цитированием
Старый 23.10.2012, 16:56   #5
megostudent
Форумчанин
 
Регистрация: 31.12.2010
Сообщений: 320
По умолчанию

Код:
function URLExists(const URL: string): Boolean;
var
lpdwBufferLength, lpdwReserved: DWORD;
SessionPointer, FilePointer: Pointer;
lpvBuffer: array [1..20] of Char;
QueryResult: PChar;
begin
Result := False;
SessionPointer := InternetOpen('InetURL:/1.0', INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);

if Assigned(SessionPointer) then
try
FilePointer := InternetOpenUrl(SessionPointer, PChar(url), nil, 0, INTERNET_FLAG_RELOAD, 0);

if Assigned(FilePointer) then
try
lpdwBufferLength := 10;
lpdwReserved := 0;

HttpQueryInfo(FilePointer, HTTP_QUERY_STATUS_CODE, @lpvBuffer, lpdwBufferLength, lpdwReserved);
QueryResult := PChar(@lpvBuffer);

Result := QueryResult = IntToStr(HTTP_STATUS_OK);
finally
InternetCloseHandle(FilePointer);
end;

finally
InternetCloseHandle(SessionPointer);
end;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
if URLExists(Edit1.Text) then
label1.Caption := 'URL is good :)'
else
label1.Caption := 'URL is bad (:';
end;

end.
робит
megostudent вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как проверить загрузилась ли страница в WebBrowser1 или нет bakanaev Работа с сетью в Delphi 4 03.08.2012 10:13
узнать запущена программа или нет ВалекFCRK Общие вопросы Delphi 10 10.10.2011 17:20
узнать окно на переднем плане или нет fate Win Api 3 21.09.2011 14:26
как узнать занят порт или нет DeDoK Работа с сетью в Delphi 3 12.09.2010 21:51
Как узнать программа запущена или нет? ilSMoKEli Общие вопросы Delphi 5 02.05.2010 23:01