Welcome to MSDN Blogs Sign in | Join | Help

Resources For Investigating and Fixing Windows Driver Framework Installation Issues

Currently there is some more information I need to accumulate here:

  • Summary of services for each framework
  • Other registry settings needed for a healthy installation
  • Other registry settings that are typically created by our packages (NOT all possible keys, just those we might write ourselves).
  • Provision a source point with some text files for our known workarounds, data collection scripts and such- then link to those from here.

Turning up SetupApi logging level on OS before Windows Vista

To set the logging level for all device-installation programs

  • 1. If the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup registry subkey does not contain a LogLevel entry, create one as a new REG_DWORD value.
  • 2. Set the value of the LogLevel entry to the logging level that you want.

For most purposes, a value of 0x6060 is sufficient for the level of detail needed to debug WDF installation issues.  A value of 0xFFFF is also usable, but it lists all INFs searched in matching an ID, and in most cases, this won't matter to you.

See http://www.microsoft.com/whdc/driver/install/setupapilog.mspx for further information, and a useful paper on setupapi logs and installation debugging.

  

Files making up the Windows Driver Frameworks

This is a summary of the individual files and their correct post-install locations.

KMDF

File Name

Location

WdfCoinstaller01???.DLL (??? Is minor version number)*

%windir%\system32

Wdf01000.sys

%windir%\system32\drivers

WdfLdr.Sys

%windir%\system32\drivers

 

UMDF

File Name

Location

WudfUpdate_01???.dll (??? Is minor version number)*

%windir%\system32

WUDFCoinstaller.dll

%windir%\system32

WUDFHost.exe

%windir%\system32

WUDFPlatform.dll

%windir%\system32

WUDFSvc.dll

%windir%\system32

WUDFx.dll

%windir%\system32

WUDFPf.sys

%windir%\system32\drivers

WUDFRd.sys

%windir%\system32\drivers

 

Coinstaller sizes for all WDF versions

KMDF

Version

Date

X86 fre

X86 chk

Amd64fre

Amd64chk

Ia64fre

Ia64chk

1.0

Nov 30, 2005

1,060,424

N/A

1,491,528

N/A

2,302,024

N/A

1.1

Apr 20, 2006

1,418,720

1,460,192

1,912,800

1,983,968

2,914,272

3,100,640

1.5

Nov 2, 2006

1,419,232

1,512,928

1,919,968

2,059,744

3,084,768

3,552,224

1.7

Mar 27, 2008

1,112,288

815,328

1,490,656

1,087,200

1,626,848

1,764,576

Notes:

  • KMDF 1.0 had no checked coinstallers- binaries for the checked version were a part of the kit (in wdf\kmdf10\bin\debug)
  • KMDF 1.7 binaries are smaller because a multi-OS update package was used. Checked coinstallers [except IA64] cannot update Windows Vista (they are smaller because no package is included for this)- the underlying technology does not support checked OS updates. IA64 checked is larger because the multi-OS update package is much larger, even after compression.

UMDF

Version

Date

X86fre

X86chk

Amd64fre

Amd64chk

Ia64fre

Ia64chk

1.5

Nov 2, 2006

831,096

972,408

996,984

1,170,040

N/A

N/A

1.7

Mar 27, 2008

1,302,600

997,960

1,533,512

1,197,128

1,798,728

2,142,280

Notes:

  • UMDF 1.5 did not support the IA64 platform.
  • The 1.7 checked coinstallers [except IA64] are smaller for the same reason as KMDF.

 

Binary sizes for all released WDF versions

KMDF

File and version

Date

X86fre

X86chk

Amd64fre

Amd64chk

Ia64fre

Ia64chk

1.0 wdf01000.sys

Nov 30, 2005

474,184

544,840

1,017,928

1,145,416

1,598,536

1,747,528

1.0 wdfldr.sys

Nov 30, 2005

31,304

31,816

37,960

38,984

58,440

59,464

1.1 wdf01000.sys

Apr 20, 2006

479,200

556,512

838,624

944,608

1,350,624

1,536,480

1.1 wdfldr.sys

Apr 20, 2006

30,688

31,200

32,736

33,760

53,216

55,264

1.5 wdf01000.sys

Nov 2, 2006

492,000

577,504

865,760

969,184

1,376,224

1,587,680

1.5 wdfldr.sys

Nov 2, 2006

32,224

32,736

34,784

35,296

60,384

61,920

1.7 wdf01000.sys

Mar 27, 2008

503,008

590,048

880,864

985,824

1,405,664

1,623,776

1.7 wdfldr.sys

Mar 27, 2008

35,040

35,552

37,088

38,112

62,688

65,248

 

  • KMDF 1.0 has no version resources in its binaries, all others have them in both binaries
  • KMDF 1.1 version is 1.1.0.0.
  • KMDF 1.5 version is 1.5.6000.0
  • KMDF 1.7 product version is 1.7.6001.0 [the file version may differ on Windows Vista- otherwise, both version numbers are identical]

 

UMDF 1.7

File and version

Date

X86fre

X86chk

Amd64fre

Amd64chk

Ia64fre

Ia64chk

Wudfcoinstaller.dll

Jan 19, 2008

87,552

163,328

89,600

174,592

183,368

347,136

Wudfhost.exe

Jan 19, 2008

142,336

151,040

166,400

175,616

298,496

317,952

Wudfpf.sys

Jan 18, 2008

77,696

83,840

95,744

106,496

190,464

201,216

Wudfplatform.dll

Jan 18, 2008

163,840

243,712

172,544

265,728

348,160

515,584

Wudfrd.sys

Jan 19, 2008

83,328

94,592

108,544

121,856

258,048

284,160

Wudfsvc.dll

Jan 19, 2008

55,296

59,392

66,560

70,656

151,552

157,696

Wudfx.dll

Jan 19, 2008

305,152

334,336

377,344

410,624

648,192

726,528

 

  • Binaries should have version resource for 6.0.6001.1800

UMDF 1.5

File

Date

X86fre

X86chk

Amd64fre

Amd64chk

Wudfcoinstaller.dll

Nov 2, 2006

87,552

163,840

89,600

174,080

Wudfhost.exe

Nov 2, 2006

143,360

152,576

167,424

177,152

Wudfpf.sys

Nov 2, 2006

76,672

82,560

95,232

104,960

Wudfplatform.dll

Nov 2, 2006

164,352

244,224

172,544

266,240

Wudfrd.sys

Nov 2, 2006

82,560

93,440

108,032

120,320

Wudfsvc.dll

Nov 2, 2006

55,296

59,904

66,560

70,656

Wudfx.dll

Nov 2, 2006

309,760

338,944

381,952

414,208

 

  • Binaries should have version resource for 6.0.6000.16386
  • There is no IA64 version of UMDF 1.5.

 

Published Thursday, September 11, 2008 2:30 PM by BobKjelgaard

Comments

No Comments
New Comments to this post are disabled
 
Page view tracker