Pamięć nie może być "read"

Witam. Mam taki program, że jak go uruchomię to mam podać lokalizację pliku .exe, do którego będzie się on odwoływał i uruchomi się on zamiast niego (coś w stylu niektórych cracków itp., tylko że jest to zwyczajny mod).

Pół roku temu wszystko było ok. Do tego czasu zreinstalowałem Windowsa i jak chcę wykonać tę czynność wyskakuje mi komunikat:

"Instrukcja spod ‘0x003b59f0’ odwołuje się do pamięci ‘0xffffffff’. Pamięć nie może być ‘read’ ". - Niekiedy pisze ‘written’, ale rzadko. I nie dzieje się tak z jednym programem, tylko z kilkoma. Poszukałem w internecie rozwiązania, lecz nie znalazłem. Znalazłem kilka ‘rozwiązań’, ale u mnie nie działają :frowning: .

Np.:

  1. Uszkodzony RAM - wszystko OK (sprawdzałem Mem Testem 6h w nocy :P)

  2. Uszkodzona pamięć grafiki - wszystko OK

  3. Uszkodzenie twardego dysku - wszystko ok (HDDLife - stan dysku: doskonały)

  4. Reinstalka Windowsa - nie trzeba, niedawno reinstalowałem, a pierw chcę wiedzieć co nie gra

  5. Sprawdzić system pod katem obecności szkodliwego oprogramowania - użyłem Panda ActiveScan, MKS Skaner On-line i Avast! Home Edition, Ad-Aware, CWShredder - czysto

  6. Zaśmiecony rejestr - użyłem RegistryFix, Registry Reapir, Error Guard i TuneUp Utilities - czysto

  7. Uszkodzony rejestr - wszystko OK

  8. Włącz/Wyłącz stronicowanie - nic nie dało

  9. Wadliwy program, uszkodzony plik - nie może być, bo pół roku temu chodził, a mam ten sam plik na dysku (nie łączy sięprzez neta)

  10. Wadliwe sterowniki lub kodeki - wszystko OK

  11. Wadliwy nośnik - plik mam na HDD …

Zostały mi jeszcze 2 rozwiązania, może wy coś jeszcze wymyślicie.

a) Podobno jedna z aktualizacje powoduje ten problem, nie wiem która, gdzieś to przeczytałem. Możliwe, gdyż wcześniej tej aktualizacji nie miałem, bo niedawno zainstalowałem AutoPatchera.

b) "program próbuje wyczytać pamięć, która jest zabroniona przed odczytem lub chce wyczytać przedział przydzielony innemu programowi (“dobiera” się do pamięci przydzielonej innej aplikacji) - może to jest główna przyczyna. Ale wcześniej to chodziło. W końcu napisałem, że muszę podać lokalizację pliku .exe i on się uruchamia jako podmieniony plik.

Każda rada będzie użyteczna, proszę o pomoc. Dzięki :slight_smile:

:arrow: sprawdz co pokazuje podgląd zdarzeń, start-> uruchom-> eventvwr.msc

:arrow: podmień zasilacz

:arrow: sprawdz czy wszystki pliki są podpisane cyfrowo, :szukaj:

1.Podgląd zdarzeń:

Typ:Informacje

Data: 2006-10-11

Godzina: 15:52:57

Źródło: Application Popup

Kategoria: Brak

Nazwa firmy: Microsoft Corporation

Nazwa pliku: ntdll.dll

Identyfikator Zdarzenia: 26

Użytkownik: Brak

Opis: Podręczne okno aplikacji: Call of Duty Multiplayer: CoDMP.exe - Błąd aplikacji : Instrukcja spod “0x003e5b50” odwołuje się do pamięci pod adresem “0xffffffff”. Pamięć nie może być “read”.

Kliknij przycisk OK, aby przerwać działanie aplikacji

  1. Następujące pliki nie są podpisane cyfrowo:

Nazwa W folderze Typ pliku Wersja pliku

wmp.dll c:\windows\system32 rozszerzenie a. 10.0.0.4036

soundman.exe c:\windows Aplikacja 5.1.0.40

rtlcpl.exe c:\windows\system32 Plik EXE 1.0.1.47

rtlcpapi.dll c:\windows\system32 Plik DLL 1.0.0.4

atitool.sys c:\windows\system32\drivers Plik SYS 1.24.0.0

alsndmgr.wav c:\windows\system32 Plik WAV brak

alsndmgr.cpl c:\windows\system32 Plik CPL 2.2.0.45

alcxwdm.sys c:\windows\system32\drivers Plik SYS 5.10.0.5865

Pliki odnalezione: 3386

Pliki podpisane: 2198

Pliki niepodpisane: 8

Pliki nieskanowane: 1180

Czy coś z tego wynika? :stuck_out_tongue:

najpierw zaimniemy się plikiem ntdll.dll

Otwórz Eksplorator windows i folder C:\Windows\System32\dllcache - zaznacz plik ntdll.dll - daj polecenie (na belce Eksploratora) “Kopiuj do” - wskaż folder C:\Windows\system32 i kliknij OK

Pisze, że pli (ten z folderu system32) jest używany przez aplikacje i nie umiem podmienić. Używa go 36 programów, mam go odblokować Unlockerem?

w jaki sposób to sprawdziłeś :?:

zrób to z konsoli odzyskiwania

wrazie problemów, przywróc stary plik, konsola odzyskiwani.

X: -> oznacza litere przydzieloną CDROM :!:

No sprawdziłem Unlockerem. Jak wpisuję ‘cd system32’ to pisze “System nie może odnaleźć określonej ścieżki”. Na płycie mam ten plik w wersji 5.1.2600.0 a na dysku C 5.1.2600.2180 :slight_smile: .

sprawdz poprawke na plik ntdll.dll

Miałem już tę poprawkę :). Ściągnąłem sobie ten plik ze strony http://www.dll-files.com/dllindex/dll-files.shtml?ntdll - ma on 8 KB mniej i jest w tej samej wersji co ja mam. Tylko dalej nie umiem podmienić :P. Na pewno wina leży po stronie tego pliku?

tego nie jestem pewny na 100%

możesz zrobić tak:

:arrow: start-> uruchom-> %windir%\sysytem32\dllcache i gdzie skopiuj plik ntdll.dll do %windir%\temp

:arrow: konsola odzyskiwania i komendy :wink:

wrazie jakiegos błedu, przywracasz stary plik.

No ja też mam taki problem tylko że z multiplayerem w gta San Andreas

a błąd to’'Instrukcja spod 0x02711376 odwołuje siędo pamięci pod adresem 0x00000000. Pamięc nie może być read.

Kliknij przycisk OK ,aby przerwać działanie aplikacji

ja chce włączyć GTA san Andreas i tez mi wyskakuje pamięć nie możne być reed :(… proszę o pomoc