ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Delphi tcp/ip - и мой пк!
  #1  
Старый 11.10.2005, 20:17
Аватар для LeonW
LeonW
Новичок
Регистрация: 11.10.2005
Сообщений: 16
Провел на форуме:
9819

Репутация: 1
Exclamation Delphi tcp/ip - и мой пк!

Привет всем!
моя компания использует проксхи - ну да ладно, сразу к делу!
как сделать программу в Delphi которая:
1) определяет мой ip
2) опредиляет время загрузки самой себя?
3) посылает мне на мыло эти данные!
4) закрывается до следующей загрузки пк.
посибо Leon
 
Ответить с цитированием

  #2  
Старый 12.10.2005, 10:59
Аватар для KEZ
KEZ
Banned
Регистрация: 18.05.2005
Сообщений: 1,981
Провел на форуме:
1941233

Репутация: 2726


По умолчанию

Ну айпи твой всегда почти 127.0.0.1 так что можешь смело вбивать это значение.
Время загрузки самой себя... Что ты понимаешь под загрузкой? Время с запуска EXE по создание окна? Тогда вызывай old_time = time( NULL ); и в конце elapsed_time = time(NULL)-old_time; только переведи это на паскаль. На мыло посылать очень просто через SMTP.
Код:
int s;
struct sockaddr_in s_a;

s = socket( AF_INET, SOCK_STREAM, 0 );
s_a.sin_family = AF_INET;
s_a.sin_port   = htons( 25 );
s_a.sin_addr.s_addr = inet_addr( "[тут ip мейл.ру например]" );
if (connect( s, (struct sockaddr*)&s_a, sizeof( s_a ) ) == SOCKET_ERROR) return 0;
(создай корчое сокет соединения с почтовым сервером на 25 порту)
и посылай
(сервак должен посылать 250 Ok)
HELO имя_домена\r\n
MAIL FROM: <123@mail.ru>\r\n
RCPT TO: <to@mail.ru>\r\n
DATA\r\n
\r\n
[DATA]
. (ТОЧКА!)

если не ошибаюсь...
коды возврата SMTP
211 system status, or system helo reply
214 Help message....
220 <domain> service ready
221 <domain> service closing transmission channel
250 Requested mail action okay, completed
251 User to local; will forward to <forward-path>
354 Start with input; end with <CRLF>.<CRLF> (\r\n)
421 <domain> service not avialable (пошел нафиг типа)
 
Ответить с цитированием

e-mail
  #3  
Старый 12.10.2005, 18:56
Аватар для LeonW
LeonW
Новичок
Регистрация: 11.10.2005
Сообщений: 16
Провел на форуме:
9819

Репутация: 1
Lightbulb e-mail

KEZ - привет! понажимал я на твои ссылки.
я только начал заниматся с delphi! поэтому не все понил что ты там написал?
а 127,0,0,1 - это не тот ip -сегодня был на сайте - где опредиляют ip - и мне показали совсем другой!
 
Ответить с цитированием

  #4  
Старый 12.10.2005, 19:24
Аватар для KEZ
KEZ
Banned
Регистрация: 18.05.2005
Сообщений: 1,981
Провел на форуме:
1941233

Репутация: 2726


По умолчанию

Вот ф-ия опеределия своего айпи в интернете

Код:
char *SelfIP( void )
{
	char *temp = (char*)malloc( 256 );
	struct in_addr in;

	DWORD       ip = 0;
	LPHOSTENT   he;

	if (!gethostname( temp, 256 ))
	{
		if (he = gethostbyname( temp ))
		ip = ((LPIN_ADDR)he->h_addr)->s_addr;
	}

	memcpy( &in.s_addr, he->h_addr, he->h_length );
	
	return inet_ntoa( in );
}
теперь переведи это на паскаль и получишь код для Delphi

Последний раз редактировалось KEZ; 12.10.2005 в 19:27..
 
Ответить с цитированием

  #5  
Старый 12.10.2005, 19:25
Аватар для KEZ
KEZ
Banned
Регистрация: 18.05.2005
Сообщений: 1,981
Провел на форуме:
1941233

Репутация: 2726


По умолчанию

и не забудь

WSADATA wsadata;
WSAStartup( MAKEWORD( 1, 1 ), &wsadata );
а в конце
WSACleanup();

