0

액세스 거부 오류가 발생하여 WriteProcessMemory가 작동하지 않습니다.WriteProcessMemory에 대한 액세스가 거부되었습니다.

나는 현재 사용하여 프로세스 실행 오전 :

CreateProcess를 (FALSE wcImageName, wcCommandLine, NULL, NULL, DEBUG_PROCESS, NULL, NULL, & stStartupInfo, & stProcessInfo을);

쓰기 액세스 권한을 얻으려면 어떻게 수정해야합니까?

동일한 컴퓨터에서이 프로세스를 시작합니다. 사용자 이름과 비밀번호를 제공하지 않고 쓰기 권한을 얻으려면 어떻게해야합니까?

감사합니다, 로건

+0

DEBUG_PROCESS이면 충분하지 않습니다. 명백하게. 정상적인 방법은 PROCESS_VM_WRITE 액세스를 요구하는 OpenProcess()입니다. 매우 권한있는 요청입니다. –

+0

디버거는'DEBUG_PROCESS' 또는'DEBUG_ONLY_THIS_PROCESS'를 사용하여 디버거를 시작하고 디버거의 메모리를 읽고 쓸 수있는 권한을가집니다. – Ajay

답변

0

는 디버거 루프에 올바른 핸들 WriteProcessMemory를 호출해야합니다. this article을 읽을 수 있습니다.

프로세스를 만들 때 권한이 완전합니다. DEBUG_PROCESS 또는 DEBUG_ONLY_THIS_PROCESS으로 시작할 때 더 많은 권한이 있습니다!

+0

고마워! 기사에서 몇 단계를 수행 한 후에 오류를 해결할 수있었습니다. 또한이 포럼에서 비슷한 대답을 얻었습니다. http://social.msdn.microsoft.com/Forums/en-US/vclanguage/thread/8886331f-bbc5-4225-8df9-775159d0305f – Logan