현재 위치 - 인적 자원 플랫폼망 - 미니프로그램 자료 - 형제가 말해줄 수 있나요?
형제가 말해줄 수 있나요?
좀 길어요. 천천히 하세요....

이 메모리를 읽거나 쓸 수 없는 일반적인 이유.

Windows 운영 체제를 사용하는 사람들은 때때로 "명령 0x 000000000 0x에서 참조한 메모리에 쓸 수 없습니다"라는 오류 메시지가 표시되고 애플리케이션이 종료되는 경우가 있습니다. 일부 '전문가'에게 물어보면 "Windows가 너무 불안정하다"는 대답과 함께 분노와 경멸을 표하는 경우가 많습니다. 실제로이 오류는 반드시 Windows의 불안정성으로 인해 발생하는 것은 아닙니다. 이 문서에서는 이 오류의 일반적인 원인을 간략하게 분석합니다.

첫째, 애플리케이션이 메모리 할당을 확인할 수 없습니다.

응용 프로그램에서 데이터를 저장하기 위해 메모리 블록이 필요한 경우 운영 체제에서 제공하는 '함수'를 호출하여 메모리를 요청해야 합니다. 메모리가 성공적으로 할당되면 함수는 새로 열린 메모리 영역의 주소를 애플리케이션에 반환하고 애플리케이션은 해당 주소에서 메모리를 사용할 수 있습니다. 이를 "동적 메모리 할당"이라고 하며 메모리 주소는 프로그래밍에서 "포인터"라고도 합니다.

메모리는 항상 사용 가능하고 무한한 것은 아니며 때때로 메모리 할당이 실패할 수 있습니다. 할당에 실패하면 시스템 함수는 0 값을 반환합니다. 이때 반환 값 "0"은 더 이상 새로 활성화된 포인터를 나타내는 것이 아니라 시스템이 애플리케이션에 오류가 발생했다는 알림을 보내는 것입니다. 애플리케이션은 메모리를 사용할 때마다 반환값이 0인지 확인해야 합니다. 반환값이 0이면 오류가 발생한 것이므로 이를 저장하기 위한 조치가 필요하므로 애플리케이션의 '견고성'을 높여야 합니다.

응용 프로그램이 이 오류를 확인하지 않으면 해당 값이 '관성'에 의해 할당된 사용 가능한 포인터라고 가정하고 후속 연산에 메모리를 계속 사용합니다. 실제 0 주소 메모리는 컴퓨터 시스템에서 가장 중요한 "인터럽트 설명자 테이블"을 저장하는데, 이 테이블은 애플리케이션에서 절대 사용할 수 없습니다. 보호되지 않는 운영 체제(예: DOS)에서는 이 주소에 쓰면 즉시 충돌이 발생하지만, 강력한 운영 체제(예: Windows)에서는 이 작업이 시스템의 보호 메커니즘에 의해 즉시 포착되어 운영 체제에서 오류를 전파하는 것을 방지하기 위해 오류 애플리케이션을 강제로 종료합니다. 참조된 메모리 주소가 "0x00000000"이라는 위의 "메모리 쓰기" 오류가 발생합니다.

메모리 할당 실패에는 메모리 부족, 시스템 기능 버전 불일치 등 여러 가지 이유가 있습니다. 따라서 이러한 종류의 할당 실패는 주로 운영 체제를 오랫동안 사용했거나 여러 응용 프로그램(의도치 않게 설치된 바이러스 프로그램 포함)이 설치되고 시스템 매개 변수 및 시스템 파일이 많이 변경된 후에 나타납니다.

두 번째는 애플리케이션이 자체 버그로 인해 비정상적인 메모리 포인터를 참조하는 경우입니다.

동적 할당을 사용하는 애플리케이션에서 프로그램이 "사용 가능해야 하는" 메모리를 읽거나 쓰려고 하지만 어떤 이유로 인해 예상되는 사용 가능한 포인터가 실패하는 경우가 가끔 발생합니다. 프로그램이 운영 체제에 할당을 요청하는 것을 "잊었거나", 프로그램 자체가 어느 시점에서 메모리를 취소하여 "알아차리지 못했거나" 등의 이유로 메모리가 시스템에 의해 회수될 수 있습니다. 취소된 메모리는 시스템에 의해 회수되고 해당 액세스 권한은 더 이상 애플리케이션에 속하지 않으므로 읽기 및 쓰기 작업도 시스템의 보호 메커니즘을 트리거하며 "법 위반" 시도의 유일한 최종 결과는 프로그램이 중단되고 모든 리소스가 복구되는 것입니다. 컴퓨터 세계의 법칙은 여전히 인간의 법칙보다 훨씬 더 효과적이고 엄격합니다! 이와 같은 경우는 프로그램 자체의 버그이며, 특정 작업 순서에서 오류를 재현할 수 있는 경우가 많습니다. 잘못된 포인터는 항상 0이 아니므로 오류 메시지의 메모리 주소가 반드시 "0x00000000"일 필요는 없으며 다른 임의의 숫자일 수도 있습니다.

시스템에 이러한 오류 메시지가 자주 표시되는 경우 다음 제안 사항이 도움이 될 수 있습니다.

