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

  #2651  
Старый 07.04.2009, 16:25
awdrg
Участник форума
Регистрация: 30.01.2009
Сообщений: 196
Провел на форуме:
505362

Репутация: 66
Отправить сообщение для awdrg с помощью ICQ
По умолчанию

Спасибо за советы, нашел мануал на эту тему (кому будет интересно)
http://users.msu.dubna.ru/~ovg/c++course/p2-3.html
 
Ответить с цитированием

  #2652  
Старый 07.04.2009, 20:29
pira
Новичок
Регистрация: 09.12.2008
Сообщений: 7
Провел на форуме:
20697

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

Помогите упростить исходник пожалуйста. Программка у меня работает, но написано по-нубовски.
Можно же что-то из этого переписать на function

Код:
unit auth;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
  IdHTTP, ExtCtrls, RXShell, RXClock, ComCtrls;

type
  TForm5 = class(TForm)
    http1: TIdHTTP;
    Button1: TButton;
    Button2: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Timer1: TTimer;
    RxTrayIcon1: TRxTrayIcon;
    Memo1: TMemo;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure RxTrayIcon1DblClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
  procedure OnMinimize(Sender: TObject);
    { Public declarations }
  end;

var
  Form5: TForm5;

implementation

{$R *.dfm}
// Сворачивание в трей.
procedure TForm5.FormCreate(Sender: TObject);
begin
Application.onMinimize:=OnMinimize;
end;

procedure TForm5.OnMinimize(Sender: TObject);
begin
RxTrayIcon1.Show; //Показываем иконку в трее
 ShowWindow(Application.Handle,SW_HIDE); //Скрываем окно приложения
  end;

procedure TForm5.RxTrayIcon1DblClick(Sender: TObject);
begin
 Application.Restore; //Восстанавливаем окно
 SetForeGroundWindow(Application.MainForm.Handle); //Активизируем окно
  RxTrayIcon1.Hide; //Прячем иконку из трея
end;

// Запуск висения.
procedure TForm5.Timer1Timer(Sender: TObject);
var params,responseres:tstringlist;
begin
params:=TStringList.Create;
responseres:=TStringList.Create;
try
responseres.Text:=http1.Post('http://www.dmbchat.ru/refresh.php?say=aoaiaa&addr=Aey',params);
if Pos('refresh.php',responseres.Text)>0 then Memo1.Lines.Add('Вы успешно написали фразу.')
else Memo1.Lines.Add('Вы не в чате. Перезаходим.');
while Pos('refresh.php',responseres.Text)<=0 do begin
Button1.Click;
Exit;
end;
finally
params.free;
responseres.free;
end;
end;

// Вход в чат.
procedure TForm5.Button1Click(Sender: TObject);
var params,responseres:tstringlist;
Login, Password: string;
begin
params:=TStringList.Create;
responseres:=TStringList.Create;
try
Login:= Edit1.Text;
Password:= Edit2.Text;
params.Add('login='+Login);
params.Add('password='+Password);
responseres.Text:=http1.Post('http://www.dmbchat.ru/login.php',params);
if Pos('refresh.php',responseres.Text)>0 then
Memo1.Lines.Add('Вы успешно вошли в чат.')
else Memo1.Lines.Add('Ошибка! Вы не вошли в чат.');
finally
params.free;
responseres.free;
end;
while (Edit1.Text='') or (Edit2.Text='') or (Length(Edit1.Text) < 2) or (Length(Edit2.Text) < 5) do begin
ShowMessage ('     Логин или Пароль введён неверно.');
Exit;
end;
Edit1.Enabled:=False;
Edit2.Enabled:=False;
Button2.Enabled:=True;
Timer1.Enabled:=True;
end;

// Выход из чата.
procedure TForm5.Button2Click(Sender: TObject);
var params,responseres:tstringlist;
begin
params:=TStringList.Create;
responseres:=TStringList.Create;
try
params.Add('exit');
responseres.Text:=http1.Post('http://www.dmbchat.ru/logout.php',params);
finally
params.free;
responseres.free;
end;
Timer1.Enabled:=False;
Edit1.Enabled:=True;
Edit2.Enabled:=True;
Button2.Enabled:=False;
end;

end.
 
Ответить с цитированием

  #2653  
Старый 07.04.2009, 20:31
Chaak
Познавший АНТИЧАТ
Регистрация: 01.06.2008
Сообщений: 1,047
Провел на форуме:
5321514

Репутация: 3313


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

это delphi а не c++
 
Ответить с цитированием

  #2654  
