windows-driver.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Wed, 23 Mar 2016 11:34:57 +0200
changeset 1945 dbcf75d07a68
parent 1912 8b81a8f0f692
child 1960 2d684ac1adf1
permissions -rw-r--r--
Validating Elisp code
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
     1
.. -*- coding: utf-8; -*-
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
     2
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
     3
=====================
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
     4
 Driver for Windows.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
     5
=====================
1346
a2fbf50a43f4 Fix: Has no 'contents::' directive.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
     6
.. contents::
1905
fba288d59662 Include only local subsections into TOC. This prevent duplication of
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1894
diff changeset
     7
   :local:
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
     8
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
     9
About.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    10
======
791
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
    11
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
    12
  microsoft.public.development.device.drivers
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
    13
                NNTP driver development group at msnews.microsoft.com:119
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
    14
  http://www.microsoft.com/communities/newsgroups/list/en-us/default.aspx
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
    15
                Web-interface to NNTP forum
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
    16
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    17
Which version exist?
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    18
====================
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    19
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    20
 - VxD
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    21
                Windows 3.x and Windows 9x
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    22
 - Windows Driver Model (WDM)
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    23
                Windows 98, Windows 98 Second Edition, Windows Me, Windows
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    24
                2000, Windows XP, Windows Server 2003 and Windows Vista (for
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    25
                backwards compatibility)
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    26
 - Windows Driver Foundation (WDF)
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    27
                Windows 2000 and later
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    28
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    29
  http://en.wikipedia.org/wiki/VxD
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    30
                VxD
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    31
  http://en.wikipedia.org/wiki/Windows_Driver_Model
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    32
                WDM.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    33
  http://en.wikipedia.org/wiki/Windows_Driver_Foundation
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    34
                WDF.
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    35
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    36
Msinfo32.exe.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    37
=============
183
a5133e34ab75 About Msinfo32.exe
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 176
diff changeset
    38
a5133e34ab75 About Msinfo32.exe
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 176
diff changeset
    39
Windows XP/2003 System Information Tool.
a5133e34ab75 About Msinfo32.exe
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 176
diff changeset
    40
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    41
 * http://support.microsoft.com/kb/308549
183
a5133e34ab75 About Msinfo32.exe
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 176
diff changeset
    42
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    43
Sysinternals.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    44
=============
184
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    45
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    46
WinObj.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    47
-------
184
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    48
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    49
Winobj is a program that lets you browse the Windows NT Object Manager
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    50
namespace.
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    51
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    52
devtree.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    53
--------
184
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    54
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    55
The DeviceTree V2.12 utility is a Windows XP/Server 2003 utility written by
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    56
OSR, that allows the user the ability to display the drivers and devices
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    57
loaded in 2 different views. The first view Driver View the user sees a list
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    58
of all the drivers loaded in kernel mode and all the devices that those
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    59
drivers have created. In the second view PnP View the user sees a list of all
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    60
the devices in the system from that of Plug and Play Manager (PnP).
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    61
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    62
Microsoft DDK.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    63
==============
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    64
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    65
DevCon.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    66
-------
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    67
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    68
Supported device classes::
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    69
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    70
  cmd> devcon.exe classes
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    71
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    72
Which files used by specific driver (with "*" prints list of files for all
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    73
drivers)::
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    74
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    75
  cmd> devcon.exe driverfiles *
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    76
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    77
Device ID (names included)::
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    78
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    79
  cmd> devcon.exe hwids *
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    80
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    81
Device status (running/stoped)::
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    82
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    83
  cmd> devcon.exe status *
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    84
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    85
USB Command Verifier.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    86
=====================
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    87
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    88
All USB peripherals are required to pass the Device Framework tests in order
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    89
to gain certification.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    90
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    91
 * http://www.usb.org/developers/tools/
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    92
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    93
Files.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    94
======
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    95
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    96
Windows 98 SE/ME.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    97
-----------------
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    98
284
b21079a6bc2b Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 184
diff changeset
    99
 * .386
b21079a6bc2b Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 184
diff changeset
   100
   VxD driver under Windows 3.x
b21079a6bc2b Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 184
diff changeset
   101
 * .vxd
b21079a6bc2b Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 184
diff changeset
   102
   VxD driver under Windows 95