1. 시스템에 트로이 목마 바이러스가 있는지 확인합니다. 이러한 유형의 프로그램은 시스템을 제어하기 위해 무책임하게 시스템을 수정하여 운영 체제 이상을 초래하는 경우가 많습니다. 평소 정보 보안에 대한 인식을 강화하고 출처를 알 수 없는 실행 프로그램에 대해 호기심을 갖지 말아야 합니다.

2. 운영 체제의 설치 프로그램이 올바른 버전의 시스템 파일과 올바른 시스템 매개 변수를 복사할 수 있도록 운영 체제를 업데이트합니다. 운영 체제 자체에 버그가 있는 경우가 있으므로 공식적으로 출시된 업그레이드를 설치하도록 주의하세요.

3. 새 버전의 애플리케이션을 사용해 보세요.

일부 프로그램을 실행할 때 가끔 메모리 오류 메시지가 나타난 후 프로그램이 종료되는 경우가 있습니다.

"0x" 명령어는 "0x" 메모리를 참조합니다. 메모리를 "읽을" 수 없습니다.

"0x" 명령어는 "쓰기"가 불가능한 0x 메모리를 참조합니다.

이런 경우가 발생했는지 모르겠습니다. (0x 뒤에 오는 것은 다를 수 있습니다.)

일반적으로 이 현상에는 여러 가지 측면이 있습니다. 하나는 하드웨어, 즉 메모리에 문제가 있다는 것이고 다른 하나는 소프트웨어에 문제가 많다는 것입니다.

첫 번째 하드웨어:

일반적으로 메모리에 문제가 있을 가능성은 거의 없습니다. 주요 측면은 메모리 스틱이 나쁘고 메모리 품질에 문제가 있으며 용량이 다른 두 가지 메모리 브랜드가 있으며 호환되지 않는 경향이 있습니다. 또한 특히 오버클러킹 후 열 방출 문제에 주의하세요. 메모리의 안정성을 철저하게 확인할 수 있는 소프트웨어 MemTest를 사용하여 메모리를 확인할 수 있습니다.

이 문제는 듀얼 메모리가 있고 다른 브랜드의 메모리 칩을 혼합하거나 중고 메모리를 구입하는 경우 발생합니다. 이 경우 메모리에 문제가 있는지 또는 다른 하드웨어와 호환되지 않는지 확인해야 합니다. 그렇지 않다면 소프트웨어 오류를 배제하세요.

먼저 원리를 간단히 설명하자면 메모리에는 버퍼라는 데이터를 저장하는 공간이 있습니다. 프로그램이 데이터를 한 곳에 넣으면 공간이 충분하지 않아 넘치게 됩니다. 예를 들어 양동이는 1파운드의 물만 담을 수 있습니다. 2파운드의 물을 넣으면 양동이가 넘칩니다. 시스템이 이를 화면에 표시합니다. 이 문제는 Windows 2000 및 XP 시스템에서 자주 발생합니다. Windows 2000/XP에는 매우 엄격한 하드웨어 요구 사항이 있습니다. Windows 98과 유사한 리소스 교착 상태, 오버플로 또는 불법 작동의 경우 시스템을 안정적으로 유지하기 위해 위와 같은 상황이 발생할 수 있습니다. 또한 하드웨어 장치 간의 호환성이 좋지 않아서 발생할 수도 있습니다.

몇 가지 예를 분석해 보겠습니다.

예 1: Internet Explorer를 열거나 몇 분 후에 "0x00000000" 메모리를 참조하는 "0x70dcf39f" 명령이 표시됩니다. 메모리를 "읽을" 수 없습니다. 프로그램을 종료하려면 "확인"을 클릭합니다. 확인을 클릭하면 "내부 오류가 발생하여 사용 중인 창 중 하나가 곧 닫힙니다"라는 메시지 상자가 나타납니다. 이 메시지를 닫으면 Internet Explorer도 닫힙니다. 해결 방법: Internet Explorer를 복구하거나 업그레이드하고 패치를 적용하세요. 복구 방법은 Win2000 자체 업그레이드, 즉 Win2000을 Win2000으로 업그레이드하는 것입니다. 사실 이 방법은 시스템을 초기 상태로 복원하는 것입니다. 예를 들어 IE를 6.0으로 업그레이드하는 경우 업그레이드 후 IE5.0으로 대체됩니다.

예 2: Windows XP의 CD-ROM에서 "AutoRun.exe" 파일을 더블 클릭하면 "0x77f745cc"가 표시됩니다. 명령어가 "0x00000078" 메모리를 참조합니다. 메모리를 "쓰기"할 수 없습니다. 프로그램을 종료하려면 "확인"을 클릭하지만 Windows 98에서는 정상적으로 실행됩니다. 해결 방법: 시스템 호환성 문제일 수 있습니다. WinXP 시스템의 경우, "자동 실행.exe" 파일, 속성 및 호환성을 마우스 오른쪽 버튼으로 클릭하고 "호환 모드에서 이 프로그램 실행"을 선택한 다음 "Windows 98/Me"를 선택합니다. "Win2000, SP가 패치된 경우 실행을 시작하고 regsvr 32 c:\ \ \ win nt \ \ \ app patch \ \ \ slayeui.dll을 입력합니다. 마우스 오른쪽 버튼을 클릭하면 속성 및 호환성 옵션도 나타납니다.

