Skocz do zawartości

Pytania i dygresje :)


Doc

Recommended Posts

Witam!
Mam pare pytań i uwag.
Na wstępie chciałbym się zapytać skąd (jeśli wogóle gdzieś jest ) można sciagnac dokumentacja WinApi, poniewaz posiadam nienajbardziej orginalnego VC++ i niestety plytek z helpem nie mam.

Jeszcze co mnie trapi to takie jedno pytanko, a raczej problem:
jest taki program ktory nazywa sie taskmgr.exe ( Menedzer zadan :) )
wiec wpadlem na pomysl jak go zablokowac w XP a mianowicie:
Jezeli jest uruchomiony to mozna tak po prostu po chamsku znalesc jego okno i przez funkcje FindWindow i wyslac WM_CLOSE ( funkcja DestoyWindow zamiast WM_CLOSE tez dziala ). I tu wszystko jasne piekne. Ale zaczyna sie gorka. Teraz trzeba utworzyc okno o nazwie "Menedżer zadań Windows" poniewaz menedzer zadan wykrywa swoja obecnosc poprzez znalezienie okna o tym tytule. Okno moze byc ukryte. Teraz wysyla komunikat do znalezionego okna za pomoca funkcji SendMesageTimeout. 4 pierwsze parametry to hwnd, msg, wparam, lparam, oraz wysyla jeszcze jakies parametry flage i jakis wskaznik. Caly problem polega na tym ze nie mozna tego wskaznika pobraz bo nie ma go ani w wparam, ani w lparam. Jak ktos moze mi powiedziec jak obsluzyc taki komunikat z SendMessageTimeout to bede wdzieczny. Sypne tez gotowym kodem jak zablokowac menedzera.

Mam jeszcze pare pytan ale narazie poskromie swoja ciekawosc :P
Za pomoc thanks

Link do komentarza
Udostępnij na innych stronach

Dobra dobra spoon ale jak wiesz malo prawdopodobne jest ukrycie programu z listy procesów. Lepiej powiedz jak dziala funkcja SendMessageTimeout w msdn nie wiele bylo. Lepiej zablokowa task menedzera niz nic nie muc zrobic no nie???? :)
Oczywiscie mozna zamknac okno taskmgr ale kto by sie w to bawil jak kazdy to moze zrobic ale zrobic zeby sie nie uruchamial to jest cos :) no nie????

Link do komentarza
Udostępnij na innych stronach

W sumie moża skasować taskmgr.exe :) Ale windows z powrotem przywraca ten program, pewnie jest gdzieś jego kopia ale za cholere nie mogę jej znaleźć.
Co to twojego problemu to nie zabardzo rozumiem co ty chcesz zrobić i po co ci ta funkcja. Może napisz jaśniej to coś wymyślimy i napiszemy jakiegoś trojana :)

Link do komentarza
Udostępnij na innych stronach

Hmmmm..... spoon mi nie o trojana chodzi tylko o to by zablokowac mozliwosc uruchamiania task menedzera.
O co mi chodzi to napisalem na samym poczatku ale moge jeszcze raz :) tylko troche jasniej. A wiec:

W pewnym momencie taskmgr znajduje okno o tytule "Menedżer zadań Windows" czy coś takiego. A nastepnie wysyła za pomocą funkcji SendMessageTimeout komunikat. Chodzi mi o ostatni parametr czyli pdwResult ktory jak dobrze zrozumialem zawiera kod zwracany przez funkje obslugi okna do ktorego zostala wyslana wiadomosc, ale to jakas lipa bo obojetnie co zwroce to *pdwResult == 0 a jak to zwraca taskmgr to jest 1 i moje pytanie jest takie:
Jak ustawic tom zmienom na 1???

Juz jasniej sie chyba nie da tego napisac :)

Bylbym baaaaaaaaaardzo wdzieczny za pomoc.

Link do komentarza
Udostępnij na innych stronach

Po paru godzinach debugowania doszedlem do tego ze:
po pierwsze szuka okna
po drugie wysyla komunikat

nie bede teraz pisal jak co i gdzie bo to nie ma sensu. Musze tylko wiedziec jak ustawic ten ostatni parametr na jeden albo ewentualnie skad go wziasc bo nigdzie nie moge znalesc opisu dokladnego funkcji SendMessageTimout.

Czy teraz jasne????

Link do komentarza
Udostępnij na innych stronach

Receives the result of the message processing. This value depends on the message sent.

Według mojego angielskiego to znaczy coś w stylu: otrzumuje rezultat przetwarzania komunikatu. Ta wartość zależy od wysłanego komunikatu.
Nie wiem co ty robisz z tym wskaźnikiem ale mam nadzieję że on pokazuje na jakieś miejsce w twoim programie a nie gdzieś indziej :)

Link do komentarza
Udostępnij na innych stronach

Ta wartość zależy od wysłanego komunikatu.
Nie wiem co ty robisz z tym wskaźnikiem ale mam nadzieję że on pokazuje na jakieś miejsce w twoim programie a nie gdzieś indziej :)

Hmm.... wlasnie ze ten wskaznik jest z tskmsg a nie z mojego programu. I w ten sposob jest lipa bo nie wiem jak go uzyskać.

Link do komentarza
Udostępnij na innych stronach

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gość
Odpowiedz...

×   Wkleiłeś zawartość bez formatowania.   Usuń formatowanie

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Utwórz nowe...