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
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #3541  
Старый 08.05.2009, 16:19
Nightmarе
Познавший АНТИЧАТ
Регистрация: 29.04.2007
Сообщений: 1,189
Провел на форуме:
5749763

Репутация: 1680


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

Цитата:
Сообщение от KIR@PRO  
2Nightmarе
А это смотрел?
memo1.Font.Charset
Смотрел.
Это проверка кодировки у самого объекта memo, но никак не текста в нём.

Цитата:
Сообщение от KIR@PRO  
или попробуй function GetTextFace(DC: HDC; Count: Integer; FaceName: PChar): Integer;
А вот эту функцию как правильно вызвать?
 
Ответить с цитированием

  #3542  
Старый 08.05.2009, 20:49
Mosvit
Познающий
Регистрация: 05.03.2007
Сообщений: 99
Провел на форуме:
744734

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

Хочу написать бота ICQ которыйбы отвечал на каждое входящее сообщение (от одного номера) разными словами из мемо2. Типа имитировал настоящий разговор.
Пробовал сделать вот так:
Код:
Код:
procedure TForm1.ICQClient1MessageRecv(Sender: TObject; Msg, UIN: String);
var icq: cardinal; i:integer;
begin

icq:=StrToInt(UIN);
ICQClient1.SendMessage(icq,Memo2.Lines[i]);
sleep(2000);
Memo2.Lines[i]:=Memo2.Lines[i+1];
end;
В Мемо2 записано:
"текст1
текст2
текст3
текст4
текст5"

В итоге на первое отправленное сообщение на этот ICQ бот приходит ответ "текст2", а на все последующие "текст3".
Что не так?

Используется компонент TICQClient

Последний раз редактировалось Mosvit; 08.05.2009 в 21:43..
 
Ответить с цитированием

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

Репутация: 3349


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

2 Nightmarе вообще определить можно или методом тыка кодирую и сравнивая.
типа
s=текст
s2=DOS2WIN(s);
if s=s2 then текст в DOS кодировке в противном случае чтото другое.

Или анализировать диапазон символов русского языка.
АБВГДЕ абвгде выглдяит как
WIN: C0 C1 C2 C3 C4 C5 20 E0 E1 E2 E3 E4 E5
DOS: 80 81 82 83 84 85 20 A0 A1 A2 A3 A4 A5
как видишь русский буквы в WIN идут с адресов C0
А в DOS с 80
Так что можешь попробовать сложить все символы с кодами > 7F и разделить число на кол-во этих символов. И получишь соотношение, чем оно ближе к 80 тем более вероятне что это DOS. но и собственно говоря наоборот если ближе к FF то WIN
 
Ответить с цитированием

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

Репутация: 3349


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

Вот только что попробовал реализовать эту свою задумку. Вроде как пашет нормально )
Код:
var
 x:integer;
 sum,cnt:integer;
 s:string;
begin
 s:=memo1.text;
 sum:=0;
 cnt:=0;
 for x:=1 to length(s) do
  if (ord(s[x])>$7F) then
   begin
    inc(cnt);
    sum:=sum+ord(s[x]);
   end;
 if cnt=0 then ShowMessage('А хер его знает что там');
  else if (sum div cnt<$C0) then showmessage('DOS')
    else showmessage('WIN');
end;
 
Ответить с цитированием

  #3545  
Старый 08.05.2009, 22:43
Balvan
Познающий
Регистрация: 11.03.2009
Сообщений: 70
Провел на форуме:
251358

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

Ребята, мну уже не надо... =) по другому сделал )
 
Ответить с цитированием

  #3546  
Старый 09.05.2009, 06:11
Huligan1
Познающий
Регистрация: 04.03.2009
Сообщений: 31
Провел на форуме:
50236

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

Привет всем как бы мне поумнее сделать чтобы Form1 сворачивалась в трей (к часам)
PHP код:
procedure TForm4.TrayIcon1Click(SenderTObject);
begin
Form4
.Hide;
end;

end
Сделал так но при клике неразворачивается форма и тупо исчезает затем её неразвернуть и несвернуть при клике на иконку в трее

(Ещё назрел маненький вопросик когда я компилирую программу она почему то так и называется project1 ну или судя как её переименовать можно ли ей как бы закрепить имя ?)
 
Ответить с цитированием

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

Репутация: 3349


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

2 Huligan1
1) Delphi World ("Иконка на TrayBar", "Иконка на TrayBar - пример 1", "Иконка на TrayBar - пример 2") Достаточно вбить в гугле с сразу увидишь десятки сайтов в таким примером. + в этом же топике пару дней назад это обсуждалось.
2) Ну так сразу назови проект как тебе нужно. А чтобы переименовать название которое отображается на панеле задач, то application.title:='dfdfdfdf';
 
Ответить с цитированием

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

Репутация: 3349


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

ps. если юзаешь компонент, то
при сворачивании делается Form4.Hide;
а при клике - Form4.show;
 
Ответить с цитированием

  #3549  
Старый 09.05.2009, 21:21
f0rward
Новичок
Регистрация: 26.10.2008
Сообщений: 15
Провел на форуме:
126398

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

Пишу брут, первый раз, всё работает, гуды находит, но есть оно : проходит ровно столько строк, сколько установлено потоков. Целый день пишу, голова уже не работает, вот кусок прцедуры, отвечающей за сооздание потока :
Код:
  for i:= 1 to SpinEdit1.Value do begin
    a[i]:=TNewThread.Create(true);
    a[i].FreeOnTerminate:=true;
    a[i].Priority:=tpLOWER;
    a[i].LoginTH:=copyLogin(Source.Strings[i]);
    a[i].passTH:=copyPass(Source.Strings[i]);
    a[i].Resume;
    application.ProcessMessages;
    if Application.Terminated then break;
    if stop then break;
    ThreadsLBL.Caption:=IntToStr(i);
  end;
Поправьте, как надо.
не актуально, как запостил - нашел ошибку.

Последний раз редактировалось f0rward; 09.05.2009 в 21:38..
 
Ответить с цитированием

  #3550  
Старый 10.05.2009, 07:37
НTL
Постоянный
Регистрация: 26.01.2008
Сообщений: 796
Провел на форуме:
5209663

Репутация: 357


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

BorderStyle = bsNone
А мне надо перемещать форму по экрану при поможи зажатие мышки (Также как и обычные окна Windows), как это можно сделать?
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[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