예시 3: RealOne Gold를 닫을 때 오류가 발생합니다. 예전에는 정상이었지만 최근에는 "0xffffff" 명령이 참조하는 "0xffffff" 메모리가 닫을 때마다 나타납니다. 이 메모리는 "읽음"의 표시가 될 수 없습니다. 해결 방법: Microsoft 병음 입력 방법 2003을 사용하고 입력 도구 모음이 숨겨져 있는 경우(숨겨져 있지 않을 때는 문제 없음), 이 문제는 RealOne을 닫을 때 발생하므로 RealOne을 닫기 전에 입력 도구 모음을 표시하거나 다른 입력 방법을 현재 입력 방법으로 사용하면 이 문제를 해결할 수 있습니다.

예 4: 히어로즈 슈퍼파이터를 온라인에 접속한 후 플레이할 수 없습니다. "Ox060692f6" 명령이 "읽을 수 없는" "Oxff000011" 메모리를 참조할 때마다 확인을 눌러 프로그램을 종료합니다. 해결 방법: 히어로 슈퍼 솔버를 다시 설치해 보세요. 재설치하는 경우 공식 웹사이트에서 적절한 버전의 패치를 다운로드하세요. 아직 설치되지 않아서 다른 플레이어를 사용해야 했습니다.

예시 5:게임 바로가기를 더블클릭하면 "Ox77f5cdO" 명령이 "Oxffffffff" 메모리를 참조하여 "읽을 수 없습니다."입니다. Client.dat 오류. 해결 방법: 그래픽 카드의 최신 드라이버를 다시 설치한 다음 DirectX 9.0을 다운로드하여 설치합니다.

예 6: 친구가 컴퓨터에서 "0*772b548f" 명령이 "0*00303033" 메모리를 "읽을 수 없습니다"라는 오류 메시지가 나타난다는 메시지를 보냈습니다. "메모리를 "쓸 수 없다"고 말한 다음 QQ를 자동으로 오프라인으로 전환한 다음 QQ를 열어보니 그가 12개 이상의 메시지를 보낸 것을 발견했습니다. 해결 방법 : 이것은 QQ 오류에서 특수 코드를 보내기 위해 QQ의 BUG를 사용하는 다른 측면입니다. 패치를 적용하거나 최신 버전으로 업그레이드하면 문제가 해결됩니다.

위 예시를 통해 다양한 원인으로 인해 오류가 발생한다는 것을 알 수 있습니다. 여기에서는 쉽게 참조할 수 있도록 언급된 이유와 가능한 이유의 목록을 작성했습니다.

해결 방법

1. 메모리 스틱이 파손된 경우 교체하세요.

2. 동일한 브랜드의 메모리를 사용하거나 하나의 메모리만 사용하는 경우 듀얼 메모리가 호환되지 않습니다.

3. 메모리 품질 문제 메모리 스틱을 교체하십시오

4. 방열 문제 케이스 내부의 방열을 강화하십시오.

5. 메모리와 메인보드가 제대로 삽입되지 않았거나 다른 하드웨어와 호환되지 않는 경우 등

5.

6. 하드 드라이브에 문제가 있는 경우 하드 드라이브를 교체합니다.

7. 드라이버에 문제가 있는 경우 드라이버를 다시 설치합니다. 새 시스템인 경우 마더보드 드라이버를 먼저 설치합니다.

8. 소프트웨어 손상 및 재설치.

9. 소프트웨어에 버그가 있는 경우 최신 버전으로 패치하거나 사용하세요.

10. 소프트웨어와 시스템이 호환되지 않는 경우. 소프트웨어를 패치하거나 시스템의 호환성 모드를 사용해 보세요.

11. 소프트웨어와 소프트웨어가 충돌하는 경우. 최근에 새 소프트웨어를 설치한 경우 해당 소프트웨어를 제거하고 시도해 보세요.

12. 다른 관련 소프트웨어에서 소프트웨어를 사용해야 하는 경우 문제가 발생하면 관련 소프트웨어를 다시 설치하세요. 예를 들어 특정 형식의 파일을 재생할 때 오류가 발생하면 해당 파일의 코덱에 문제가 있을 수 있습니다.

13, 바이러스 문제 바이러스 백신

14, 바이러스 백신 소프트웨어와 시스템 또는 소프트웨어 충돌. 기본 모니터링 시스템에 바이러스 백신 소프트웨어가 설치되어 있어 특정 소프트웨어와 충돌할 수 있으므로 제거해 보세요.

15, 시스템 자체에 문제가 있는 경우. 운영 체제 자체에 버그가 있는 경우가 있으므로 SP 패치와 같이 공식적으로 출시된 업그레이드를 설치하는 것이 가장 좋습니다. 그렇지 않은 경우 시스템을 다시 설치하거나 다른 버전으로 변경하세요.

