Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

13.05.2008, 23:38
|
|
Познавший АНТИЧАТ
Регистрация: 29.04.2007
Сообщений: 1,189
Провел на форуме: 5749763
Репутация:
1680
|
|
У меня есть программка написанная на API (на делфи естесстно)
В исходнике есть такая строчка обявляющяя константу:
const ADDRES = 'http://prank.ru/gate.php';
Собственно хотелось бы увидеть код программы которая может открыть вышенаписанную программу и изменить значение ADDRES на что то ещё...
|
|
|

14.05.2008, 00:11
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме: 4037638
Репутация:
1821
|
|
Сообщение от Nightmarе
У меня есть программка написанная на API (на делфи естесстно)
В исходнике есть такая строчка обявляющяя константу:
const ADDRES = 'http://prank.ru/gate.php';
Собственно хотелось бы увидеть код программы которая может открыть вышенаписанную программу и изменить значение ADDRES на что то ещё...
Если я тебя правильно понял то тебе надо поменять
'http://prank.ru/gate.php' - на что нить другое, тогда ты просто должен работать с этой прогой как, с обычным файлом, то есть:
1)Открыть файл
2)Найти в файле строку http://prank.ru/gate.php(именно так)
3)Заменить ее...НО количество символов должны быть равны!(до изменения = после изменения)
4)Сохранить и закрыть файл!
|
|
|

14.05.2008, 00:21
|
|
Постоянный
Регистрация: 05.01.2007
Сообщений: 508
Провел на форуме: 2360904
Репутация:
1393
|
|
Сообщение от De-visible
Если я тебя правильно понял то тебе надо поменять
'http://prank.ru/gate.php' - на что нить другое, тогда ты просто должен работать с этой прогой как, с обычным файлом, то есть:
1)Открыть файл
2)Найти в файле строку http://prank.ru/gate.php(именно так)
3)Заменить ее...НО количество символов должны быть равны!(до изменения = после изменения)
4)Сохранить и закрыть файл!
Человеку нужна программа, а как это делать руками, он знает и сам.
2 Nightmare Скачай сырцы пинч билдера от Slesh, там именно что тебе нужно.
Последний раз редактировалось z01b; 14.05.2008 в 00:24..
|
|
|

14.05.2008, 00:56
|
|
Познавший АНТИЧАТ
Регистрация: 29.04.2007
Сообщений: 1,189
Провел на форуме: 5749763
Репутация:
1680
|
|
Сообщение от z01b
Человеку нужна программа, а как это делать руками, он знает и сам.
2 Nightmare Скачай сырцы пинч билдера от Slesh, там именно что тебе нужно.
Исходники у меня есть, но там коду дохрена, и возиться я с ними буду не один день, а хотелось побыстрее и попроще...
|
|
|

14.05.2008, 05:41
|
|
Участник форума
Регистрация: 01.08.2007
Сообщений: 178
Провел на форуме: 486104
Репутация:
239
|
|
Хочется побыстрее и попроще? Напиши свой  В принципе там не трудно, посмотри что De-visible написал... Тоже идея, но все время длина должна быть одинакова, что не есть гуд)) Сделай подругому, чтоб можно было разную длину писать...
|
|
|