b21079a6bc2b Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 184
diff changeset
   103
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   104
Windows NT (2000/XP/2003).
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   105
--------------------------
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   106
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   107
 * .inf
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   108
   Stored in %Windir%\Inf.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   109
 * .pnf
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   110
   Precompiled INF File. Stored in %Windir%\Inf.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   111
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   112
Driver type.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   113
============
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   114
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   115
CDC.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   116
----
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   117
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   118
  http://support.microsoft.com/kb/837637
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   119
                How to use or to reference the Usbser.sys driver from
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   120
                universal serial bus (USB) modem .inf files.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   121
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   122
Driver class.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   123
=============
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   124
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   125
  http://msdn.microsoft.com/en-us/library/ms791134.aspx
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   126
                System-Supplied Device Setup Classes
450
4718697074d9 Added link.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 303
diff changeset
   127
  http://msdn.microsoft.com/en-us/library/ff538820.aspx
4718697074d9 Added link.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 303
diff changeset
   128
                Drivers for the Supported USB Device Classes
301
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   129
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   130
How list drivers?
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   131
=================
303
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   132
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   133
Set environment devmgr_show_nonpresent_devices to 1 and run Device Manager,
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   134
select "View" --> "Show hidden devices".
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   135
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   136
How install drivers?
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   137
====================
301
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   138
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   139
dpinst.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   140
-------
619
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   141
301
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   142
Driver Install Frameworks (DIFx) tools allow installing driver under following
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   143
OSes:
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   144
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   145
  Windows Server 2008 R2
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   146
  Windows 7
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   147
  Windows Server 2008
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   148
  Windows Vista
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   149
  Windows Server 2003
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   150
  Windows XP
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   151
  Windows 2000
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   152
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   153
It consist from API (from library, DIFxAPI, DIFxApp) and command line tool
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   154
(DPInst) which can be found in WDK and their licence allow redistribution.
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   155
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   156
  http://www.microsoft.com/whdc/driver/install/DIFxFAQ.mspx
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   157
                Information about Driver Install Frameworks Tools
303
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   158
  http://msdn.microsoft.com/ru-ru/magazine/cc302206%28en-us%29.aspx
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   159
                If you update any drivers in Device Manager
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   160
                %windir%\system32\ReinstallBackups folder is created with
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   161
                backups of the old drivers.
301
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   162
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   163
devcon.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   164
-------
619
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   165
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   166
This command-line specifies the location of the driver package's INF file (c:\toaster\toastpkg.inf)
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   167
and the toaster device's hardware identifier (ID), which is specified within the INF file::
619
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   168
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   169
  cmd# devcon.exe install c:\toaster\toastpkg.inf {b85b7c50-6a01-11d2-b841-00c04fad5171}\mstoaster
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   170
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   171
See:
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   172
619
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   173
  http://msdn.microsoft.com/en-us/library/ff553642.aspx
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   174
                Using the DevCon Tool to Install a Driver Package
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   175
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   176
How debug Windows drivers.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   177
==========================
458
b4a231e0296a How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 450
diff changeset
   178
618
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   179
To detect whether a driver loaded, check the status of the device in Device Manager.
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   180
789
6472b80a8b24 SetupAPI log for Windows XP/2003.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
   181
SetupAPI logs information about device installation in a plain-text log file
6472b80a8b24 SetupAPI log for Windows XP/2003.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
   182
that you can use to verify the installation of a device and to troubleshoot
6472b80a8b24 SetupAPI log for Windows XP/2003.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
   183
device installation problems.
6472b80a8b24 SetupAPI log for Windows XP/2003.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
   184
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   185
For Windows XP/2003 check::
789
6472b80a8b24 SetupAPI log for Windows XP/2003.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
   186
790
cb53d2483faf Fix file name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 789
diff changeset
   187
  %SystemRoot%/setupapi.log
789
6472b80a8b24 SetupAPI log for Windows XP/2003.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
   188
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   189
For Windows Vista and later versions of Windows check::
618
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   190
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   191
  %SystemRoot%\inf\SetupAPI.dev.log     installation events in the device
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   192
  %SystemRoot%\inf\SetupAPI.app.log     application installation
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   193
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   194
See:
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   195
618
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   196
  http://msdn.microsoft.com/en-us/library/ff553497.aspx
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   197
                Troubleshooting Install and Load Problems with Signed Driver Packages
458
b4a231e0296a How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 450
diff changeset
   198
  http://www.microsoft.com/whdc/devtools/debugging/debugtips.mspx
b4a231e0296a How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 450
diff changeset
   199
                Improve Driver Debuggability
b4a231e0296a How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 450
diff changeset
   200
  http://msdn.microsoft.com/en-us/library/ff551063.aspx
b4a231e0296a How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 450
diff changeset
   201
                Debugging Tools for Windows
459
13abfab8b41b added link
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 458
diff changeset
   202
  http://msdn.microsoft.com/en-us/library/ff543450%28VS.85%29.aspx
