From: Dave Burns on
This is about a printer driver that I'm working on. It installs on Vista and
XP correctly, and printer prints fine too. Now we are trying modify it to
get through the WHQL testing. Here is what we got by running INfGate.EXE.

First, the number 0X00004000 is a valid value (COPYFLG_IN_USE_TRY_RENAME),
but looks like INFGate.EXE does not recognize.
Secondly, directive "CoreDriverSections" should be valid for Vista, and
DataSection, DataFile are valid even for XP. Yet INFGate.EXE still
complains. Are we getting the false alarms or this version of INFGate.EXE
does not recognize them?


# Errors: Line 81: (E22.1.1066) Bad value for flags (0X00004000) in
RM_FILES.
# Line 95: (E22.1.1066) Bad value for flags (0X00004000) in RM_FILES.
# Line 96: (E22.1.1066) Bad value for flags (0X00004000) in RM_FILES.
# Line 106: (E22.1.1066) Bad value for flags (0X00004000) in RM_FILES.
# Line 107: (E22.1.1066) Bad value for flags (0X00004000) in RM_FILES.
# Line 108: (E22.1.1066) Bad value for flags (0X00004000) in RM_FILES.
# Line 116: (E22.1.1066) Bad value for flags (0X00004000) in LANGMON_FILES.
# Line 117: (E22.1.1066) Bad value for flags (0X00004000) in LANGMON_FILES.
# Line 118: (E22.1.1066) Bad value for flags (0X00004000) in LANGMON_FILES.
# Line 119: (E22.1.1066) Bad value for flags (0X00004000) in LANGMON_FILES.
# Line 120: (E22.1.1066) Bad value for flags (0X00004000) in LANGMON_FILES.
# Line 124: (E22.1.1044) Wrong value for DirID.
# Line 125: (E22.1.1044) Wrong value for DirID.

# Warnings: Line 14: (W22.1.2217) Section [Models] is required if the INF is
intended for use with NT-based operating system versions earlier than
Windows XP.
# Line 43: (W22.1.2202) Unrecognized directive: DataSection
# Line 44: (W22.1.2202) Unrecognized directive: DataFile
# Line 51: (W22.1.2202) Unrecognized directive: DataSection
# Line 52: (W22.1.2202) Unrecognized directive: DataFile
# Line 54: (W22.1.2202) Unrecognized directive: CoreDriverSections
# Line 56: (W22.1.2083) Section [PrinterPackageInstallation.x86] not
referenced
# Line 64: (W22.1.2083) Section [COMMON_DRIVER_DATA] not referenced
# Line 128: (W22.1.2023) Use a string token, and put localizable text in the
[Strings] section.


Here is the Annotated INF:


[Version]
Signature="$WINDOWS NT$"
Class=%PTR_CLASS%
ClassGUID={4D36E979-E325-11CE-BFC1-08002BE10318}
Provider=%ABCCompany%
CatalogFile=rmf500k.cat
DriverVer=02/04/2009,1.2.6.86

[Manufacturer]
%ABCCompany%=Models,NTx86,NTx86.6.0
; (W22.1.2217) Section [Models] is required if the INF is intended for use
with NT-based operating system versions earlier than Windows XP.

[ControlFlags]
ExcludeFromSelect=USBPRINT\ABCCompany480i08C9

[Strings]
;DRV_VER is used in rm-install_PnP,if not defined a update will rollback and
the DLLs do not get updated
;The date MUST be in the mm/dd/yyyy form
DRV_VER="02/04/2009,1.2.6.86"
ABCCompany="ABCCompany"
DISK="ABCCompany CD"
MODEL480i="ABC 480i"
PTR_CLASS="Printer"

[Models.NTx86]
;for ABCCompany 480i or ABCCompany 2000i
%MODEL480i%=AB_install_PnP,USBPRINT\ABCCompany480i08C9

[Models.NTx86.6.0]
;for ABCCompany 480i or ABCCompany 2000i
%MODEL480i%=AB_install_PnP_Vista,USBPRINT\ABCCompany480i08C9


;--------------------------------------------------------------------------------
; Install Sections
;--------------------------------------------------------------------------------

[AB_install_PnP]
CopyFiles=RM_FILES,LANGMON_FILES
DataSection=COMMON_DRIVER_DATA
; (W22.1.2202) Unrecognized directive: DataSection
DataFile=rmf4bk14.dat
; (W22.1.2202) Unrecognized directive: DataFile
Include=NTPRINT.INF
Needs=sRGBPROFILE.OEM
AddReg=rm_AccessoryReg

[AB_install_PnP_Vista]
CopyFiles=RM_FILES,LANGMON_FILES
DataSection=COMMON_DRIVER_DATA
; (W22.1.2202) Unrecognized directive: DataSection
DataFile=rmf4bk14.dat
; (W22.1.2202) Unrecognized directive: DataFile
AddReg=rm_AccessoryReg
CoreDriverSections="{D20EA372-DD35-4950-9ED8-A6335AFE79F0},UNIDRV.OEM,UNIDRV_DATA,TTFSUB.OEM"
; (W22.1.2202) Unrecognized directive: CoreDriverSections