в линуксе сеть используется без подобных ф-ия а в винде у тебя сокет даже не создасться без них
 
Ответить с цитированием

pascal
  #6  
Старый 13.10.2005, 15:19
Аватар для LeonW
LeonW
Новичок
Регистрация: 11.10.2005
Сообщений: 16
Провел на форуме:
9819

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

а как переветси на паскаль???
 
Ответить с цитированием

  #7  
Старый 13.10.2005, 15:52
Аватар для KEZ
KEZ
Banned
Регистрация: 18.05.2005
Сообщений: 1,981
Провел на форуме:
1941233

Репутация: 2726


По умолчанию

Это тебе решать как переводить, код я тебе дал.
 
Ответить с цитированием

  #8  
Старый 13.10.2005, 16:19
Аватар для bul666
bul666
Banned
Регистрация: 21.04.2005
Сообщений: 328
Провел на форуме:
632524

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

Цитата:
Сообщение от LeonW  
Привет всем!
моя компания использует проксхи - ну да ладно, сразу к делу!
как сделать программу в Delphi которая:
1) определяет мой ip
2) опредиляет время загрузки самой себя?
3) посылает мне на мыло эти данные!
4) закрывается до следующей загрузки пк.
посибо Leon
Стукни мне в Асю или На мыло (bul666@inbox.ru) Я тебе на C++ Напишу )))
 
Ответить с цитированием

cpp
  #9  
Старый 13.10.2005, 17:20
Аватар для LeonW
LeonW
Новичок
Регистрация: 11.10.2005
Сообщений: 16
Провел на форуме:
9819

Репутация: 1
Exclamation cpp

Привет! посибо но на с++ не надо. пожалуйста!
но все ровно спосибо!
-------------------------------------------------------------------
а какие последствия могут быть - если я свой ip - буду
отпровлять себеже на email>>???????????
 
Ответить с цитированием

  #10  
Старый 14.10.2005, 03:53
Аватар для Raider
Raider
Познающий
Регистрация: 02.05.2005
Сообщений: 42
Провел на форуме:
137056

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

Цитата:
1) определяет мой ip
procedure TForm1.Button1Click(Sender: TObject);
var
WSAData: TWSAData;
HostEnt: PHostEnt;
LocalIP: String;
Buff: array [0..MAX_COMPUTERNAME_LENGTH] of Char;
begin
FillChar(Buff, SizeOf(Buff), 0);
WSAStartUp($0101, WSAData);
GetHostName(Buff, SizeOf(Buff));
HostEnt := GetHostByName(Buff);
LocalIP := inet_ntoa(PInAddr(HostEnt.h_addr_list^)^);
ShowMessage(LocalIP); // ip
WSACleanUP();
end;

Цитата:
2) опредиляет время загрузки самой себя?
Событие OnCreate (у формы) происходит в момент создания:

procedure TForm1.FormCreate(Sender: TObject);
begin
ShowMessage(TimeToStr(Time)); // время
end;

Цитата:
3) посылает мне на мыло эти данные!
Афтор, ты на Delphi пишешь или на чём то другом ? Оглянись, там куча компонентов, если ты пишешь на 7-ом
и выше, то для отправки почты есть компонент TidSTMP, или чтотто в этом роде ... а на Api писать имхо
рановато те ...

Цитата:
4) закрывается до следующей загрузки пк.
Halt, но вобщето правельней Application.Terminate, хотя пох как )

Пропишись в автозагрузку, в реестр, как работать с реестром ты найдёшь в инэте.

ps
Все твои вопросы это FAQ, так что прежде чем спросить не поленись и поискать.


Цитата:
а какие последствия могут быть - если я свой ip - буду
отпровлять себеже на email>>???????????
Серьёзные последствия, вплоть до остановки smtp сервака LOL ))))

Последний раз редактировалось Raider; 14.10.2005 в 03:57..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
У кого есть RemoteOpenShell на DELPHI? AIN С/С++, C#, Delphi, .NET, Asm 0 12.08.2005 01:02
Методика Захвата Соединения Tcp/ip k00p3r Чужие Статьи 0 08.06.2005 15:00
Азы Delphi Morph Авторские статьи 1 13.03.2005 01:22
Западло на Delphi #3 foreva Чужие Статьи 3 08.02.2005 00:56



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


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




ANTICHAT.XYZ