Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Шпион

330
22 октября 2006 года
kastron
215 / / 17.09.2006
Все привет.Тут шпиона пишу,который следит за буфером обмена.
Чтобы обнаружить че находится в буфере и закинуть текст в мемо пользуюсь следующим кодом:
-------------------------------------------------------------------------
function GetClipboardText(Wnd: HWND; var Str: string): Boolean;
var
hData: HGlobal;
begin
Result := True;
if OpenClipboard(Wnd) then
begin
try
hData := GetClipboardData(CF_TEXT);
if hData <> 0 then
begin
try
SetString(Str, PChar(GlobalLock(hData)), GlobalSize(hData));
finally
GlobalUnlock(hData);
end;
end
else
Result := False;
Str := PChar(@Str[1]);
finally
CloseClipboard;
end;
end
else
Result := False;
end;
------
var
Str: string;
begin
GetClipboardText(Handle, Str);
Memo1.Lines.Add(Str);
-------------------------------------------------------------------------
Так вот.А чтобы вести лог всего что наш шпион обнаружит использую следующее:
-------------------------------------------------------------------------
var
f: TextFile; // файл
fName: String[80]; // имя файла
i: integer;
begin
fName := Edit1.Text;
AssignFile(f, fName);

Append(f); // открыть для добавления

// запись в файл
for i:=0 to Memo1.Lines.Count do // строки нумеруются с нуля
writeln(f, Memo1.Lines);

CloseFile(f); // закрыть файл
=========================================================
Но единственный глюк!Прога короче должна вести лог равномерно.Типо обнаружила в буфере-дописала в файл.Но к меня почем-то не получается!!!!!!!!!!!!!!!
Подскажите пожалуйста в чем проблема?
Всем спасибо за помощь.
С уважением,SNAKE
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог