HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 26.02.2009, 10:31
slesh
Познавший АНТИЧАТ
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


Отправить сообщение для slesh с помощью ICQ
По умолчанию

ата ошибка из-за того что ты юзаешь слишком большие типы данных которые в сумме привышают 65кил. Ты посчитай сколько у тебя тратится место на массивы.
Единственных выход - выделять память под массивы и работать с указателями
 
Ответить с цитированием

  #2  
Старый 27.02.2009, 10:04
Lee_fx
Познающий
Регистрация: 27.09.2008
Сообщений: 57
Провел на форуме:
265628

Репутация: 23
По умолчанию

Доброго времени суток, собственно вопрос - как на дельфях реализовать deskband (когда WMP сворачиваешь, в трее висит) или хотя бы где можно почитать про создание оного, желательно с примером.
 
Ответить с цитированием

  #3  
Старый 27.02.2009, 10:25
slesh
Познавший АНТИЧАТ
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


Отправить сообщение для slesh с помощью ICQ
По умолчанию

как вариант найти дискриптор таскбара и туда засунуть свой элемент управления.
 
Ответить с цитированием

  #4  
Старый 27.02.2009, 15:15
ZET36
Участник форума
Регистрация: 08.10.2007
Сообщений: 259
Провел на форуме:
500748

Репутация: 137
По умолчанию

Вот тут у меня опть проблема
пытаюсь загрузить файл из интернэта по средствам сокетов

Код:
var Site : PChar;
   sock : TSocket;
   HostEnt : PHostEnt;
   WSA : TWSAData;
   addr : sockaddr_in;
   sendbuff : String;
   PostData : String;


  f:TextFile;
  i:integer;
  buf:array[0..255] of char;
begin

if WSAStartup($0101, WSA) <> 0 then
Exit;
sock := Socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
FillChar(addr, SizeOf(sockaddr_in), 0);
addr.sin_family := AF_INET;
addr.sin_port := htons(80);
Site := 'www.google.ru';
HostEnt := gethostbyname(Site);
addr.sin_addr.s_addr := Longint(PLongint(HostEnt^.h_addr_list^)^);

Connect(sock, addr, SizeOf(addr));

       sendbuff := '';
       sendbuff := 'GET http://www.google.ru/images/nav_logo3.png  HTTP/1.0' + #13#10 +
                   'User-Agent: Opera/9.10 (Windows NT 5.1; U; ru)' + #13#10 +
                   'Host: www.google.ru' + #13#10 +
                   'Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1' + #13#10 +
                   'Accept-Language: ru-RU,ru;q=0.9,en;q=0.8' + #13#10 +
                   'Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1' + #13#10 +
                   'Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0' + #13#10 +
                   'Proxy-Connection: close' + #13#10 +
                   'Referer: http://www.google.ru/images/nav_logo3.png' + #13#10 +
                   'Proxy-Connection: close';

       send(sock, sendbuff [1], Length(sendbuff), 0);
          AssignFile(f, 'logo.png');
          Rewrite(f);

        repeat
        i := recv(sock, buf, length(buf), 0);
        writeln(f, buf);
        until i <= 0;
       CloseFile(f);
       CloseSocket(sock);
     end;
но в файл добавляется только несколько символов переноса строки и всё, прозреваю что я использую не тот тип данных для записи ответа сервера в файл или вообще не правильно записываю ответ, подскажите как правильно.
 
Ответить с цитированием

  #5  
Старый 27.02.2009, 15:21
slesh
Познавший АНТИЧАТ
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


Отправить сообщение для slesh с помощью ICQ
По умолчанию

repeat
i := recv(sock, buf, length(buf), 0);
writeln(f, buf);
until i <= 0;
замени на
Код:
 repeat
  i := recv(sock, buf, sizeof(255), 0);
 writeln(f, copy(buf,1,i));
 until i <= 0;
 
Ответить с цитированием

  #6  
Старый 27.02.2009, 15:57
FindeR
Участник форума
Регистрация: 15.11.2006
Сообщений: 259
Провел на форуме:
2589211

Репутация: 151
По умолчанию

В процессе создания исключений назрел вопрос. А почему, собсно
Код:
showmessage(inttostr(strtoint('xc')));
Выдаёт мессагой '12' ?
Обнаружил случайно, когда вбивал заведомо нечисловые значения в нужный мне edit.
зы: нет, это не переменная, точнее, я её не объявлял.


а, сам понял.
x в данном случае указывает на то, что дальше будет следовать число в hex

Последний раз редактировалось FindeR; 27.02.2009 в 16:02..
 
Ответить с цитированием

  #7  
Старый 27.02.2009, 16:45
cremator (c)
Постоянный
Регистрация: 20.06.2008
Сообщений: 323
Провел на форуме:
1240829

Репутация: 165
Отправить сообщение для cremator (c) с помощью ICQ
По умолчанию

strtoint('xc') переводит строку в числовое значение! Тебе вообще что надо?
 
Ответить с цитированием

  #8  
Старый 27.02.2009, 21:55
ZET36
Участник форума
Регистрация: 08.10.2007
Сообщений: 259
Провел на форуме:
500748

Репутация: 137
По умолчанию

slesh спасибо, но опять в файл записывает 2 байта, может что не так с запросом?
 
Ответить с цитированием

  #9  
Старый 27.02.2009, 22:05
Hellsp@wn
Постоянный
Регистрация: 29.04.2007
Сообщений: 496
Провел на форуме:
2715445

Репутация: 588
По умолчанию

ZET36

не правильный подход в принципе. т.к. recv может вернуть 0, но это не будет ошибкой! просто в данный момент в сокете нет данных. так что советую или читать про сокеты, или использовать wininetapi

з.ы. код ужасен:
Цитата:
i := recv(sock, buf, length(buf), 0);
writeln(f, buf);
и что же запишится в файл? понятно что данные из buf, но сколько же их будет? 255 или меньше?

Последний раз редактировалось Hellsp@wn; 27.02.2009 в 22:08..
 
Ответить с цитированием

  #10  
Старый 27.02.2009, 22:59
Maxxxtri23
Познающий
Регистрация: 20.12.2008
Сообщений: 76
Провел на форуме:
432982

Репутация: 6
По умолчанию

Гдето видел в манулах как сделать для нескольких форм "ресурсы", но теперь немогу найти. Тоесть у меня есть главная форма и дочерняя и мне надо допустим в дочерней форме в Edit1 пишешь значение и оно меняется в главной форме в Label1 тоесть как связать компоненты главной формы с дочерней?
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Wi-Fi, BT] Задай вопрос - получи ответ! Alexsize Беспроводные технологии/Wi-Fi/Wardriving 2568 25.04.2026 12:58
[jQuery] - Задай вопрос, получи ответ Isis PHP 62 25.12.2009 03:25



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