|
请问注册表里面
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root
下面的LEAGCY_XXX项是什么时候创建的?在安装驱动的时候?
这项的创建是不是仅仅和安装用的inf文件相关,和driver的源码相不相关?
我遇到的问题是这样的,在编译vista ddk里面关于关于修改tcp连接中数据包例子的时候,其中一个stmedit例子,在安装的时候,在某些机器上能够在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root下创建一个LEAGCY_STMEDIT的子键,在一些机器上又不能够创建,这样导致我在net start stmedit的时候出现了编号为1058的错误。另外一个叫做msnmntr的例子好像就不会出现这个问题,我比较了下两个的inf文件,基本上都是一样。下面是stmedit.inf的具体内容,谢谢。
;;;
;;; Copyright (c) Microsoft Corporation. All rights reserved
;;;
;;; Abstract:
;;; Callout sample driver install configuration.
;;;
[Version]
signature = "$Windows NT$"
Provider = %Msft%
DriverVer = 01/07/2004,VER_P5000.1
[DestinationDirs]
DefaultDestDir = 12
StmEdit.DriverFiles = 12 ;%windir%\system32\drivers
;;
;; Default install sections
;;
[DefaultInstall]
OptionDesc = %StmEditServiceDesc%
CopyFiles = StmEdit.DriverFiles
[DefaultInstall.Services]
AddService = %StmEditServiceName%,,StmEdit.Service
;;
;; Default uninstall sections
;;
[DefaultUninstall]
DelFiles = StmEdit.DriverFiles
[DefaultUninstall.Services]
DelService = StmEdit,0x200 ; Flags note to stop service first
;
; Services Section
;
[StmEdit.Service]
DisplayName = %StmEditServiceName%
Description = %StmEditServiceDesc%
ServiceBinary = %12%\stmedit.sys ;%windir%\system32\drivers\stmedit.sys
ServiceType = 1 ;SERVICE_KERNEL_DRIVER
StartType = 3 ;SERVICE_DEMAND_START
ErrorControl = 1 ;SERVICE_ERROR_NORMAL
;
; Copy Files
;
[StmEdit.DriverFiles]
stmedit.sys,,,0x00000040 ; COPYFLG_OVERWRITE_OLDER_ONLY
;;
;; String Section
;;
[Strings]
Msft = "Microsoft Corporation"
StmEditServiceDesc = "Stream Edit Driver"
StmEditServiceName = "stmedit"
StmEditRegistry = "system\currentcontrolset\services\stmedit"
|
|