getmodulefilenamew 함수는 두 번째 인수를이 경우 고정 된 크기의 버퍼로 허용하므로 거짓 긍정 (버퍼 오버플로)을 생성합니다.버퍼 오버 플로우 또는 오 탐지?
그러나 그 문서를 통해보고 : http://msdn.microsoft.com/en-us/library/ms683197%28v=vs.85%29.aspx
인용구 : 버퍼 모듈의 이름을 길게 너무 작은 경우, 문자열은 널 종료 문자, 함수, n 크기 반환하고 기능을 포함하여 n 크기의 문자가 잘립니다 마지막 오류를 ERROR_INSUFFICIENT_BUFFER로 설정합니다.
누군가 신뢰할 수있는 제 3자인 사람이이 문제를 거짓 긍정으로 확인하거나 거부 할 수 있습니까? 당신의 도움을 주셔서 감사합니다!
===
HMODULE applicationModule = GetModuleHandleW(NULL);
WCHAR processName[MAX_PATH];
memset(processName, 0, sizeof(processName));
GetModuleFileNameW(applicationModule, processName, sizeof(processName));
===
문제 스캔 베라 코드 정적 분석기에 의해 제공되었다
GetModuleFileNameW 기능 라인이다.
정적 검사 도구에 대해 이야기하고 있습니까? 어떤 것을 말하고 코드를 보여주십시오. 그렇지 않으면 의미있는 대답의 기회가 없습니다. –
죄송합니다. 죄송합니다. 질문을 업데이트했습니다. –