14.05.2008, 23:44
|
|
Познающий
Регистрация: 06.08.2007
Сообщений: 36
Провел на форуме: 373639
Репутация:
10
|
|
Сообщение от Killerkod
Хочется побыстрее и попроще? Напиши свой  В принципе там не трудно, посмотри что De-visible написал... Тоже идея, но все время длина должна быть одинакова, что не есть гуд)) Сделай подругому, чтоб можно было разную длину писать...
Код:
подключить winsock
Function DoRecv(Sock: TSocket): Bool;
Var
Time :TTimeVal;
FD_Struct :TFDSet;
Begin
Result := False;
Time.tv_sec := 5;
Time.tv_usec := 0;
FD_ZERO(FD_Struct);
FD_SET(Sock, FD_Struct);
If Select(0, @FD_Struct, NIL, NIL, @Time) <= 0 Then
Exit;
Result := True;
End;
function pagepost(url,post:string):string;
var
D:WSAData;
S:TSocket;
A:TSockAddr;
name,path:string;
buff:array[0..1023] of char;
buf: Array[0..36000] Of Char;
httpsend,httpresponse,str:string;
recived,n:integer;
begin
httpresponse:='';
{??????? ????????? ????????????...}
if(copy(url,1,7)<>'http://') then
begin
exit;
end;
url:=copy(url,8,length(url));
n:=Pos('/',url);
if(n=0) then
begin
name:=copy(url,1,length(url));
path:='/';
end
else
begin
name:=copy(url,1,n-1);
path:=copy(url,n,length(url));
end;
{????????}
if WSAStartup($101,D)<>0 then
begin
result:='';
WSACleanup;
exit;
end;
A.sin_family:=AF_INET;
A.sin_addr.S_addr:=inet_addr(pChar(NameToIP(name)));
A.sin_port:=htons(80);
S:=socket(AF_INET,SOCK_STREAM,0);
if S=INVALID_SOCKET then
begin
result:='';
WSACleanup;
exit;
end;
if(connect(S,A,sizeof(A))<>0) then
begin
result:='';
WSACleanup;
exit;
end;
// - - - - - - - - - -
// - - - - - - - - - -
{?????????????? ?????}
{?????????? ???????}
httpsend:='POST '+path+' HTTP/1.1'+#13#10+
'Host: '+name+#13#10+
'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.2; ru; rv:1.8.1.9) Gecko/20071025 Firefox/2.0.0.9'+#13#10+
'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+
'Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3'+#13#10+
'Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7'+#13#10+
'Keep-Alive: 300'+#13#10+
'Connection: keep-alive'+#13#10+
'Cookie: remixchk=5'+#13#10+
'Content-Type: application/x-www-form-urlencoded'+#13#10+
'Content-Length: '+inttostr(length(post))+#13#10#13#10+post;
send(s, HTTPSend[1], length(httpsend),0);
recived:=1;
while(recived>0) do
begin
If Not DoRecv(S) Then
Begin
result:=httpresponse;
CloseSocket(S);
WSACleanUp;
Exit;
End;
recived:=Recv(S, Buff, 1024, 0);
HttpResponse:=httpresponse+Copy (Buff,1,Recived);
end;
result:=httpresponse;
closesocket(s);
WSACleanUp;
end;
|
|
|

15.05.2008, 00:27
|
|
Новичок
Регистрация: 10.08.2007
Сообщений: 13
Провел на форуме: 32059
Репутация:
11
|
|
Видел как-то такую конструкцию(именно так, процедура пуста).
Но не понял для чего это нужно. Может можно как-0то упростить???
Type
Proc1 = Procedure;
Var
Rs : Proc1;
Procedure Pro;
Begin
End;
..............
Rs:=pro;
|
|
|

15.05.2008, 00:49
|
|
Познающий
Регистрация: 06.08.2007
Сообщений: 36
Провел на форуме: 373639
Репутация:
10
|
|
удалить и все  )) нах не нужна эта процедура)))
|
|
|

15.05.2008, 05:10
|
|
Постоянный
Регистрация: 11.03.2007
Сообщений: 581
Провел на форуме: 4172659
Репутация:
646
|
|
Как получить список элементов панели управления (имя, иконка, имя для запуска)? Пока единственное что мне пришло в голову - искать все *.cpl файлы в system32 и вытаскивать информацию через экспортируемую функцию. Может есть более простое решение? Да и не все элементы организованы через *.cpl (display, ptinters, ...)
|
|
|

16.05.2008, 11:30
|
|
Познающий
Регистрация: 14.02.2008
Сообщений: 62
Провел на форуме: 335706
Репутация:
4
|
|
Вопрос по Delphi
Как сделать чтоб из txt файла можно было выдернуть определенные слова допустим *Mitiay и сохронить выдернутые слова в txt другой.Думаю мысль понятно объяснил.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|