Komponenty a obcy program

dział ogólny

Komponenty a obcy program

Nowy postprzez wargo » sobota, 14 lutego 2009, 21:13

Czy za pomocą tej porady da się pobierać zawartości komponentów w cudzym programie i edytować np. ListViev ?
Avatar użytkownika
wargo
Mądrosław
Mądrosław
 
Posty: 389
Dołączył(a): niedziela, 13 lipca 2008, 16:44
Podziękował : 12
Otrzymał podziękowań: 3
System operacyjny: Windows 7
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 6259515
    NieznanyNieznana

Re: Komponenty a obcy program

Nowy postprzez Cyfrowy Baron » niedziela, 15 lutego 2009, 12:57

Można przejąc kontrolę nad obiektami w innym programie i sterować nimi.

Czy można je edytować? To zależy co przez to rozumiesz.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4719
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Re: Komponenty a obcy program

Nowy postprzez wargo » niedziela, 15 lutego 2009, 13:01

Np. korzystać z funkcji dostępnych z klasy wybranego komponentu (nie znając też nadanej nazwy) np. dodać wartość.
Avatar użytkownika
wargo
Mądrosław
Mądrosław
 
Posty: 389
Dołączył(a): niedziela, 13 lipca 2008, 16:44
Podziękował : 12
Otrzymał podziękowań: 3
System operacyjny: Windows 7
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 6259515
    NieznanyNieznana

Re: Komponenty a obcy program

Nowy postprzez Cyfrowy Baron » niedziela, 15 lutego 2009, 13:23

a tego akurat nie można. To jest zahermetyzowane wewnątrz programu i poza nim nie jest dostępne.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4719
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Re: Komponenty a obcy program

Nowy postprzez wargo » niedziela, 15 lutego 2009, 14:08

To jakie operacje można wykonywać na komponentach?
Avatar użytkownika
wargo
Mądrosław
Mądrosław
 
Posty: 389
Dołączył(a): niedziela, 13 lipca 2008, 16:44
Podziękował : 12
Otrzymał podziękowań: 3
System operacyjny: Windows 7
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 6259515
    NieznanyNieznana

Re: Komponenty a obcy program

Nowy postprzez Cyfrowy Baron » niedziela, 15 lutego 2009, 14:25

Wydawać im polecenia, czyli generować zdarzenie, np. do obiektu tpu TButton można wysłać polecenie OnMouseDown i OnMouseUp.

Przykład:
Kod: Zaznacz cały
HWND hWnd = FindWindow("TDlg_Reg", "Rejestracja");

if(hWnd)
{
  HWND subH = FindWindowEx(hWnd, NULL, NULL, "START WERSJI 5");
  if(!subH) ShowMessage("Brak przycisku");
  SendMessage(subH, WM_LBUTTONDOWN, 0, 1);
  SendMessage(subH, WM_LBUTTONUP, 0, 1);
}
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4719
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Re: Komponenty a obcy program

Nowy postprzez wargo » niedziela, 15 lutego 2009, 19:42

A zapisać zawartości listy nie?
Avatar użytkownika
wargo
Mądrosław
Mądrosław
 
Posty: 389
Dołączył(a): niedziela, 13 lipca 2008, 16:44
Podziękował : 12
Otrzymał podziękowań: 3
System operacyjny: Windows 7
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 6259515
    NieznanyNieznana

Re: Komponenty a obcy program

Nowy postprzez Cyfrowy Baron » niedziela, 15 lutego 2009, 21:09

Nie gdyż odpowiada za to wewnętrzny mechanizm programu. Gdyby pod jakimś zdarzeniem obiektu znajdowała się funkcja zapisująca to można by to zdarzenie wywołać. Być może w TYM programie istnieje jakieś zdarzenie, które zapisuje zawartość listy, wtedy wystarczy wywołać takie zdarzenie.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4719
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Re: Komponenty a obcy program

Nowy postprzez wargo » poniedziałek, 16 lutego 2009, 12:13

Aha, dziękuję za odpowiedzi :)
Avatar użytkownika
wargo
Mądrosław
Mądrosław
 
Posty: 389
Dołączył(a): niedziela, 13 lipca 2008, 16:44
Podziękował : 12
Otrzymał podziękowań: 3
System operacyjny: Windows 7
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 6259515
    NieznanyNieznana


Powrót do Ogólne problemy z programowaniem

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 7 gości

cron