Jeg skal have lavet saaledes at CTRL+ALT+S saetter mit program i focus uanset i hvilket program jeg er i. Det vil sige at jeg skal have lavet et system hook. Af en eller anden maerkelig grund kan jeg ikke faa det til at virke. Nu saetter jeg 200p paa hoejkant hvis der er en der kan komme med et fungerende eksempel.
det er stadig et lokalt hook(GetCurrentThreadId()). Skal det blive globalt(et system hook), skal denne int saettes til 0. Selvom man goer det, saa virker det dog ikke...
hehe.. du skal vist træne dit engelsk.. der står at man skal implementere en native dll... det er det som sker her:
[DllImport("user32.dll")] public static extern IntPtr SetWindowsHookEx(HookType code, CbtHook.CbtProc func, IntPtr hInstance, int threadID); [DllImport("user32.dll")] public static extern int UnhookWindowsHookEx(IntPtr hhook);
hvor du opretter forbindelse til to funktioner i user32.dll'filen som er en del af windows's "højere ledelse"...
yes, det er nok rigtigt... lige faa styr paa alle termer og lidt engelsk, men nok om det.
Ikke desto mindre, skal man - hvis man vil have et system hook - have en seperat dll, hvori det kode der skal eksekveres ligger. Det kan ikke ligge i samme dll/exe som det kode der installerer hooket. Jeg har proevet, men har ikke haft nogen held.
ja, alt virker saa laenge det er et lokalt hook(hookning paa applikations traaden). Men idet jeg vil hooke alle traade(id=0), saa virker det ikke. I information paa nettet, staar der at koden skal ligges i seperat dll, pga... noget jeg ikke lige fatter. Har dog proevet det, men er som sagt ikke sikker paa at jeg goer det rigtige.
Du kan lave din dll om til native code ved at bruge ngen tool'et. Og voila så kan du hooke :)
"Native Image Generator (Ngen.exe) Lets you create a native image from a managed assembly and install the image in the native image cache on the local computer."
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.