createfile失败?串口createfile 5?传奇createfile错误?安装驱动后createfile()

电脑杂谈  发布时间:2016-09-28 09:00:15  来源:网络整理

本版专家分:40

结帖率:76.19%

楼主 发表于: 2008-01-10 10:37:26

高分寻求帮助!我最近学ndis驱动,按照王艳平的第9章的那个例子,安装了个ndis的协

议驱动:protoDrv.sys,但是应用程序createfile()时失败,错误码为2,说是找不到系

统找不到文件,这是怎么回事?

安装完驱动后,我查了注册表的驱动安装目录,发现多了两个service键值:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Packet;
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\slNdisProt;


packet键的ImagePath="system32\DRIVERS\ProtoDrv.sys";
slNdisProt键的ImagePath="\??\E:\DriverEnv\8\ProcApp\ProcDrv.sys";

其中packet键是我packet.inf文件指定的,这个正常,但是slNdisProt键并不是我要安

装的阿,怎么会也写入注册表?而且slNdisProt键的ImagePath怎么会那么怪?

slNdisProt是驱动程序定义的设备连接名称,但是好像不应该也写入到注册表中的

Services项阿!

这个问题困扰我好久,不解决没办法往下学,希望高手赐教!分无所谓,一开始50是怕没人回答,分浪费,不够可以再给

分享到:

| 举报 |

编辑 删除

管理

回复次数:3

本版等级:

本版专家分:456

结帖率:100%

得分:25 回复于: 2008-01-16 23:10:26

用DDKtools目录下的chkinf工具检查下你的inf文件是否正确,。

| 举报 |

编辑 删除

管理

本版等级:

本版专家分:25

结帖率:66.67%

得分:25 回复于: 2008-03-17 19:55:04

一看就是你的设备名错了,设备名和服务名是两个不同的东西,初学者这里可能会犯错误。

| 举报 |

编辑 删除

管理

本版等级:

本版专家分:0

结帖率:100%

得分:0 回复于: 2008-08-07 01:42:44

看看这个函数:
BOOLProtoStartService()
{
BOOLbRet=FALSE;
SC_HANDLEhSCM=NULL,hService=NULL;
charszLinkName[]="slNdisProt";

……
}

它指向的服务名是slNdisProt,我试了一下把packet.inf里的注册服务部分的packet改成slNdisProt就不会报错了

把packet.inf直接粘给你吧,我也是刚刚学这个
;-------------------------------------------------------------------------
;PACKET.INF--SampleProtocolDriver
;
;Copyright(c)1993-1999,MicrosoftCorporation
;-------------------------------------------------------------------------
[version]
Signature="$WindowsNT$"
Class=NetTrans
ClassGUID={4d36e975-e325-11ce-bfc1-08002be10318}
Provider=%Msft%
DriverVer=06/16/2004,5.00.2064

[Manufacturer]
%Msft%=MSFT

[MSFT]
%PACKET_Desc%=Install,MS_PACKET

;-------------------------------------------------------------------------
;InstallationSection
;-------------------------------------------------------------------------
[Install]
AddReg=Inst_Ndi
Characteristics=0;Hasnocharacterstic
CopyFiles=CpyFiles_Sys

;-------------------------------------------------------------------------
;Ndiinstallationsupport
;-------------------------------------------------------------------------
[Inst_Ndi]
HKR,Ndi,Service,,"slNdisProt";
HKR,Ndi,HelpText,,%slNdisProt_HelpText%
HKR,Ndi\Interfaces,UpperRange,,noupper
HKR,"Ndi\Interfaces","LowerRange",,"ndis5,ndis4"

;-------------------------------------------------------------------------
;Serviceinstallationsupport
;-------------------------------------------------------------------------
[Install.Services]
AddService=slNdisProt,,slNdisProt_Service_Inst

[slNdisProt_Service_Inst]
DisplayName=%slNdisProt_Desc%
ServiceType=1;SERVICE_KERNEL_DRIVER
StartType=3;SERVICE_DEMAND_START;<<===这里
ErrorControl=1;SERVICE_ERROR_NORMAL
ServiceBinary=%12%\ProtoDrv.sys;<<===这里
LoadOrderGroup="PNP_TDI"
AddReg=AddReg_slNdisProt_Service_Inst
Description=%slNdisProt_Desc%

[AddReg_slNdisProt_Service_Inst]
HKLM,"System\CurrentControlSet\Services\slNdisProt","TextModeFlags",%REG_DWORD%,0x0001
HKR,"Parameters","Test",,"Hello"

;-------------------------------------------------------------------------
;Supportforremovalofstaticregistrysettings
;-------------------------------------------------------------------------
[Install.Remove]
DelReg=Del_Static_Reg

[Install.Remove.Services]
DelService=slNdisProt

[Del_Static_Reg]
HKLM,"System\CurrentControlSet\Services\slNdisProt","TextModeFlags"

;-------------------------------------------------------------------------
;DeclareDestinationDirectoriesforfilecopy/deletion
;-------------------------------------------------------------------------
[DestinationDirs]
CpyFiles_Sys=12;DIRID_DRIVERS


;-------------------------------------------------------------------------
;FilestoCopy/Delete-ReferencedbyInstallandRemovesectionsabove
;-------------------------------------------------------------------------
[CpyFiles_Sys]
ProtoDrv.sys,,,2;<<===这里

[Strings]
Msft="Microsoft"
PACKET_Desc="DDKPACKETProtocol"
PACKET_HelpText="Anon-routableprotocoldesignedforuseinsmallLANs."
REG_DWORD=0x10001

| 举报 |

编辑 删除

管理

以上就是关于createfile失败的全部内容,相信你一定会非常满意。


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/shenmilingyu/article-17591-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...