현재 작업중인 시스템에 많은 프로세스가 실행 중입니다. 공유 메모리의 맥락에서 일부는 서버이고 일부는 클라이언트입니다.Windows에서 공유 메모리를 생성 한 프로세스를 확인하십시오.
그들은 CreateFileMapping
과 MapViewOfFile
을 통해 공유 메모리를 만들고 액세스합니다.
최근에 클라이언트 중 하나에서 구조가 변경되어 클라이언트가 서버 프로세스에서 생성 한 것보다 큰 공유 메모리 영역을 매핑하려고했습니다. 그 결과 액세스가 거부됩니다.
제 문제는, 어떤 창작 과정이 처음에 메모리를 생성했는지 전혀 알지 못합니다. 어떤 서버 프로그램을 다시 컴파일해야하는지 결정하기 위해 공유 메모리에 대한 메타 정보에 액세스하는 방법이 있습니까?
확인하려면 오류 코드 5와 함께 실패한 MapViewOfFile
입니다. 액세스가 거부되었습니다.
는 HTTP를 살펴 매핑 된 메모리의 다른 크기 이외의 수 있습니다 실패한 이유 : // 유래 .com/questions/10622750/where-to-find-if-an-address-of-the-code-or-data-sections 섹션 – mox