ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

26.03.2008, 21:10
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме: 4037638
Репутация:
1821
|
|
Сообщение от desTiny
А вот и у меня вопрос возник  Это конечно не критично, но всё же:
Как получить указатель на функцию из стандартных модулей, например, на функцию sin?
Я делал так:
Код:
type
num = Extended;
TFunc = function(x: num):num;
var
p: TFunc;
......
function sinus(x: num):num;
begin
result := sin(x);
end;
......
p := @sinus;
А хочется чего-нибудь типа
,но так оно не работает.
Извини, но я больше не знаю как
А что так не устраивает???
Последний раз редактировалось De-visible; 26.03.2008 в 22:14..
|
|
|

26.03.2008, 18:09
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме: 4037638
Репутация:
1821
|
|
Я вопроса не понял 
|
|
|

26.03.2008, 18:50
|
|
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме: 3008839
Репутация:
1502
|
|
Коротко: хочу получить указатель на функцию sin 
__________________
Bedankt euch dafür bei euch selbst.
H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
|
|
|

26.03.2008, 19:08
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме: 4037638
Репутация:
1821
|
|
{ Это простой пример, определяющий массив указателей на функции }
interface
type
{ определяем Procs как функцию }
Procs = function(var ProcNum: LongInt): LongInt;
var
{ объявляем массив указателей на функции }
ProcTable: array[1..5] of Procs;
{ определения интерфейсов функций }
function Proc1(var MyVal: LongInt): LongInt; far;
function Proc2(var MyVal: LongInt): LongInt; far;
function Proc3(var MyVal: LongInt): LongInt; far;
function Proc4(var MyVal: LongInt): LongInt; far;
function Proc5(var MyVal: LongInt): LongInt; far;
Ну или посмотри здесь 
_http://www.soft32.ru/delphi.shtml?topic=syntax&title=function_pointer
|
|
|

26.03.2008, 20:46
|
|
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме: 3008839
Репутация:
1502
|
|
Сообщение от De-visible
{ Это простой пример, определяющий массив указателей на функции }
interface
type
{ определяем Procs как функцию }
Procs = function(var ProcNum: LongInt): LongInt;
var
{ объявляем массив указателей на функции }
ProcTable: array[1..5] of Procs;
{ определения интерфейсов функций }
function Proc1(var MyVal: LongInt): LongInt; far;
function Proc2(var MyVal: LongInt): LongInt; far;
function Proc3(var MyVal: LongInt): LongInt; far;
function Proc4(var MyVal: LongInt): LongInt; far;
function Proc5(var MyVal: LongInt): LongInt; far;
Ну или посмотри здесь 
_http://www.soft32.ru/delphi.shtml?topic=syntax&title=function_pointer
В том-то и дело, что мне нужно обратиться не к моей собственной функции, а к стандартной типа sin, cos, abs и т.п. Так, как ты пишешь, я и сделал (см. приведённый мной пример), но мне интересно, как сделать это непосредственно...
__________________
Bedankt euch dafür bei euch selbst.
H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
|
|
|

26.03.2008, 21:16
|
|
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме: 3008839
Репутация:
1502
|
|
Просто когда много таких вызовов, очень не хочется для каждой функции создавать "переадресацию"... Так-то я и сделал, а теперь оптимайзю 
__________________
Bedankt euch dafür bei euch selbst.
H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
|
|
|

27.03.2008, 13:17
|
|
Постоянный
Регистрация: 26.12.2007
Сообщений: 353
Провел на форуме: 905389
Репутация:
332
|
|
дайте пожалуйста код хеширования строки в NT и/или LM как в проге SAMinside иди Passwordpro...
|
|
|

27.03.2008, 14:45
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме: 4037638
Репутация:
1821
|
|
Сообщение от KIR@PRO
дайте пожалуйста код хеширования строки в NT и/или LM как в проге SAMinside иди Passwordpro...
Тебе важны сами алгоритмы или их реализации на DELPHI??
-------------------------
Вот посмотри еще:
Код:
_http://inf.nm.ru/lokalno.htm
_http://www.3dnews.ru/software/win-xp-encrypting/index2.htm
_http://www.openwall.com/john/
_http://www.connect.ru/article.asp?id=6641
_http://www.web-hack.ru/download/index.php?case=4
_http://book.itep.ru/6/des_641.htm
_http://www.kursovik.net/programming/290019.html
Последний раз редактировалось De-visible; 27.03.2008 в 15:34..
|
|
|

28.03.2008, 19:38
|
|
Познающий
Регистрация: 06.09.2006
Сообщений: 94
Провел на форуме: 397064
Репутация:
15
|
|
Подскажите плз как изменить что бы не было повторов в найденом? ВОт код:
Код:
procedure poisk;
var S, Q: TStrings;
I, J: Integer;
begin
S := TStringList.Create;
Q := TStringList.Create;
S.LoadFromFile('C:\bla-bla.txt');
I := 0;
J := 0;
while I<S.Count-1 do
begin
if Pos('string 1', S.Strings[I])<>0 then
begin
Q.Add(S.Strings[I]);
Inc(I);
Inc(J);
Q.Add(S.Strings[I]);
Q.Add('');
end;
Inc(I);
end;
if J>0 then
begin
Q.Insert(0, '');
Q.Insert(0, DateToStr(Now));
Q.Insert(0, 'Naydenno '+IntToStr(J)+' strok');
Q.SaveToFile('c:\result.txt');
end;
S.Free;
Q.Free;
end;
|
|
|

28.03.2008, 22:32
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме: 4037638
Репутация:
1821
|
|
Сообщение от Twiddle
Подскажите плз как изменить что бы не было повторов в найденом? ВОт код:
Код:
procedure poisk;
var S, Q: TStrings;
I, J: Integer;
begin
S := TStringList.Create;
Q := TStringList.Create;
S.LoadFromFile('C:\bla-bla.txt');
I := 0;
J := 0;
while I<S.Count-1 do
begin
if Pos('string 1', S.Strings[I])<>0 then
begin
Q.Add(S.Strings[I]);
Inc(I);
Inc(J);
Q.Add(S.Strings[I]);
Q.Add('');
end;
Inc(I);
end;
if J>0 then
begin
Q.Insert(0, '');
Q.Insert(0, DateToStr(Now));
Q.Insert(0, 'Naydenno '+IntToStr(J)+' strok');
Q.SaveToFile('c:\result.txt');
end;
S.Free;
Q.Free;
end;
Зачем так - он у тебя последнюю строку не проверит!
пиши так
или А что бы в result.txt не было повторов
сделай повторный поиск поэтому файлу 
===============================
Код:
procedure poisk;
var SL,Ish: TStringList;
i:integer;
begin
ISH:=TstringList.Create;
ISH.LoadFromFile('d1.txt');
SL := TStringList.Create;
with SL do
try
Sorted := True;
For i:=0 to ISH.Count-1 Do Begin
SL.Add(ISH[i]);
end;
Duplicates := dupIgnore;
sl.SaveToFile('result.txt');
finally
Free;
end;
end;
-----------------------------
Удаляет все дубликаты и сохраняет в result.txt
А чего ты именно хочешь?()
Вывести сколько раз в файле встречается строка String 1?
Последний раз редактировалось De-visible; 29.03.2008 в 01:13..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|