13abfab8b41b added link
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 458
diff changeset
   203
                Checked and Free Build Differences
1202
4115eb3a6f03 SetupAPI Device Installation Log Entries
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   204
  http://msdn.microsoft.com/en-us/library/windows/hardware/ff540793.aspx
4115eb3a6f03 SetupAPI Device Installation Log Entries
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   205
                Debugging Driver Installation
4115eb3a6f03 SetupAPI Device Installation Log Entries
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   206
  http://msdn.microsoft.com/en-us/library/windows/hardware/ff550863.aspx
4115eb3a6f03 SetupAPI Device Installation Log Entries
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   207
                SetupAPI Device Installation Log Entries
618
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   208
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   209
Driver signing.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   210
===============
618
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   211
640
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   212
Type of signature:
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   213
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   214
 * Signed by a Windows signing authority.
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   215
 * Signed by a trusted publisher.
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   216
 * Signed by an untrusted publisher.
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   217
 * Signed by a publisher of unknown trust.
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   218
 * Altered.
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   219
 * Unsigned.
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   220
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   221
  http://msdn.microsoft.com/en-us/library/ff544703.aspx
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   222
                Type of signature and performed action.
628
0af4870462ea Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 624
diff changeset
   223
  http://www.microsoft.com/whdc/driver/install/drvsign/best-practices.mspx
643
6eeff5c4e2fe Added url.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 642
diff changeset
   224
                Code-Signing Best Practices.
6eeff5c4e2fe Added url.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 642
diff changeset
   225
  http://msdn.microsoft.com/en-us/library/ff550764.aspx
6eeff5c4e2fe Added url.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 642
diff changeset
   226
                Device Installation Signing Requirements.
649
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   227
  http://www.microsoft.com/whdc/winlogo/categories.mspx
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   228
                Windows Logo Program Test Categories.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   229
  http://www.microsoft.com/whdc/driver/install/drvsign/crosscert.mspx
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   230
                Root Authority Cross-Certificate List
628
0af4870462ea Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 624
diff changeset
   231
1154
26b6fca0cf39 Disable signing requirement on Windows 7 x64.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1153
diff changeset
   232
Disable signing requirement on Windows 7 x64.
26b6fca0cf39 Disable signing requirement on Windows 7 x64.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1153
diff changeset
   233
=============================================
26b6fca0cf39 Disable signing requirement on Windows 7 x64.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1153
diff changeset
   234
::
26b6fca0cf39 Disable signing requirement on Windows 7 x64.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1153
diff changeset
   235
1155
0f14d202a576 To revert back::
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1154
diff changeset
   236
  cmd> bcdedit -set loadoptions DDISABLE_INTEGRITY_CHECKS
1154
26b6fca0cf39 Disable signing requirement on Windows 7 x64.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1153
diff changeset
   237
  cmd> bcdedit -set TESTSIGNING ON
26b6fca0cf39 Disable signing requirement on Windows 7 x64.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1153
diff changeset
   238
1155
0f14d202a576 To revert back::
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1154
diff changeset
   239
To revert back::
0f14d202a576 To revert back::
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1154
diff changeset
   240
0f14d202a576 To revert back::
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1154
diff changeset
   241
  cmd> bcdedit.exe -set loadoptions ENABLE_INTEGRITY_CHECKS
0f14d202a576 To revert back::
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1154
diff changeset
   242
  cmd> bcdedit.exe -set TESTSIGNING OFF
0f14d202a576 To revert back::
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1154
diff changeset
   243
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   244
Tools for Signing Drivers.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   245
==========================
628
0af4870462ea Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 624
diff changeset
   246
629
f677b24ac51b Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 628
diff changeset
   247
'certmgr.msc' present in Windows 2000 and upper.
f677b24ac51b Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 628
diff changeset
   248
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   249
From Windows SDK/WDK::
629
f677b24ac51b Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 628
diff changeset
   250
f677b24ac51b Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 628
diff changeset
   251
  CertMgr Inf2Cat MakeCat MakeCert Pvk2Pfx SignTool
628
0af4870462ea Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 624
diff changeset
   252
1156
783158979d5f register certificate in Windows
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1155
diff changeset
   253
To register certificate in Windows 7 (or install "Admin Tools Pack" in Windows
783158979d5f register certificate in Windows
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1155
diff changeset
   254
XP)::
783158979d5f register certificate in Windows
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1155
diff changeset
   255
783158979d5f register certificate in Windows
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1155
diff changeset
   256
  cmd> certutil -addstore TrustedPublisher cert.cer
