Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 10.05.2010, 15:36
terom terom вне форума
Прохожий
 
Регистрация: 05.05.2010
Сообщения: 5
Репутация: 10
По умолчанию Первая программа

Привет люди) Написал тут свою первую программку, без интерфейса, которая отправляет GET запрос на сайт, указанный в файле, вроде компилиться, работает, но если ставлю в автозапуск, то она ошибку выдает. Хотя и без автозапуска тоже ошибку выдает, но не сразу (эт на XP), на windows 7 не выдает, но автозапуск на семерке ещё не пробовал. Прикрепляю исходник. Писал на delphi 7. Помогите пожалуйста) исправьте, если что не так
Код:
program httpget;

uses
  SysUtils,
  windows,
  winsock;


var
i: integer;
myFile: TextFile;
mass: Array[1..4] of string;
//{$apptype console}


function HostToIP(Name: string): string; forward;


procedure getsend(ip:string; port:integer; host:string; path:string);
var
  WSAData1: TWSAData;
  SockAddr1:TSockAddr;
  Socket1: TSocket;
  Buffer1: string;
begin
  if ip = ' ' then
  ip := HostToIP(host);

  if WSAStartup(MAKEWORD(2,2), WSAData1)=0 then begin
  Socket1:=Socket(AF_INET,SOCK_STREAM,0);
  if Socket1<>INVALID_SOCKET then begin
  SockAddr1.sin_family:=AF_INET;
  SockAddr1.sin_addr.S_addr:=inet_addr(PChar(ip));
  SockAddr1.sin_port:=htons(port);
  if Connect(Socket1,SockAddr1,SizeOf(SockAddr1))=0 then begin
  if host <> ' ' then
  host := 'Host: '+host+#13#10;
  Buffer1:='GET /'+path+' HTTP/1.1'+#13#10+host+
           'Connection: close'+#13#10+
           #13#10;
  send(Socket1,Buffer1[1],Length(Buffer1),0);
  CloseSocket(Socket1);
  end;
  end;
  end;
end;


function HostToIP(Name: string): string; 
var
ip : string;
wsdata : TWSAData; 
hostName : array [0..255] of char; 
hostEnt : PHostEnt; 
addr : PChar; 
begin 
WSAStartup ($0101, wsdata); 
try 
gethostname (hostName, sizeof (hostName)); 
StrPCopy(hostName, Name); 
hostEnt := gethostbyname (hostName); 
if Assigned (hostEnt) then 
if Assigned (hostEnt^.h_addr_list) then begin 
addr := hostEnt^.h_addr_list^; 
if Assigned (addr) then begin 
ip := Format ('%d.%d.%d.%d', [byte (addr [0]), 
byte (addr [1]), byte (addr [2]), byte (addr [3])]); 
Result := ip; 
end 
else 
Result := ''; 
end 
else 
Result := ''
else begin 
Result := ''; 
end; 
finally 
WSACleanup; 
end 
end;


begin
//sleep(60000);
i := 0;
AssignFile(myFile, 'dann.bin');
Reset(myFile);
 while not Eof(myFile) do
  begin
	i := i+1;
	ReadLn(myFile, mass[i]);
//	WriteLn(mass[i]);
  end;
CloseFile(myFile);
while 1 = 1 do
begin
getsend(mass[1], StrToInt(mass[2]), mass[3], mass[4]);
sleep(30000);
end;
end.
Вложения
Тип файла: rar httpget.rar (1,010 байт, 8 просмотров)

Последний раз редактировалось terom, 10.05.2010 в 19:36.
Ответить с цитированием
  #2  
Старый 10.05.2010, 19:04
Аватар для Bars1992
Bars1992 Bars1992 вне форума
Активный
 
Регистрация: 24.04.2010
Адрес: Украина, Кременчуг
Сообщения: 249
Репутация: 22
По умолчанию

а не легче было сразу код выложить? а то как то скачвать и смотреть впадловато

Ты уверен что сразу после запуска у тебя включен нет? может это из за интернета?
__________________
Не твори зла, и жизнь повернется к тебе передом
Ответить с цитированием
  #3  
Старый 10.05.2010, 19:35
terom terom вне форума
Прохожий
 
Регистрация: 05.05.2010
Сообщения: 5
Репутация: 10
По умолчанию

уверен, без нета тоже работает, только не отправляет)
Ответить с цитированием
  #4  
Старый 10.05.2010, 19:42
Аватар для dr. F.I.N.
dr. F.I.N. dr. F.I.N. вне форума
I Like it!
 
Регистрация: 12.12.2009
Адрес: Россия, г. Новосибирск
Сообщения: 660
Версия Delphi: D6/D7
Репутация: 26643
По умолчанию

У меня работает стабильно. Какая ошибка хоть выстреливает? Скриншот или описание оибки в студию пожалуйста
Ответить с цитированием
  #5  
Старый 10.05.2010, 20:21
terom terom вне форума
Прохожий
 
Регистрация: 05.05.2010
Сообщения: 5
Репутация: 10
По умолчанию

Вот скрин ошибки
Изображения
Тип файла: jpg ошибка.jpg (17.4 Кбайт, 10 просмотров)
Ответить с цитированием
  #6  
Старый 12.05.2010, 15:12
terom terom вне форума
Прохожий
 
Регистрация: 05.05.2010
Сообщения: 5
Репутация: 10
По умолчанию

помогите пожалуйста? не думаю, что это сложно... в принципе, я проверял на двух компах: у себя на гостевой и на компе брата, на них одинаковая ОС - Windows XP DM edition, так что может это из за винды, может кто нибудь ещё проверит у себя?
Ответить с цитированием
Ответ


Delphi Sources

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

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 03:10.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter