2009-07-09 5 views
1

필자는 필자가 작성한 드라이버가 있으며 심볼릭 이름을 만들었습니다. 기호 이름은 ...사용자 모드에서 드라이버와 통신 할 때 문제가 발생했습니다.

L"\\DosDevices\\somename" 

... 그리고 나는 사용자 모드에서 CreateFile에를 사용하여 장치 개체에 액세스하려고 할 때, 난 항상 오류 코드 3를 얻을 수 (경로를 찾을 수 없습니다).

나는 다음과 같은 경로를 CreateFile에 사용하여 시도 ...

L"\\\\.\\somename" 

L"\\Device\\somename" 

... 그리고이 작품을 나던 : 난 항상 오류 코드 3을 얻을

누군가가 이유를 알고 있나요?

+0

나는 틀렸 겠지만, CHAR가 아니라 WCHAR일까요? (즉, L을 떨어 뜨린다). 또한, 나는 슬래시가 필요할 것이라고 확신한다. 그러므로 "\\\\. \\ DosDevices \\ somename". 실제로 원할 백 슬래시 당 두 개의 백 슬래시를 항상 사용한다는 것을 기억하십시오. –

+0

드라이버가 성공적으로로드 되었습니까? 초기화 중에 장치 이름을 만들거나 광고하기 위해 필요한 API 호출을 만들었습니까? – ChrisW

답변

1

WinObj을 사용하고 기호가 성공적으로 만들어 졌는지 확인하십시오. 링크가 GLOBAL에 표시되어야합니다. 그렇지 않은 경우 운전자에게 결함이 있습니다.

btw. \\. \ somename이 맞습니다.

관련 문제