WDDK第一次用户

时间:2012-08-02 14:36:42

标签: windows driver

我想让我的第一个驱动程序在Windows上运行,它所做的就是将helloworld打印到调试器中。 我用“fre x64 WIN7”设置编译它,测试它,并打开测试模式。它位于我的桌面上,路径名为C:\Users\Ivan\Desktop\helloworld.sys。在注册表中,ImagePath为C:\Users\Ivan\Desktop\helloworld.sys。 我仍然得到error 123 "The filename, directory name, or volume label is incorrect"任何人都可以给我一些关于错误可能原因的指示吗?

创建包含3个文件的目录。源 -

    TARGETNAME=helloworld
    TARGETTYPE=DRIVER
    TARGETPATH=obj


    INCLUDES=..\..\inc

    SOURCES = driver.c

    makefile-!INCLUDE $(NTMAKEENV)\makefile.def

driver.c

#include <ntddk.h>
NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObject, PUNICODE_STRING pRegistryPath){
            DbgPrint("Hello World!\n");
            return STATUS_SUCCESS;
}

将其保存在cmd

cd C:\WinDDK\7600.16385.1\bin
setenv C:\WinDDK\7600.16385.1\ fre x64 WIN7
cd C:\WinDDK\7600.16385.1\sources\mydrivers
build

建立证书并签署驱动程序。

MakeCert.exe -r -pe -ss PrivateCertStoreName -n "CN=IvanCert" IvanCert.cer
CertMgr /add IvanCert.cer /s /r localMachine root
signtool.exe sign /v /s IvanCertStoreName /n IvanCert helloworld.sys
signtool.exe verify /pa /v helloworld.sys
  • 将helloworld.sys放在C:\

在cmd中删除以下行

sc create test1 binPath= "C:\helloworld.sys"
sc start test1
  • 收到错误129所以我打开了regedit.exe并将test1中的类型从x10更改为x01

  • 目前有错误123

0 个答案:

没有答案