Forum » Programiranje » c# rad bi prebral memory od classa od druge aplikacije
c# rad bi prebral memory od classa od druge aplikacije
Vapo1 ::
ok... ce ima druga aplikacija classe ki so obicni microsoftovi classi oz .NET classi recimo... kot napirimer Button ali pa TextBox ali pa ListView ... obstajajo v user32.dll in kernel32.dll razne funkcije s katerimi lahko dobis ven podatke iz teh classov...
recimo:
(ce odtipkate v google dobite celo kodo)
ListSys32ColumnItems(int Sys32_Handle, int ColumnInd)
ta funkcija uporabi OpenProcess ... ReadProcessMemory ... Marshall levo desno...
in ti dobi ven text iz ListView Polja....
torej s tem lahko z zunanjo aplikacijo recimo beres ven polja iz excela naprimer... z zunanjo aplikacijo napisano v C# recimo
... potem imas funkcije GetText ... in ce tej funkciji podas handle od Buttona v drugi aplikaciji lahko dobis ven text od buttona... isto recimo za TextBox od druge aplikacije....
(handle od buttona od druge aplikacije dobis tako da najprej dobis handle od glavnega windowa .. potem pa uporabis recimo EnumChildWindows ki ti vrne SubHandle in eden tod teh handleov je button handle od tega buttona)
vse se da to lepo explorat z Spy++(zraven visual studio) utilitiem ali pa Winspector Spy(ki je zastonj in zelo uredu) .. samo z nekim krizcem zapeljes cez window in gumbe in ti vse izpise kaksni classi so in kaksne handle imajo...
no zdaj pa na moje vprasanje...
ker na temu podrocju sploh nisem expert sem naletel na zid.. (imel pa sem veliko uspeha do sedaj z brskanjem po netu in na slepo copy paste kodo za katero mi ni prav jasno kako tocno deluje)
uglavnem hocem prebrati podatke ven iz druge aplikacije...
v temu windowu od te aplikacije ko ga gledas lepo vidis lepe Buttone in lepe ListView-je z scrollbari in tako dalje
ampak ce uporabim Spy++ pokaze da je cel window od te aplikacije en sam QWidget class ... nic drugega
in zdaj ne vem kako dostopati do podatkov v temu qwidget classu
ce napisem v google qwidget..
http://doc.trolltech.com/4.0/qwidget.ht...
lepo pise:
The QWidget class is the base class of all user interface objects.
The widget is the atom of the user interface: it receives mouse, keyboard and other events from the window system, and paints a representation of itself on the screen.
torej zadaj se skrivajo buttoni in textboxi in Listviewi in podobno...
in moje vprasanje je kako dostopati do podatkov zadaj.... najbrz lahko iz memorije preberem nekako ta qwidget class in potem nekako interpretiram podatke....
???
hvala za pomoc
recimo:
(ce odtipkate v google dobite celo kodo)
ListSys32ColumnItems(int Sys32_Handle, int ColumnInd)
ta funkcija uporabi OpenProcess ... ReadProcessMemory ... Marshall levo desno...
in ti dobi ven text iz ListView Polja....
torej s tem lahko z zunanjo aplikacijo recimo beres ven polja iz excela naprimer... z zunanjo aplikacijo napisano v C# recimo
... potem imas funkcije GetText ... in ce tej funkciji podas handle od Buttona v drugi aplikaciji lahko dobis ven text od buttona... isto recimo za TextBox od druge aplikacije....
(handle od buttona od druge aplikacije dobis tako da najprej dobis handle od glavnega windowa .. potem pa uporabis recimo EnumChildWindows ki ti vrne SubHandle in eden tod teh handleov je button handle od tega buttona)
vse se da to lepo explorat z Spy++(zraven visual studio) utilitiem ali pa Winspector Spy(ki je zastonj in zelo uredu) .. samo z nekim krizcem zapeljes cez window in gumbe in ti vse izpise kaksni classi so in kaksne handle imajo...
no zdaj pa na moje vprasanje...
ker na temu podrocju sploh nisem expert sem naletel na zid.. (imel pa sem veliko uspeha do sedaj z brskanjem po netu in na slepo copy paste kodo za katero mi ni prav jasno kako tocno deluje)
uglavnem hocem prebrati podatke ven iz druge aplikacije...
v temu windowu od te aplikacije ko ga gledas lepo vidis lepe Buttone in lepe ListView-je z scrollbari in tako dalje
ampak ce uporabim Spy++ pokaze da je cel window od te aplikacije en sam QWidget class ... nic drugega
in zdaj ne vem kako dostopati do podatkov v temu qwidget classu
ce napisem v google qwidget..
http://doc.trolltech.com/4.0/qwidget.ht...
lepo pise:
The QWidget class is the base class of all user interface objects.
The widget is the atom of the user interface: it receives mouse, keyboard and other events from the window system, and paints a representation of itself on the screen.
torej zadaj se skrivajo buttoni in textboxi in Listviewi in podobno...
in moje vprasanje je kako dostopati do podatkov zadaj.... najbrz lahko iz memorije preberem nekako ta qwidget class in potem nekako interpretiram podatke....
???
hvala za pomoc
napsy ::
Mogoče boš moral pogledati COM+ komponente
"If you die, you die. But when you live you live. There is no time to waste."
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [Android] Bluetooth aplikacijaOddelek: Programiranje | 1109 (972) | marjan_h |
» | [Android]Cudno obnasanje aplikacije in emulatorjaOddelek: Programiranje | 1330 (1159) | KernelPanic |
» | [Visual C#] "Format" shranjevanja?Oddelek: Programiranje | 991 (776) | c0dehunter |
» | Qt Designer -> KDevelop C++ ErrorOddelek: Programiranje | 2138 (1668) | 'FireSTORM' |
» | C#, Dodajanje podatkov v Arraylist z GumbomOddelek: Programiranje | 2299 (2138) | Beezgetz |