Старый 07.04.2009, 20:47
pira
Новичок
Регистрация: 09.12.2008
Сообщений: 7
Провел на форуме:
20697

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

Цитата:
Сообщение от Chaak  
это delphi а не c++
Так это общая ветка "С/С++, C#, Delphi, .NET, Asm".
 
Ответить с цитированием

  #2655  
Старый 07.04.2009, 20:50
ph1l1ster
Постоянный
Регистрация: 11.03.2008
Сообщений: 347
Провел на форуме:
2075230

Репутация: 462
Отправить сообщение для ph1l1ster с помощью ICQ
По умолчанию

Цитата:
Сообщение от pira  
Так это общая ветка "С/С++, C#, Delphi, .NET, Asm".
нет. читать умееш? [c/c++] Новичкам: задаем вопросы
http://forum.antichat.ru/thread39636.html
 
Ответить с цитированием

  #2656  
Старый 08.04.2009, 18:17
gyunter
Новичок
Регистрация: 07.05.2008
Сообщений: 9
Провел на форуме:
77728

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

Как можно в графическом режиме вевести некоторое числовое значение?
Пробовал функцию outtextxy как в паскале, но значение перменной с её помощью вывести не получается...

Заранее благодарю

Вот тут я пытаюсь вывести координаты на экран, чтобы получилось что-то вроде числовой линии.
Код:
for (dx=0;dx<=maxx;)
	{
	 outtextxy(dx,y2-30,"здесь_надо_вывести_значение_dx");
	 dx=dx+40;
	}

Последний раз редактировалось gyunter; 08.04.2009 в 18:20..
 
Ответить с цитированием

  #2657  
Старый 08.04.2009, 18:25
razb
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
Провел на форуме:
2868783

Репутация: 414


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

Код:
char buffer[20];

sprintf(buffer, "%d", 12345);
outtextxy(x, y, buffer);
устроит?)

Последний раз редактировалось razb; 08.04.2009 в 18:29..
 
Ответить с цитированием

  #2658  
Старый 08.04.2009, 18:36
gyunter
Новичок
Регистрация: 07.05.2008
Сообщений: 9
Провел на форуме:
77728

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

razb, большое спасибо! Все заработало, как нужно
 
Ответить с цитированием

  #2659  
Старый 10.04.2009, 12:37
_nic
Постоянный
Регистрация: 05.05.2006
Сообщений: 743
Провел на форуме:
2982851

Репутация: 107


По умолчанию

Вот такой код
Код:
hh=HeapCreate(0,0x01000,0);
char *buf=(char*)HeapAlloc(hh,0,1024*1024);
strcpy(buf,"sdjbksadbvkjlbsdkvljbsdkjbvkjsdabvkjasdbkvjbasdkjvbsakjbvkjslb");
buf+=1024*1024;
strcpy(buf,"sdjbksadbvkjlbsdkvljbsdkjbvkjsdabvkjasdbkvjbasdkjvbsakjbvkjslb");
MessageBox(0,buf,"!",MB_OK);
HeapFree(hh,0,buf);
Тут конечно же на последней строке идет вылет в отладчик с матюком что в rtlfreeheap был передан кривой указатель на блок памяти.
А теперь такой вот код
Код:
hh=HeapCreate(0,0x01000,0);
char *buf=(char*)HeapAlloc(hh,0,1024*1024);
strcpy(buf,"sdjbksadbvkjlbsdkvljbsdkjbvkjsdabvkjasdbkvjbasdkjvbsakjbvkjslb");
buf+=1024*1024;
buf=(char*)HeapAlloc(hh,0,1024*1024);
strcpy(buf,"sdjbksadbvkjlbsdkvljbsdkjbvkjsdabvkjasdbkvjbasdkjvbsakjbvkjslb");
MessageBox(0,buf,"!",MB_OK);
HeapFree(hh,0,buf);
В это случае вылетов нет.НО через диспетчер задач наблюдается утечка памяти.
Вопрос:как в таком случае надо правильно освобождать память?
 
Ответить с цитированием

  #2660  
Старый 10.04.2009, 13:44
razb
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
Провел на форуме:
2868783

Репутация: 414


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

Цитата:
char *buf=(char*)HeapAlloc(hh,0,1024*1024);
Цитата:
buf=(char*)HeapAlloc(hh,0,1024*1024)
Ты два раза выделяешь память на один указатель в следствии этого первый блок памяти теряется.
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Часто задаваемые вопросы по MySQL Серый PHP 5 28.12.2006 18:26
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



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


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




ANTICHAT.XYZ