블루 스크린은 Windows를 사용할 때 흔히 발생하며, 오류의 원인이 명확하지 않기 때문에 시스템을 자주 재설치하는 것은 힘들고 시간이 많이 소요될 수 있습니다. 다음은 참고할 수 있는 Windows 크래시 암호 모음입니다.

숫자 설명

0 0x0000 작업이 완료되었습니다.

1 0x0001 잘못된 함수입니다.

2 0x0002 시스템에서 지정한 파일을 찾을 수 없습니다.

3 0x0003 시스템이 지정한 경로를 찾을 수 없습니다.

4 0x0004 시스템이 파일을 열 수 없습니다.

5 0x0005 액세스가 거부되었습니다.

6 0x0006 잘못된 코드입니다.

7 0x0007 메모리 본문 제어 블록이 손상되었습니다.

8 0x0008 이 명령을 수행할 수 있는 저장 공간이 부족합니다.

9 0x0009 메모리 제어 블록의 주소가 잘못되었습니다.

10 0x000a 환경이 올바르지 않습니다.

11 0x000b 잘못 포맷된 프로그램을 로드하려고 했습니다.

12 0x000c 액세스 코드에 오류가 있습니다.

13 0x000d 데이터 오류입니다.

14 0x000e 이 작업을 수행할 저장 공간이 부족합니다.

15 0x000f 시스템이 지정한 드라이브를 찾을 수 없습니다.

16 0x0010 디렉터리를 삭제할 수 없습니다.

17 0x0011 파일을 다른 드라이브로 옮길 수 없습니다.

18 0x0012 파일이 없습니다.

19 0x0013 저장 매체가 쓰기 금지되어 있습니다.

20 0x0014 시스템이 지정한 장치를 찾을 수 없습니다.

21 0x0015 장치가 준비되지 않았습니다.

22 0x0016 장치가 명령을 인식할 수 없습니다.

23 0x0017 데이터 오류(주기적 중복 검사)

24 0x0018 프로그램이 긴 오류 명령을 발행했습니다.

25 0x0019 드라이브가 디스크에서 고정 섹터 또는 트랙을 찾을 수 없습니다.

26 0x001a 지정된 디스크 또는 플로피에 액세스할 수 없습니다.

27 0x001b 드라이브에서 필요한 볼륨을 찾을 수 없습니다.

28 0x001c 프린터에 용지가 없습니다.

29 0x001d 시스템이 지정한 드라이브에 데이터를 쓸 수 없습니다.

30 0x001e 시스템이 지정한 장치를 읽을 수 없습니다.

31 0x001f 시스템에 연결된 장치가 잘못되었습니다.

32 0x0020 다른 프로세스가 파일을 사용 중이므로 프로세스가 파일에 액세스할 수 없습니다.

33 0x0021 파일의 일부가 잠겨서 액세스할 수 없습니다.

34 0x0022 플로피 디스크가 올바르지 않습니다. 2(볼륨 일련 번호: %3)를 %1 드라이브에 삽입하십시오.

36 0x0024 공유 파일이 너무 많이 열려 있습니다.

38 0x0026 파일 끝에 도달했습니다.

39 0x0027 디스크가 꽉 찼습니다.

50 0x0032 이 네트워크 요청은 지원되지 않습니다.

51 0x0033 원격 컴퓨터를 사용할 수 없습니다.

52 0x0034 중복된 네트워크 이름입니다.

53 0x0035 네트워크 경로를 찾을 수 없습니다.

54 0x0036 네트워크가 사용 중입니다.

55 0x0037 지정한 네트워크 리소스 또는 장치를 더 이상 사용할 수 없습니다.

56 0x0038 네트워크 바이오스 명령 제한에 도달했습니다.

57 0x0039 네트워크 어댑터에 문제가 있습니다.

58 0x003a 지정한 서버가 요청된 작업을 수행할 수 없습니다.

59 0x003b 네트워크에 예기치 않은 오류가 발생했습니다.

60 0x003c 원격 어댑터가 호환되지 않습니다.

61 0x003d 프린터 대기열이 꽉 찼습니다.

62 0x003e 서버에 인쇄 대기 중인 파일을 저장할 공간이 없습니다.

63 0x003f 인쇄 대기 중인 파일이 삭제되었습니다.

64 0x0040 지정한 네트워크 이름을 사용할 수 없습니다.

65 0x0041 네트워크에 대한 액세스가 거부되었습니다.

66 0x0042 네트워크 리소스 유형 오류입니다.

67 0x0043 네트워크 이름을 찾을 수 없습니다.

68 0x0044 LAN 어댑터 이름 제한을 초과했습니다.

69 0x0045 네트워크 바이오스 세션 제한을 초과했습니다.

70 0x0046 원격 서버가 일시 중단되었거나 시작 중입니다.

71 0x0047 최대 연결 수에 도달했기 때문에 지금은 이 원격 컴퓨터에 연결할 수 없습니다.

72 0x0048 지정한 프린터 또는 디스크 장치가 중단되었습니다.

80 0x0050 파일이 이미 있습니다.

82 0x0052 디렉터리 또는 파일을 만들 수 없습니다.

83 0x0053 인트 24 실패

84 0x0054 이 요청을 처리하는 데 사용된 저장소를 사용할 수 없습니다.

85 0x0055 로컬 장치의 이름이 이미 사용 중입니다.

86 0x0056 지정한 네트워크 암호가 올바르지 않습니다.

87 0x0057 매개변수가 올바르지 않습니다.

88 0x0058 네트워크에서 데이터 쓰기 오류가 발생했습니다.

89 0x0059 현재 시스템에서 다른 트립을 실행할 수 없습니다.

100 0x0064 다른 시스템 신호를 만들 수 없습니다.

101 0x0065 다른 트립 전용 신호 수량에 속합니다.

102 0x0066 세마포어가 설정되어 있으며 끌 수 없습니다.

103 0x0067 세마포어를 지정할 수 없습니다.

104 0x0068 인터럽트 중에 전용 세마포어를 요청할 수 없습니다.

105 0x0069 이 세마포어의 이전 소유권이 종료되었습니다.

106 0x006a 플로피 디스크를 %1에 삽입하십시오.

107 0x006b 교체 디스크가 삽입되지 않아서 프로그램이 중지되었습니다.

108 0x006c 디스크가 사용 중이거나 잠겨 있습니다.

109 0x006d 파이프라인이 중단되었습니다.

110 0x006e 시스템이 지정한 장치 또는 파일을 열 수 없습니다.

65438+111 0x 006f 파일 이름이 너무 깁니다.

112 0x0070 디스크 공간이 부족합니다.

113 0x0071 내부 파일 식별자를 사용할 수 없습니다.

114 0x0072 대상 내부 파일 식별자가 올바르지 않습니다.

117 0x0075 응용 프로그램이 ioctl을(를) 잘못 호출했습니다.

118 0x0076 쓰기 확인 매개변수의 값이 잘못되었습니다.

119 0x0077 시스템이 요청된 명령을 지원하지 않습니다.

120 0x0078 이 함수는 win32 모드에서만 유효합니다.

121 0x0079 신호 볼륨이 시간 초과 기간을 초과했습니다.

122 0x007a 시스템 호출에 전달된 데이터 영역이 너무 작습니다.

123 0x007b 파일 이름, 디렉터리 이름 또는 스토리지 태그 구문 오류가 있습니다.

124 0x007c 시스템 호출 계층 구조가 잘못되었습니다.

125 0x007d 디스크에 레이블이 없습니다.

126 0x007e 지정한 모듈을 찾을 수 없습니다.

127 0x007f 지정한 프로그램을 찾을 수 없습니다.

128 0x0080 대기할 하위 트립이 없습니다.

129 0x0081 %1 이 응용 프로그램은 win32 모드에서 실행할 수 없습니다.

130 0x0082 파일 핸들을 사용하여 디스크 파티션을 열려고 시도했습니다

원시 디스크 I/O 이외의 작업

131 0x0083 파일 시작 전에 파일 포인터를 이동하려고 했습니다.

132 0x0084 지정된 장치 또는 파일에 파일 포인터를 설정할 수 없습니다.

133 0x0085 이전에 바인딩된 디스크 드라이브에서 join 또는 subst 명령을 사용할 수 없습니다.

134 0x0086 결합된 디스크 드라이브에서 join 또는 subst 명령을 사용하려고 했습니다.

135 0x0087 교체된 디스크 드라이브에서 조인 또는 subst 명령을 사용하려고 했습니다.

136 0x0088 시스템이 연결되지 않은 드라이브의 링크 관계를 제거하려고 했습니다.

137 0x0089 시스템이 교체되지 않은 드라이브에 대한 교체 관계를 제거하려고 했습니다.

138 0x008a 시스템이 조인된 드라이브의 디렉터리에 드라이브를 추가하려고 했습니다.

139 0x008b 시스템이 드라이브를 교체된 드라이브의 디렉터리로 바꾸려고 했습니다.

140 0x008c 시스템이 드라이브를 교체된 드라이브의 디렉터리로 바꾸려고 했습니다.

141 0x008d 시스템이 드라이브를 결합된 드라이브 디렉터리로 바꾸려고 했습니다.

142 0x008e 시스템이 현재 조인 또는 대체를 수행할 수 없습니다.

143 0x008f 시스템이 드라이브를 결합하거나 동일한 드라이브 아래의 디렉터리를 바꿀 수 없습니다.

144 0x0090 이 디렉터리는 루트 디렉터리의 하위 디렉터리가 아닙니다.

145 0x0091 디렉터리에 아직 데이터가 있습니다.

146 0x0092에 지정된 경로가 바뀌었습니다.

147 0x0093 이 명령을 처리할 리소스가 부족합니다.

148 0x0094에 지정된 경로는 현재 사용할 수 없습니다.

149 0x0095 병합 또는 바꾸려는 드라이브 디렉터리가 이미 바뀐 대상입니다.

150 0x0096 config.sys 파일에 시스템 추적 정보가 지정되어 있지 않거나 추적 기능이 취소되었습니다.

151 0x0097 지정한 세마포어 이벤트 수 dosmuxsemwait가 올바르지 않습니다.

152 0x0098 dosmuxsemwait이 실행되지 않았습니다; 세마포어가 너무 많이 설정되었습니다.

153 0x0099 dosmuxsemwait 목록이 올바르지 않습니다.

154 0x009a 저장 매체 심볼 길이 제한을 입력했습니다.

155 0x009b 다른 스레드를 만들 수 없습니다.

156 0x009c 트립 거부 신호를 받았습니다.

157 0x009d 부분적으로 삭제되어 잠글 수 없습니다.

158 0x009e 섹터가 잠금 해제되었습니다.

159 0x009f 스레드 ID의 주소가 올바르지 않습니다.

160 0x00a0 dosexecpgm에 전달된 따옴표로 묶인 숫자 문자열이 올바르지 않습니다.

161 0x00a1에 지정된 경로가 올바르지 않습니다.

162 0x00a2 처리 대기 중인 신호입니다.

164 0x00a4 시스템이 스레드를 만들지 못했습니다.

167 0x00a7 일부 파일을 잠글 수 없습니다.

170 0x00aa 요청된 리소스를 사용 중입니다.

173 0x 0ad 범위 잠금 요청을 취소할 수 없습니다.

174 0x00ae 파일 시스템이 자동 잠금 유형 변경을 지원하지 않습니다.

180 0x00b4 시스템이 잘못된 세그먼트 번호를 찾았습니다.

182 0x00b6 운영 체제가 %1을 실행할 수 없습니다.

파일 183 0x00b7이 이미 존재합니다. 동일한 파일을 만들 수 없습니다.

186 0x00ba에서 보낸 플래그 오류입니다.

187 0x00bb에서 지정한 시스템 플래그를 찾을 수 없습니다.

188 0x00bc의 운영 체제에서 %1을 실행할 수 없습니다.

189 0x00bd의 운영 체제에서 %1을 실행할 수 없습니다.

190 0x00be의 운영 체제에서 %1을 실행할 수 없습니다.

191 0x00bf가 win32 모드에서 %1을 실행할 수 없습니다.

192 0x00c0의 운영 체제가 %1을(를) 실행하지 못했습니다.

193 0x00c1 %1이(가) 올바른 win32 응용 프로그램이 아닙니다.

194 0x00c2의 운영 체제에서 %1을(를) 실행할 수 없습니다.

195 0x00c3의 운영 체제에서 %1을(를) 실행할 수 없습니다.

196 0x00c4의 운영 체제에서 이 응용 프로그램을 실행할 수 없습니다.

197 0x00c5 운영 체제에서 현재 이 응용 프로그램을 실행할 수 없습니다.

198 0x00c6 운영 체제에서 %1을(를) 실행할 수 없습니다.

199 0x00c7 운영 체제에서 이 응용 프로그램을 실행할 수 없습니다.

200 0x00c8 코드 세그먼트가 64KB보다 크거나 같을 수 없습니다.

201 0x00c9 운영 체제가 %1을(를) 실행할 수 없습니다.

202 0x00ca 운영 체제가 %1을(를) 실행할 수 없습니다.

203 0x00cb 시스템이 입력 환경 옵션을 찾지 못했습니다. \205 0x00cd 명령 하위 디렉터리에 트립에 대한 신호 하위 핸들러가 없습니다.

206 0x00ce 파일 이름 또는 확장명이 너무 깁니다.

207 0x00cf 링 2 스택이 사용 중입니다.

응답자:그게 내가 물어본 줄 알았는데 - 선임 관리자 레벨 6 12-9 01:24.

수정된 응답:그게 내가 물어본 줄 알았는데, 수정된 응답은 다음과 같습니다:적분 법칙이 닫힙니다.

이 메모리를 읽거나 쓸 수 없는 일반적인 이유입니다.

Windows 운영 체제를 사용하는 경우 "명령어 0x 000000000 0x에서 참조한 메모리를 쓸 수 없습니다"라는 오류 메시지가 표시되고 애플리케이션이 닫히는 경우가 있습니다. 일부 '전문가'에게 물어보면 "Windows가 너무 불안정하다"는 대답과 함께 분노와 경멸을 표하는 경우가 많습니다. 실제로이 오류는 반드시 Windows의 불안정성으로 인해 발생하는 것은 아닙니다. 이 문서에서는 이 오류의 일반적인 원인을 간략하게 분석합니다.

첫째, 애플리케이션이 메모리 할당을 확인할 수 없습니다.

응용 프로그램에서 데이터를 저장하기 위해 메모리 블록이 필요한 경우 운영 체제에서 제공하는 '함수'를 호출하여 메모리를 요청해야 합니다. 메모리가 성공적으로 할당되면 함수는 새로 열린 메모리 영역의 주소를 애플리케이션에 반환하고 애플리케이션은 해당 주소에서 메모리를 사용할 수 있습니다. 이를 "동적 메모리 할당"이라고 하며 메모리 주소는 프로그래밍에서 "포인터"라고도 합니다.

