FindWindowEx - nie wyszukuje...

0

Zwracam sie do uzytkownikow z nastepujacym problemem

Uchwyt := FindWindow(nil, 'Tetris'); // pobranie uchwytu okna aplikacji
Uchwyt := FindWindowEx(Uchwyt, 0, nil, 'Free Version'); // pobranie uchwytu radiobuttona
SetWindowText(Uchwyt, 'Full version'); Zmiana tekstu, ktora niestety nie dziala...

Niesetty podana procedura nie dziala na radiobuttony. Przypuzczam ze to dlatego iz RadioButton jest jakby "wewnatrz" innej kontrolki/panelu. Dodam ze FindWindowEx swietnie dziala na inne komponenty aplikacji.

Pytanie brzmi: Jak pobrac uchwyt ktory lezy jeszcze "glebiej" w aplikacji? Mam nadzieje ze zrozumiale to napisalem....

0

A moze jest funkcja zamiast FindWindowEx ktora szuka glebiej w aplikacji, tzn: wszystkie potomne kontrolki.

0

po prostu kolejny FindWindowEx z uchwytem z poprzedniego FindWindowEx
można je wywoływać tak kaskadowo w nieskończoność

możesz pobrać jakiś program który wyświetla klasy obiektów na których jest myszka i dostaniesz cały wężyk jak się dostać do tej kontrolki

0

Np:

 
Uchwyt := FindWindow(nil, 'Tetris'); // pobranie uchwytu okna aplikacji

Uchwyt := FindWindowEx(Uchwyt, 0, nil, 'Panel1'); // pobranie uchwytu panelu

Uchwyt := FindWindowEx(Uchwyt, 0, nil, 'Free Version'); // pobranie uchwytu radiobuttona
SetWindowText(Uchwyt, 'Full version'); Zmiana tekstu, ktora niestety nie dziala...

Program, o którym wspomniał bronexis to no WindowSpy: http://www.softpedia.com/get/System/System-Miscellaneous/WindowSpy.shtml

0

Pobieranie uchwytów Edit innej aplikacji.

w linku poczytaj odpowiedź @olesio

0

@bronexis: zamiast od razu smarować posta na forum, należało przeczytać wygooglować opis funkcji SetWindowText i go przeczytać: http://msdn.microsoft.com/en-us/library/windows/desktop/ms633546(v=vs.85).aspx a dodatkowe rozwiązanie polecił @unikalna_nazwa. Poza tym można się wspomóc EnumChildWindows i tymczaosow wylistować kontrolki i ich teksty do na przykład do Memo, dzięki czemu będziesz wiedział, która w kolejności kontrolka to ta właściwa, a później dzięki globalnej zmiennej liczbowej, którą sobie zwiększasz od zera możesz w momencie gdy równa jest "liczbie porządkowej" kontrolki robił sobie z nią to co jest dozwolone.

EDIT: o widzisz @Młody wskazał inny mój post z odpowiedzią, która padła dość dawno temu i ja o niej zapomniałem.

0

Hi, maly offtop
Olesio, w tamtym temacie bylo cos o lamaniu keygena :), udalo ci sie to zrobic w koncu? jestem ciekawy jesli tak to w jaki sposob ::)

0
dssdsdsd napisał(a):

Olesio, w tamtym temacie bylo cos o lamaniu keygena

Łamanie keygena? Po co łamać keygeny? wutwut.

Ps. Malware INC! :D

0

:) no keygen to specyficzna nazwa z tamtego watku, chodzi oczywiscie o pewnego rodzaju crackme :) rzecz jasna

0

Tego keygenme nie pokonałem do końca. Pod Debuggerem przechodziłem nazwijmy to trzy z czterech "kroków" sprawdzających. Ale w ostatnim kroku były jakieś niezrozumiałe dla mnie operacje polegające na mnożeniu i dzieleniu liczb zmiennoprzecinkowych, które nie wiem skąd się brały. Pośrednio były chyba zależne od liczb wygenerowanych w jednym z kroków. A ponieważ słabo znam asm - poprosiłem o pomoc @msm, ale On rownież nie do końca znalazł na to czas, także ostatecznie odpuściliśmy sobie. Może gdzieś na sieci jest jednak solucja tego keygenme, chociaż takowej nie znalazłem. A co do robienia keygenów to powinno się zawsze zrobić checkbox czy button do wyłaczenia muzyczki. Bo użyty chiptune, który wpada nam w ucho, może nie przypaść do gustu temu kto akurat korzysta z naszego keygena :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1