783158979d5f register certificate in Windows
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1155
diff changeset
   257
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   258
See:
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   259
618
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   260
  http://msdn.microsoft.com/en-us/library/ff552958.aspx
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   261
                Tools for Signing Drivers
1156
783158979d5f register certificate in Windows
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1155
diff changeset
   262
  http://www.microsoft.com/download/en/details.aspx?id=16770
783158979d5f register certificate in Windows
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1155
diff changeset
   263
                Admin Tools Pack
623
fd703dc282b7 Invoking a Device Properties Dialog Box from a Command-line Prompt.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 620
diff changeset
   264
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   265
Invoking a Device Properties Dialog Box from a Command-line Prompt.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   266
===================================================================
623
fd703dc282b7 Invoking a Device Properties Dialog Box from a Command-line Prompt.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 620
diff changeset
   267
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   268
You need get device-instance-ID-parameter::
623
fd703dc282b7 Invoking a Device Properties Dialog Box from a Command-line Prompt.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 620
diff changeset
   269
fd703dc282b7 Invoking a Device Properties Dialog Box from a Command-line Prompt.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 620
diff changeset
   270
  cmd# rundll32.exe devmgr.dll,DeviceProperties_RunDLL /DeviceID "ACPI\PNP0F03\4&1A8C8C2E&0"
fd703dc282b7 Invoking a Device Properties Dialog Box from a Command-line Prompt.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 620
diff changeset
   271
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   272
 * http://msdn.microsoft.com/en-us/library/ff548170.aspx
624
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   273
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   274
Driver Selection Process.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   275
=========================
624
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   276
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   277
Windows uses the following criteria to select a driver for a device:
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   278
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   279
 * Windows selects the driver that has the lowest rank value as the best match for the device.
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   280
 * For drivers that have equal rank, Windows selects the driver that has the most recent date.
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   281
 * For the drivers that have equal rank and date, Windows selects the driver that has the highest version.
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   282
 * Windows XP SP1 and later: For drivers that have equal rank, date, and version, Windows can select any driver.
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   283
 * Windows XP and Windows 2000: For drivers that have equal rank, date, and version, Windows can select any driver.
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   284
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   285
See:
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   286
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   287
 * http://msdn.microsoft.com/en-us/library/ff549553.aspx
642
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   288
1894
2e3bc2435d68 Convert all files from TXT to RST.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
   289
Windows driver for USB
2e3bc2435d68 Convert all files from TXT to RST.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
   290
======================
2e3bc2435d68 Convert all files from TXT to RST.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
   291
2e3bc2435d68 Convert all files from TXT to RST.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
   292
  http://msdn.microsoft.com/en-us/library/ff538820%28VS.85%29.aspx
2e3bc2435d68 Convert all files from TXT to RST.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
   293
    Drivers for the Supported USB Device Classes
2e3bc2435d68 Convert all files from TXT to RST.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
   294
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   295
Distributing a Driver Package.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   296
==============================
642
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   297
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   298
Windows Update.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   299
---------------
642
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   300
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   301
You can distribute a driver package through the Windows Update program if the driver package:
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   302
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   303
 * Passes the WHQL test program and receives a WHQL release signature.
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   304
 * Qualifies for the Windows Logo program.
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   305
 * Meets additional requirements that ensure that Windows Update can determine the correct driver
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   306
   package for the user's device, can legally distribute it, and can automatically download it.
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   307
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   308
See:
649
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   309
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   310
 * http://msdn.microsoft.com/en-us/library/ff554874.aspx
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   311
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   312
Hardware ID.
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   313
------------
649
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   314
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   315
PCI and AGP buses: Contain subsystem ID and subsystem vendor ID (&SUBSYS in the ID string). Drivers
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   316
must have VID/DID/SVID/SID PNP ID entries to be published via Windows Update.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   317
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   318
PCI Device Subsystem IDs and Windows specifications are available at:
1153
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   319
ee88b4d14151 Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
   320
 * http://www.microsoft.com/whdc/archive/pciidspec.mspx
649
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   321
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   322
PCMCIA: Always specific; contains PCMCIA in the ID string.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   323
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   324
USB: Contains VID and &PID in the ID string.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   325
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   326
IEEE 1394: Always specific; contains 1394 in the ID string.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   327
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   328
HID: Contains &VID and &PID in the ID string.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   329
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   330
IDE: Contains IDE\ in the ID string.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   331
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   332
Parallel Port Printers: Contain LPTENUM\ in the ID string.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   333
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   334
IrDA Printers: IDs begin with HWP.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   335
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   336
  http://www.microsoft.com/whdc/winlogo/winup/default.mspx
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   337
                Windows Update Driver Publishing