Új hozzászólás Aktív témák
-
ArchElf
addikt
A válasz ott van a linkelt oldalon:
"There is one catch here though. In order for this to work, I call the AdjustPrivileges function in the same module as WinMain to give this application debug rights. Otherwise OpenProcess with PROCESS_ALL_ACCESS fails. This code is straight out of the MSDN Knowledge base - Article ID: Q131065"
Bár a MS oldalon azt írja, hogy csak a rendszerprocesszek debuggolásához kell a SeDebugPrivilege, de valószínűleg a kérdéses API nem működik nélküle, függetlenül attól, hogy nem system, hanem user process memóriáját akarod megnézni.AE
-
ArchElf
addikt
Ezt managelt kódban már valószínűleg nem fogod tudni megcsinálni. Ez már inkább C/C++ terület (esetleg megcsinálhatod C#-ban is nem managelt módban)...
Bizonyos részeit egyszerűen meg lehet csinálni, pl futó processzek listája. De ezt is csak lekérdezgetni tudod bizonyos időközönként.
Találtam egy kis segítséget:
http://www.codeproject.com/KB/threads/MDumpAll.aspxAE
-
acélkemény
csendes tag
-
x007
tag
Sokkal karbantarthatóbb így a kód. Sok textbox-ra már általános megoldást csinálnék (most nem raktam bele többet):
-
x007
tag
Én elég hamar működésre bírtam...

-
ArchElf
addikt
Miért? Persze a kódban statikusan van megoldva, de ott a két függvény, amivel be és ki lehet regisztrálni hotkey-eket. Egyszerűen, amikor változtatni akarsz, akkor kiregisztrálod az előzőt, és beregisztrálsz egy újat.
Az ott közzétett rutinon csak annyit kell változtatni, hogy nem külön adod meg a módosítókat (SHIFT/ALT/CTRL/WIN), hanem azt a WinKey-t dolgozod fel egyből és adod át a függvénynek, amit a KeyDown esemény visszaad (e.KeyData).
Magyarán csinálsz egy olyan kontruktort is a GlobalHotKey osztálynak, ami a teljes (módosítókkal is ellátott KeyData értéket is fel tudja dolgozni).AE
-
ArchElf
addikt
Nem tudom, te hol találtad ezt a GlobalHotKey-t, de itt van róla egy kicsit bővebb magyar leírás: link
Amúgy ez az a két függvény:
[DllImport("user32.dll")]
public static extern bool RegisterHotKey(IntPtr hWnd, int id, uint fsModifiers, uint vk);
[DllImport("user32.dll")]
public static extern bool UnRegisterHotKey(IntPtr hWnd, int id);AE
-
ArchElf
addikt
private GlobalHotKey ghk = null;
private VoidEventHandler ghk_event = null;
private void textBB_KeyDown(object sender, KeyEventArgs e)
{
ghk = new GlobalHotKey(e.KeyData, false, false, false, false);
textBox1.Text = e.KeyData.ToString();
}
private void SetHotKey_Click(object sender, EventArgs e)
{
if (ghk_event != null)
ghk.Hotkey -= ghk_event;
ghk_event = new VoidEventHandler(Hotkey);
ghk.Hotkey += ghk_event;
}AE
-
bpx
őstag
én csak azt láttam, hogy az eventben, amit használtál nem lehet kideríteni, hogy melyik billentyűt nyomták le
hogy hogyan lehet char-ból virtuális key-t csinálni? az jó kérdés, ezt a részt nem ismerem annyira, lehet hogy van vmi pofonegyszerű megoldás .NET-ben, amiről nem tudok
lehet pl. olyat, hogy csinálsz egy asszociatív adatszerkezetet (Dictionary, HashTable, ami épp tetszik), amiben előre eltárolod a konstansokat, és a kapott char-ral címzed
-
bpx
őstag
ne a TextChanged event-et használd, hanem a KeyPress-t
annak van KeyPressEventArgs e argumentuma, ahol az e.KeyChar-ral megkapod hogy mi volt a lenyomott karakter (csak valós karakterekre működik, char típust ad vissza, neked kell belőle Key-t "varázsolni" - ha ctrl,alt,shift, stb vezérlőkarakterek is kellenek, akkor KeyDown/KeyUp eventek, és e.KeyData)
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- BestBuy topik
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Milyen billentyűzetet vegyek?
- exHWSW - Értünk mindenhez IS
- Xiaomi 17 Ultra - jó az optikája
- Milyen okostelefont vegyek?
- Külföldi prepaid SIM-ek itthon
- Anglia - élmények, tapasztalatok
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Call of Duty: Warzone
- További aktív témák...
- 146 - 147 - 167 - 168 - 169 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4090
- Apple iPhone 17 Pro Max - Deep Blue - 256GB - ONE - ÚJ - 3 Év Jótállás.
- BESZÁMÍTÁS! ASRock B250M i5 6600K 16GB DDR4 250GB SSD GTX 1650 4GB BITFENIX DeepCool 400W
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone i5 10400F 16/32/64GB RAM RX 7600 8GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