메모리는 항상 사용 가능하고 무한한 것은 아니며 때때로 메모리 할당이 실패할 수 있습니다. 할당에 실패하면 시스템 함수는 0 값을 반환합니다. 이때 반환 값 "0"은 더 이상 새로 활성화된 포인터를 나타내는 것이 아니라 시스템이 애플리케이션에 오류가 발생했다는 알림을 보내는 것입니다. 애플리케이션은 메모리를 사용할 때마다 반환값이 0인지 확인해야 합니다. 반환값이 0이면 오류가 발생한 것이므로 이를 저장하여 애플리케이션의 '견고성'을 높여야 합니다.

응용 프로그램이 이 오류를 확인하지 않으면 해당 값이 '관성'에 의해 할당된 사용 가능한 포인터라고 가정하고 후속 연산에 메모리를 계속 사용합니다. 실제 0 주소 메모리는 컴퓨터 시스템에서 가장 중요한 "인터럽트 설명자 테이블"을 저장하는데, 이 테이블은 애플리케이션에서 절대 사용할 수 없습니다. 보호되지 않는 운영 체제(예: DOS)에서는 이 주소에 쓰면 즉시 충돌이 발생하지만, 강력한 운영 체제(예: Windows)에서는 이 작업이 시스템의 보호 메커니즘에 의해 즉시 포착되어 운영 체제에서 오류를 전파하는 것을 방지하기 위해 오류 애플리케이션을 강제로 종료합니다. 참조된 메모리 주소가 "0x00000000"이라는 위의 "메모리 쓰기" 오류가 발생합니다.

메모리 할당 실패에는 메모리 부족, 시스템 기능 버전 불일치 등 여러 가지 이유가 있습니다. 따라서 이러한 종류의 할당 실패는 주로 운영 체제를 오랫동안 사용했거나 여러 응용 프로그램(의도치 않게 설치된 바이러스 프로그램 포함)이 설치되고 시스템 매개 변수 및 시스템 파일이 많이 변경된 후에 나타납니다.

두 번째는 애플리케이션이 자체 버그로 인해 비정상적인 메모리 포인터를 참조하는 경우입니다.

동적 할당을 사용하는 응용 프로그램에서 프로그램이 "사용 가능해야 하는" 메모리를 읽거나 쓰려고 시도하지만 어떤 이유로 인해 예상되는 사용 가능한 포인터가 실패하는 경우가 가끔 발생합니다. 프로그램이 운영 체제에 할당을 요청하는 것을 "잊었거나", 프로그램 자체가 어느 시점에서 메모리를 취소하여 "알아차리지 못했거나" 등의 이유로 메모리가 시스템에 의해 회수될 수 있습니다. 취소된 메모리는 시스템에 의해 회수되고 해당 액세스 권한은 더 이상 애플리케이션에 속하지 않으므로 읽기 및 쓰기 작업도 시스템의 보호 메커니즘을 트리거하며 "법 위반" 시도의 유일한 최종 결과는 프로그램이 중단되고 모든 리소스가 복구되는 것입니다. 컴퓨터 세계의 법칙은 여전히 인간의 법칙보다 훨씬 더 효과적이고 엄격합니다! 이와 같은 경우는 프로그램 자체의 버그이며, 특정 작업 순서에서 오류를 재현할 수 있는 경우가 많습니다. 잘못된 포인터는 항상 0이 아니므로 오류 메시지의 메모리 주소가 반드시 "0x00000000"일 필요는 없으며 다른 임의의 숫자일 수도 있습니다.

시스템에 이러한 오류 메시지가 자주 표시되는 경우 다음 제안 사항이 도움이 될 수 있습니다.

1. 시스템에 트로이 목마 바이러스가 있는지 확인합니다. 이러한 유형의 프로그램은 시스템을 제어하기 위해 무책임하게 시스템을 수정하여 운영 체제 이상을 초래하는 경우가 많습니다. 평소 정보 보안에 대한 인식을 강화하고 출처를 알 수 없는 실행 프로그램에 대해 호기심을 갖지 말아야 합니다.

2. 운영 체제의 설치 프로그램이 올바른 버전의 시스템 파일과 올바른 시스템 매개 변수를 복사할 수 있도록 운영 체제를 업데이트합니다. 운영 체제 자체에 버그가 있는 경우가 있으므로 공식적으로 출시된 업그레이드를 설치하도록 주의하세요.

3. 새 버전의 애플리케이션을 사용해 보세요.

일부 프로그램을 실행할 때 가끔 메모리 오류 메시지가 나타난 후 프로그램이 종료되는 경우가 있습니다.

"0x" 명령어는 "0x" 메모리를 참조합니다. 메모리를 "읽을" 수 없습니다.

"0x" 명령어는 "쓰기"가 불가능한 0x 메모리를 참조합니다.

이런 경우가 발생했는지 모르겠습니다. (0x 뒤에 오는 것은 다를 수 있습니다.)

일반적으로 이 현상에는 여러 가지 측면이 있습니다. 하나는 하드웨어, 즉 메모리에 문제가 있다는 것이고 다른 하나는 소프트웨어에 문제가 많다는 것입니다.

첫 번째 하드웨어:

