Nightmarе, у меня ТурбоДелфи, клиентсокета что-т не нашел, возможно нет его тут. Вот накалякал на винсоке на скорую руку. Смотри, может поможет Code: {$APPTYPE CONSOLE} uses Windows, SysUtils, WinSock; var WSA: TWSAData; Sock: TSocket; Server: TSockAddr; function LookupName(host: string): TInAddr; var HostEnt: PHostEnt; InAddr: TInAddr; begin HostEnt := gethostbyname(PChar(host)); FillChar(InAddr, SizeOf(InAddr), 0); if HostEnt <> nil then begin with InAddr, HostEnt^ do begin S_un_b.s_b1 := h_addr^[0]; S_un_b.s_b2 := h_addr^[1]; S_un_b.s_b3 := h_addr^[2]; S_un_b.s_b4 := h_addr^[3]; end; end; Result := InAddr; end; procedure SendString(s: string); var Buffer: array[0..255] of char; begin StrPCopy(Buffer, s); Send(Sock, Buffer, length(s), 0); end; var Buffer: array[0..255] of char; Bufflen, Recved: SmallInt; begin WSAStartup(MAKEWORD(1,0), WSA); Sock := socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); ZeroMemory(@Server,SizeOf(Server)); Server.sin_family:=AF_INET; Server.sin_port:=htons(80); Server.sin_addr:=LookupName('www.lol.ru'); if Connect(Sock, Server, SizeOf(Server)) = 0 then begin SendString('GET / HTTP/1.1'#13#10); SendString('Host: www.lol.ru'#13#10); SendString('Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5'#13#10); SendString('Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3'#13#10); SendString('Accept-Encoding: gzip,deflate'#13#10); SendString('Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7'#13#10); SendString(#13#10); end; repeat Bufflen := SizeOf(Buffer); Recved := Recv(Sock, Buffer, Bufflen, 0); write(Buffer); until Recved = 0; CloseSocket(Sock); WSACleanup; readln; end.
Хех ну для того чтобы завершить Explorer и поновой запустить нужны огромные права в общем я незнаю ничего кроме азов Delphi посоветуй что нить по этому поводу я пороюсь ну кроме googlя я его уже весь обшарил книжку каку нить или пример программы которая это делает? А вообще реально перезапустить Explorer? В диспетчее задач реально но я не думаю что прога сможет работать так как закроет сама себя.... И ещё как сделать безопасное выключение ,а то у меня комп гаснет и ничего не сохраняет?
QUERY_STRING инициализируется только при GET-запросе, при POST-запросе данные поступают на STDIN скрипта и другой ситуации быть не может. Покажи принимающий скрипт. Кстати ты передаёшь Content-length: 23, а реально передал в теле 25...
Парни у меня трабла с прогой сам сделал, но есть такой пунктик я полностью убрал стандартное окно Windows в ней и теперь программу можно выключить только нажав на крестик сделаный мною и прога выключится если ты правильно ввёл пароль. Самое обидное что прогу можно закрыть просто нажав ALT+F4[] Этот способ закрывает прогу без вода пароля как убить этот косяк?
Событие формы OnClose if pass<>true then begin MessageDlg('Неверный пасс!',mtError,[mbOK],0); Action:=caNone; end;
Ага это уже будет кейлогер а не безобидная програмка. Это реально но как осуществить?И где взять функцию чтобы свернуть программу в трей?
Для трея юзал библиотеку RxLib Компонент думаю найдеш, вроде RxTray или типа того.. готовый, поддержка контекста, икон, анимации и т.п.
Помогите плз., как создать событие OnRead в run time для компонента ClientSocket? Я так понял что процедура должна быть типа notifyevent, а создать её не врублюсь как..
вот решение, просто не то событие вы брали Code: procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin if edit1.Text=pass then canclose:=true else begin canclose:=false; MessageDlg('Пароль неверный!',mtError,[mbOK],0); end; end; p.s. мне никто так и не поможет? по этому вопросу: http://forum.antichat.ru/showpost.php?p=1059432&postcount=2611