2017-09-24 2 views
0

필터로 패킷을 삭제할 수있는 간단한 방화벽을 작성하려고합니다. 이 목적을 위해 저는 WinDivert을 사용합니다. WinDivert.dll을로드하고 프로젝트 폴더에 WinDivert.lib 및 WinDivert32.sys를 추가합니다. 그런 다음 WinDivertDriver를 설치하기 위해 WinDivertOpen()을 사용해보십시오. 결과는 항상 부정적입니다. 무엇이 잘못되었으며 어떻게 드라이버를 성공적으로 설치할 수 있습니까? 코드 예제. enter image description hereWinDivert를 사용하여 패킷을 버리십시오.

답변

0

다음과 같은 방법으로이 문제를 해결했습니다. 1) 프로젝트 -> 속성 -> 링커 -> 입력 -> 추가 종속성에서 경로를 WinDivert.lib로 설정하십시오. 2) 루트 폴더 파일 WinDivert.dll 및 WinDivert32.sys로 이동되었습니다. 3) 내 프로젝트에 windivert.h를 포함시킵니다. 4) 내 PC를 TESTSIGNING 부팅 구성 (이 Windows 드라이버 키트 7.1.0에 사용)으로 설정하십시오. ) PC를 ​​다시 시작하십시오. 이 단계가 도움이되지 않으면 Windows 드라이버 키트 7.1.0이 포함 된 소스에서 WinDivert를 빌드해야합니다. 및 Visual Studio 12 이상 설명 된대로 here

+0

대부분의 사용자는 원본에서 WinDivert를 빌드 할 필요가 없습니다. 대신 TESTSIGNING이 필요하지 않은 공식 바이너리 릴리스 만 사용하면됩니다. – Basil

관련 문제