[PrinterPackageInstallation.x86]
; (W22.1.2083) Section [PrinterPackageInstallation.x86] not referenced
PackageAware=TRUE
CoreDriverDependencies={D20EA372-DD35-4950-9ED8-A6335AFE79F0}

;--------------------------------------------------------------------------------
; Config/Registry Sections
;--------------------------------------------------------------------------------

[COMMON_DRIVER_DATA]
; (W22.1.2083) Section [COMMON_DRIVER_DATA] not referenced
DriverFile=rmgdk14.dll
ConfigFile=rmuik14.dll
LanguageMonitor="rmlmk14.dll,rmlmk14.dll"
HelpFile=rmfmom14.chm

[rm_AccessoryReg]
HKLM,"SOFTWARE\ABCCompany\HPDJ Printing System Config\ABC
480i",Toolboxpath,0,"rmztbx14.exe"
HKLM,"SOFTWARE\ABCCompany\HPDJ Printing System Config\ABC
480i",ToolboxExe,0,"rmztbx14.exe"

;--------------------------------------------------------------------------------
; CopyFiles Sections
;--------------------------------------------------------------------------------

[RM_FILES]
rmf4bk14.dat,
rmfmom14.chm,
rmlmk14.dll,,,0x00004000 ; COPYFLG_IN_USE_TRY_RENAME
; (E22.1.1066) Bad value for flags (0X00004000) in RM_FILES.
rmzcfg14.exe,rmzcfg14.ex_
rmzeng14.exe,rmzeng14.ex_
rmzflt14.dll,rmzflt14.dl_
rmzime14.dll,rmzime14.dl_
rmzjui14.dll,rmzjui14.dl_
rmzpre14.exe,rmzpre14.ex_
rmzvip14.dll,rmzvip14.dl_
rmgdk14H.dll,rmgdk14H.dl_
rmuik14H.dll,rmuik14H.dl_
rmzr3214.dll,rmzr3214.dl_
rmzres14.dll,rmzres14.dl_
rmzrm314.dll,rmzrm314.dl_
spzrm314.dll,spzrm314.dl_
rmuik14O.dll,rmuik14O.dl_,,0x00004000 ; COPYFLG_IN_USE_TRY_RENAME
; (E22.1.1066) Bad value for flags (0X00004000) in RM_FILES.
rmuik14.dll,rmuik14.dl_,,0x00004000 ; COPYFLG_IN_USE_TRY_RENAME
; (E22.1.1066) Bad value for flags (0X00004000) in RM_FILES.
rmgdk14O.dll,rmgdk14O.dl_
rmgdk14.dll,rmgdk14.dl_
spgetmsk.dll,spgetmsk.dl_
rmgetmsk.dll,rmgetmsk.dl_
rmuiresO.dll,rmuiresO.dl_
rmuires.dll,rmuires.dl_
rmzrm301.dll, rmzrm301.dl_
rmfpmcrO.dll,rmfpmcrO.dl_
rmztbx14.exe,rmztbx14.ex_
RmDclApp.exe,RmDclApp.ex_,,0x00004000 ; COPYFLG_IN_USE_TRY_RENAME
; (E22.1.1066) Bad value for flags (0X00004000) in RM_FILES.
rmlmk14H.dll,rmlmk14H.dl_,,0x00004000 ; COPYFLG_IN_USE_TRY_RENAME
; (E22.1.1066) Bad value for flags (0X00004000) in RM_FILES.
rmlmk14O.dll,rmlmk14O.dl_,,0x00004000 ; COPYFLG_IN_USE_TRY_RENAME
; (E22.1.1066) Bad value for flags (0X00004000) in RM_FILES.
PCalign.prn,PCalign.pr_
BCalign.prn,BCalign.pr_
Centering.prn,Centering.pr_
Balign.prn,Balign.pr_
Calign.prn,Calign.pr_

[LANGMON_FILES]
rmlmk14.dll,,,0x00004000 ; COPYFLG_IN_USE_TRY_RENAME
; (E22.1.1066) Bad value for flags (0X00004000) in LANGMON_FILES.
rmlmk14H.dll,rmlmk14H.dl_,,0x00004000 ; COPYFLG_IN_USE_TRY_RENAME
; (E22.1.1066) Bad value for flags (0X00004000) in LANGMON_FILES.
rmlmk14O.dll,rmlmk14O.dl_,,0x00004000 ; COPYFLG_IN_USE_TRY_RENAME
; (E22.1.1066) Bad value for flags (0X00004000) in LANGMON_FILES.
RmPrintMan.dll,RmPrintMan.dl_,,0x00004000 ; COPYFLG_IN_USE_TRY_RENAME
; (E22.1.1066) Bad value for flags (0X00004000) in LANGMON_FILES.
RmPrintManU.dll,RmPrintManU.dl_,,0x00004000 ; COPYFLG_IN_USE_TRY_RENAME
; (E22.1.1066) Bad value for flags (0X00004000) in LANGMON_FILES.


[DestinationDirs]
DefaultDestDir=66000
; (E22.1.1044) Wrong value for DirID.
LANGMON_FILES=66002
; (E22.1.1044) Wrong value for DirID.

[SourceDisksNames]
1="ABC 480i CD",,,""
; (W22.1.2023) Use a string token, and put localizable text in the [Strings]
section.

[SourceDisksFiles]
; No Errors down here, lines omitted