none
DriverEntry(): ERROR_PROC_NOT_FOUND The specified procedure could not be found. RRS feed

  • Question

  • I have following code and when try load my driver in Windows Vista x86, comes this error.

    How solve?

    VOID Unload(IN PDRIVER_OBJECT pDriverObject) {
    	DbgPrint("DriverUnload()!\n");
    	return;
    }
    
    extern "C" NTSTATUS DriverEntry(IN PDRIVER_OBJECT pDriverObject, IN PUNICODE_STRING RegistryPath) {
    
    	UNREFERENCED_PARAMETER(pDriverObject);
    	UNREFERENCED_PARAMETER(RegistryPath);
    
    	pDriverObject->DriverUnload = Unload;
    	DbgPrint("DriverEntry()!\n");
    	return STATUS_SUCCESS;
    }


    Friday, April 7, 2017 10:40 PM

Answers

  • Consider getting the Windows 7 WDK or the Windows 8, and building the driver with that for Vista.  These support the OS.   Note: one of the problems have with rolling code back is the newer SAL annotations, it is not hard to develop an include file that takes most of the simpler annotations and maps them to the older annotations.  For example:

    #define _In_ __in #define _Out_ __out

    Using an include like this with the proper control so it is only invoked with the older environment, means you can use all the latest tools for checking your driver, but still build it for release with the older WDK's


    Don Burn Windows Driver Consulting Website: http://www.windrvr.com

    • Marked as answer by FLASHCODER Saturday, April 8, 2017 11:39 PM
    Saturday, April 8, 2017 1:20 PM

All replies

  • Does it work on Win7 or Win8? How you build it? (Don't tell us it's a 64-bit binary, or you build it as a normal usermode DLL).

    --pa

    Saturday, April 8, 2017 12:06 AM
  • Does it work on Win7 or Win8? How you build it? (Don't tell us it's a 64-bit binary, or you build it as a normal usermode DLL).

    --pa

    @Pavel A,

    works from Win7 until Win10. This code is a x86 driver.

    Saturday, April 8, 2017 12:25 AM
  • How did you build it, i.e. what WDK and what target?  There have been some changes in the environment, and forcing a driver back before the target does not always work.


    Don Burn Windows Driver Consulting Website: http://www.windrvr.com

    Saturday, April 8, 2017 12:56 AM
  • How did you build it, i.e. what WDK and what target?  There have been some changes in the environment, and forcing a driver back before the target does not always work.


    Don Burn Windows Driver Consulting Website: http://www.windrvr.com

    @Don Burn,

    VS 2015 for Desktop + WDK 10 + SDK 10, target Windows 7.

    Something wrong?

    Saturday, April 8, 2017 1:17 AM
  • Probably an unresolved import that was introduced in win7. Depends.exe can tell you on a vista system what is missing

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Saturday, April 8, 2017 5:41 AM
  • Consider getting the Windows 7 WDK or the Windows 8, and building the driver with that for Vista.  These support the OS.   Note: one of the problems have with rolling code back is the newer SAL annotations, it is not hard to develop an include file that takes most of the simpler annotations and maps them to the older annotations.  For example:

    #define _In_ __in #define _Out_ __out

    Using an include like this with the proper control so it is only invoked with the older environment, means you can use all the latest tools for checking your driver, but still build it for release with the older WDK's


    Don Burn Windows Driver Consulting Website: http://www.windrvr.com

    • Marked as answer by FLASHCODER Saturday, April 8, 2017 11:39 PM
    Saturday, April 8, 2017 1:20 PM