[c++, winapi] OpenProcess

[c++, winapi] OpenProcess
0

Witam serdecznie!

Postaram się dość krótko i węzełkowato: Mianowicie ostatnio bawię się w debugging, co wiąże się z tym, że muszę jakoś dostać się do pamięci procesów, które chcę przeglądać. Używam do tego ReadProcessMemory, aczkolwiek problem leży gdzie indziej: do niektórych procesów po prostu nie mogę się dostać. Używam OpenProcess, ale w wyniku dostaję tylko 0. Dzieje się to tylko z niektórymi aplikacjami [np swobodnie mogę w tej sposób podglądać sobie pamięć notatnika.]. Prawdopodobnie chodzi o uprawnienia dostępu. A że jestem w tym nieco zielony, to proszę o pomoc :)

Względnie o jakieś inne rozwiązanie :)

0
SoryGregory napisał(a)

Witam serdecznie!

Postaram się dość krótko i węzełkowato: Mianowicie ostatnio bawię się w debugging, co wiąże się z tym, że muszę jakoś dostać się do pamięci procesów, które chcę przeglądać. Używam do tego ReadProcessMemory, aczkolwiek problem leży gdzie indziej: do niektórych procesów po prostu nie mogę się dostać. Używam OpenProcess, ale w wyniku dostaję tylko 0. Dzieje się to tylko z niektórymi aplikacjami [np swobodnie mogę w tej sposób podglądać sobie pamięć notatnika.]. Prawdopodobnie chodzi o uprawnienia dostępu. A że jestem w tym nieco zielony, to proszę o pomoc :)

Względnie o jakieś inne rozwiązanie :)
to zmien flage PROCESS_ALL_ACCESS na potrzebne tobie.

K6
  • Rejestracja:ponad 12 lat
  • Ostatnio:prawie 12 lat
  • Postów:4
0

Witam, na wstępie przepraszam za odświeżanie starego tematu, ale posiadam ten sam problem. Użycie flagi PROCESS_ALL_ACCESS nie pomaga. Czy można to jakoś inaczej rozwiązać? Do niektórych processów można dostać się do problemu a z niektórymi uchwyt do processu zwraca 0.
Z góry dziękuję za pomoc.

ST
  • Rejestracja:prawie 15 lat
  • Ostatnio:ponad 11 lat
0

Jaki Windows? Odpalasz z uprawnieniami admina?


Pozdro & poćwicz!
K6
  • Rejestracja:ponad 12 lat
  • Ostatnio:prawie 12 lat
  • Postów:4
0

Windows XP, tak odpalam to na administratorze.

ST
  • Rejestracja:prawie 15 lat
  • Ostatnio:ponad 11 lat
0

A co zwraca GetLastError ?


Pozdro & poćwicz!
K6
  • Rejestracja:ponad 12 lat
  • Ostatnio:prawie 12 lat
  • Postów:4
0

Właśnie nie do końca wiem jak to sprawdzić. Mógłbyś podać jakąś wskazówkę?

0

Widzę że koledzy mądrzy odwrotnie:

cz napisał(a)

to zmien flage PROCESS_ALL_ACCESS na potrzebne tobie.

Użycie flagi PROCESS_ALL_ACCESS nie pomaga.

Problemy z czytaniem...

K6
  • Rejestracja:ponad 12 lat
  • Ostatnio:prawie 12 lat
  • Postów:4
0

Wracając do mojego problemu. Użycie GetLastError dało wynik "Odmowa dostępu". Ma ktoś może jakiś pomysł?

SA
F1 wszystko Ci powie. Flaga MAXIMUM_ALLOWED pozwoli na otwarcie procesu bez dobierania innych flag, ale nie będziesz wiedział jakie uprawnienia masz. SeDebugPrivilege podniesie uprawnienia aplikacji w zakresie puli dostepu do innych procesów. CreateProcessWithToken, ImpersonateLoggedOnUser lub ewentualnie program psexec.exe pozwoli na zalogwanie się na systemowe konto bez ograniczeń w uprawnieniach.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.