일반적으로 메모리에 문제가 있을 가능성은 거의 없습니다. 주요 측면은 메모리 스틱이 나쁘고 메모리 품질에 문제가 있으며 용량이 다른 두 가지 메모리 브랜드가 있으며 호환되지 않는 경향이 있습니다. 또한 특히 오버클러킹 후 열 방출 문제에 주의하세요. 메모리의 안정성을 철저하게 확인할 수 있는 소프트웨어 MemTest를 사용하여 메모리를 확인할 수 있습니다.

이 문제는 듀얼 메모리가 있고 다른 브랜드의 메모리 칩을 혼합하거나 중고 메모리를 구입하는 경우 발생합니다. 이 경우 메모리에 문제가 있는지 또는 다른 하드웨어와 호환되지 않는지 확인해야 합니다. 그렇지 않다면 소프트웨어 오류를 배제하세요.

먼저 원리를 간단히 설명하자면 메모리에는 버퍼라는 데이터를 저장하는 공간이 있습니다. 프로그램이 데이터를 한 곳에 넣으면 공간이 충분하지 않아 넘치게 됩니다. 예를 들어 양동이는 1파운드의 물만 담을 수 있습니다. 2파운드의 물을 넣으면 양동이가 넘칩니다. 시스템이 이를 화면에 표시합니다. 이 문제는 Windows 2000 및 XP에서 자주 발생합니다. Windows 2000/XP에는 매우 엄격한 하드웨어 요구 사항이 있습니다. Windows 98과 유사한 리소스 교착 상태, 오버플로 또는 불법 작동의 경우 시스템을 안정적으로 유지하기 위해 위와 같은 상황이 발생할 수 있습니다. 또한 하드웨어 장치 간의 호환성이 좋지 않아서 발생할 수도 있습니다.

몇 가지 예를 분석해 보겠습니다.

예 1: Internet Explorer를 열거나 몇 분 후에 "0x00000000" 메모리를 참조하는 "0x70dcf39f" 명령이 표시됩니다. 메모리를 "읽을" 수 없습니다. 프로그램을 종료하려면 "확인"을 클릭합니다. 확인을 클릭하면 "내부 오류가 발생하여 사용 중인 창 중 하나가 곧 닫힙니다"라는 메시지 상자가 나타납니다. 이 메시지를 닫으면 Internet Explorer도 닫힙니다. 해결 방법: Internet Explorer를 복구하거나 업그레이드하고 패치를 적용하세요. 복구 방법은 Win2000 자체 업그레이드, 즉 Win2000을 Win2000으로 업그레이드하는 것입니다. 사실 이 방법은 시스템을 초기 상태로 복원하는 것입니다. 예를 들어 IE를 6.0으로 업그레이드하는 경우 업그레이드 후 IE5.0으로 대체됩니다.

예 2: Windows XP의 CD-ROM에서 "AutoRun.exe" 파일을 더블 클릭하면 "0x77f745cc"가 표시됩니다. 명령어가 "0x00000078" 메모리를 참조합니다. 메모리를 "쓰기"할 수 없습니다. 프로그램을 종료하려면 "확인"을 클릭하지만 Windows 98에서는 정상적으로 실행됩니다. 해결 방법: 시스템 호환성 문제일 수 있습니다. WinXP 시스템의 경우, "자동 실행.exe" 파일, 속성 및 호환성을 마우스 오른쪽 버튼으로 클릭하고 "호환성 모드에서 이 프로그램 실행"을 선택한 다음 "Windows 98/Me"를 선택합니다. "Win2000, SP가 패치된 경우 실행을 시작하고 regsvr 32 c:\ \ \ win nt \ \ \ app patch \ \ \ slayeui.dll을 입력합니다. 마우스 오른쪽 버튼을 클릭하면 속성 및 호환성 옵션도 나타납니다.

예시 3: RealOne Gold를 닫을 때 오류가 발생합니다. 예전에는 정상이었지만 최근에는 닫을 때마다 "0xffffffff" 명령이 참조하는 "0xffffffff" 메모리가 나타납니다. 이 메모리는 "읽음"의 표시가 될 수 없습니다. 해결 방법: Microsoft 병음 입력 방법 2003을 사용하고 입력 도구 모음이 숨겨져 있는 경우(숨겨져 있지 않을 때는 문제 없음), 이 문제는 RealOne을 닫을 때 발생하므로 RealOne을 닫기 전에 입력 도구 모음을 표시하거나 다른 입력 방법을 현재 입력 방법으로 사용하면 이 문제를 해결할 수 있습니다.

예 4: 히어로즈 슈퍼파이터를 온라인에 접속한 후 플레이할 수 없습니다. "Ox060692f6" 명령이 "읽을 수 없는" "Oxff000011" 메모리를 참조할 때마다 확인을 눌러 프로그램을 종료합니다. 해결 방법: 히어로 슈퍼 솔버를 다시 설치해 보세요. 재설치하는 경우 공식 웹사이트에서 적절한 버전의 패치를 다운로드하세요. 아직 설치되지 않아서 다른 플레이어를 사용해야 했습니다.

예시 5: 게임 바로가기를 두 번 클릭합니다. "Ox77f5cdO" 명령은 "읽을 수 없는" 메모리 "Oxffffffffff"를 참조하며 Client.dat 프로그램 오류를 나타냅니다.