driver-win.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Fri, 28 Jan 2011 14:08:44 +0200
changeset 791 ba7ab740138b
parent 790 cb53d2483faf
child 899 7b4265c8d324
permissions -rw-r--r--
About.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
735
5c437e2d5fe1 Fix Emacs settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 649
diff changeset
     1
-*- mode: outline; coding: utf-8; fill-column: 80 -*-
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
     2
791
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
     3
* About.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
     4
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
     5
  microsoft.public.development.device.drivers
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
     6
                NNTP driver development group at msnews.microsoft.com:119
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
     7
  http://www.microsoft.com/communities/newsgroups/list/en-us/default.aspx
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
     8
                Web-interface to NNTP forum
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
     9
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    10
* Which version exist?
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    11
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    12
 - VxD
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    13
                Windows 3.x and Windows 9x
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    14
 - Windows Driver Model (WDM)
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    15
                Windows 98, Windows 98 Second Edition, Windows Me, Windows
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    16
                2000, Windows XP, Windows Server 2003 and Windows Vista (for
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    17
                backwards compatibility)
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    18
 - Windows Driver Foundation (WDF)
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    19
                Windows 2000 and later
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    20
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    21
* VxD.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    22
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    23
See
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    24
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    25
  http://en.wikipedia.org/wiki/VxD
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    26
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    27
* WDM.
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
See
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    30
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    31
  http://en.wikipedia.org/wiki/Windows_Driver_Model
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    32
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    33
* WDF.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    34
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    35
See
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    36
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    37
  http://en.wikipedia.org/wiki/Windows_Driver_Foundation
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    38
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    39
* Tools.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    40
183
a5133e34ab75 About Msinfo32.exe
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 176
diff changeset
    41
** Msinfo32.exe
a5133e34ab75 About Msinfo32.exe
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 176
diff changeset
    42
a5133e34ab75 About Msinfo32.exe
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 176
diff changeset
    43
Windows XP/2003 System Information Tool.
a5133e34ab75 About Msinfo32.exe
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 176
diff changeset
    44
a5133e34ab75 About Msinfo32.exe
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 176
diff changeset
    45
See
a5133e34ab75 About Msinfo32.exe
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 176
diff changeset
    46
a5133e34ab75 About Msinfo32.exe
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 176
diff changeset
    47
  http://support.microsoft.com/kb/308549
a5133e34ab75 About Msinfo32.exe
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 176
diff changeset
    48
184
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    49
** Sysinternals.
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    50
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    51
*** WinObj.
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    52
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    53
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
    54
namespace.
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    55
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    56
** devtree.
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    57
380c761db215 About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 183
diff changeset
    58
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
    59
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
    60
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
    61
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
    62
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
    63
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
    64
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    65
** Microsoft DDK.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    66
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    67
*** DevCon.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    68
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    69
Supported device classes:
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    70
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    71
  cmd> devcon.exe classes
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    72
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    73
Which files used by specific driver (with "*" prints list of files for all drivers):
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
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    77
Device ID (names included):
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
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    81
Device status (running/stoped):
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
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    85
** USB Command Verifier.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    86
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    87
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
    88
to gain certification.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    89
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    90
  http://www.usb.org/developers/tools/
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    91
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    92
* Files.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    93
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    94
** Windows 98 SE/ME.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    95
284
b21079a6bc2b Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 184
diff changeset
    96
 * .386
b21079a6bc2b Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 184
diff changeset
    97
   VxD driver under Windows 3.x
b21079a6bc2b Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 184
diff changeset
    98
 * .vxd
b21079a6bc2b Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 184
diff changeset
    99
   VxD driver under Windows 95
b21079a6bc2b Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 184
diff changeset
   100
176
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   101
** Windows NT (2000/XP/2003).
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   102
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   103
 * .inf
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   104
   Stored in %Windir%\Inf.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   105
 * .pnf
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   106
   Precompiled INF File. Stored in %Windir%\Inf.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   107
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   108
* Driver type.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   109
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   110
** CDC.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   111
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   112
  http://support.microsoft.com/kb/837637
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   113
                How to use or to reference the Usbser.sys driver from
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   114
                universal serial bus (USB) modem .inf files.
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   115
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   116
* Driver class.
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
See
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   119
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   120
  http://msdn.microsoft.com/en-us/library/ms791134.aspx
5181378e42af CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
   121
                System-Supplied Device Setup Classes
450
4718697074d9 Added link.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 303
diff changeset
   122
  http://msdn.microsoft.com/en-us/library/ff538820.aspx
4718697074d9 Added link.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 303
diff changeset
   123
                Drivers for the Supported USB Device Classes
301
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   124
303
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   125
* How list drivers?
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   126
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   127
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
   128
select "View" --> "Show hidden devices".
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   129
301
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   130
* How install drivers?
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   131
619
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   132
** dpinst.
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   133
301
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   134
Driver Install Frameworks (DIFx) tools allow installing driver under following
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   135
OSes:
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   136
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   137
  Windows Server 2008 R2
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   138
  Windows 7
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   139
  Windows Server 2008
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   140
  Windows Vista
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   141
  Windows Server 2003
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   142
  Windows XP
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   143
  Windows 2000
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
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
   146
(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
   147
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   148
  http://www.microsoft.com/whdc/driver/install/DIFxFAQ.mspx
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   149
                Information about Driver Install Frameworks Tools
303
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   150
  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
   151
                If you update any drivers in Device Manager
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   152
                %windir%\system32\ReinstallBackups folder is created with
ff23efaf6857 How list drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 301
diff changeset
   153
                backups of the old drivers.
301
072d4cc9d726 How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 284
diff changeset
   154
619
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   155
** devcon.
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   156
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   157
This command-line specifies the location of the driver package's INF file (c:\toaster\toastpkg.inf)
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   158
and the toaster device's hardware identifier (ID), which is specified within the INF file.
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   159
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   160
  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
   161
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   162
  http://msdn.microsoft.com/en-us/library/ff553642.aspx
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   163
                Using the DevCon Tool to Install a Driver Package
bae478dec531 About devcon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
   164
458
b4a231e0296a How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 450
diff changeset
   165
* How debug Windows drivers.
b4a231e0296a How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 450
diff changeset
   166
618
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   167
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
   168
789
6472b80a8b24 SetupAPI log for Windows XP/2003.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
   169
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
   170
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
   171
device installation problems.
6472b80a8b24 SetupAPI log for Windows XP/2003.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
   172
6472b80a8b24 SetupAPI log for Windows XP/2003.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
   173
For Windows XP/2003 check:
6472b80a8b24 SetupAPI log for Windows XP/2003.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
   174
790
cb53d2483faf Fix file name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 789
diff changeset
   175
  %SystemRoot%/setupapi.log
789
6472b80a8b24 SetupAPI log for Windows XP/2003.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
   176
6472b80a8b24 SetupAPI log for Windows XP/2003.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
   177
For Windows Vista and later versions of Windows check:
618
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   178
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   179
  %SystemRoot%\inf\SetupAPI.dev.log     installation events in the device
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   180
  %SystemRoot%\inf\SetupAPI.app.log     application installation
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   181
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   182
  http://msdn.microsoft.com/en-us/library/ff553497.aspx
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   183
                Troubleshooting Install and Load Problems with Signed Driver Packages
458
b4a231e0296a How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 450
diff changeset
   184
  http://www.microsoft.com/whdc/devtools/debugging/debugtips.mspx
b4a231e0296a How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 450
diff changeset
   185
                Improve Driver Debuggability
b4a231e0296a How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 450
diff changeset
   186
  http://msdn.microsoft.com/en-us/library/ff551063.aspx
b4a231e0296a How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 450
diff changeset
   187
                Debugging Tools for Windows
459
13abfab8b41b added link
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 458
diff changeset
   188
  http://msdn.microsoft.com/en-us/library/ff543450%28VS.85%29.aspx
13abfab8b41b added link
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 458
diff changeset
   189
                Checked and Free Build Differences
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
* Driver signing.
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   192
640
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   193
Type of signature:
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   194
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   195
 * Signed by a Windows signing authority.
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   196
 * Signed by a trusted publisher.
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   197
 * Signed by an untrusted publisher.
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   198
 * Signed by a publisher of unknown trust.
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   199
 * Altered.
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   200
 * Unsigned.
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   201
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   202
  http://msdn.microsoft.com/en-us/library/ff544703.aspx
011003fc79d8 Type of signature.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   203
                Type of signature and performed action.
628
0af4870462ea Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 624
diff changeset
   204
  http://www.microsoft.com/whdc/driver/install/drvsign/best-practices.mspx
643
6eeff5c4e2fe Added url.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 642
diff changeset
   205
                Code-Signing Best Practices.
6eeff5c4e2fe Added url.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 642
diff changeset
   206
  http://msdn.microsoft.com/en-us/library/ff550764.aspx
6eeff5c4e2fe Added url.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 642
diff changeset
   207
                Device Installation Signing Requirements.
649
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   208
  http://www.microsoft.com/whdc/winlogo/categories.mspx
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   209
                Windows Logo Program Test Categories.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   210
  http://www.microsoft.com/whdc/driver/install/drvsign/crosscert.mspx
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   211
                Root Authority Cross-Certificate List
628
0af4870462ea Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 624
diff changeset
   212
0af4870462ea Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 624
diff changeset
   213
** Tools for Signing Drivers.
0af4870462ea Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 624
diff changeset
   214
629
f677b24ac51b Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 628
diff changeset
   215
'certmgr.msc' present in Windows 2000 and upper.
f677b24ac51b Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 628
diff changeset
   216
f677b24ac51b Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 628
diff changeset
   217
From Windows SDK/WDK:
f677b24ac51b Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 628
diff changeset
   218
f677b24ac51b Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 628
diff changeset
   219
  CertMgr Inf2Cat MakeCat MakeCert Pvk2Pfx SignTool
628
0af4870462ea Tools for Signing Drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 624
diff changeset
   220
618
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   221
  http://msdn.microsoft.com/en-us/library/ff552958.aspx
ef2c73fcca44 How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   222
                Tools for Signing Drivers
623
fd703dc282b7 Invoking a Device Properties Dialog Box from a Command-line Prompt.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 620
diff changeset
   223
fd703dc282b7 Invoking a Device Properties Dialog Box from a Command-line Prompt.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 620
diff changeset
   224
* Invoking a Device Properties Dialog Box from a Command-line Prompt.
fd703dc282b7 Invoking a Device Properties Dialog Box from a Command-line Prompt.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 620
diff changeset
   225
fd703dc282b7 Invoking a Device Properties Dialog Box from a Command-line Prompt.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 620
diff changeset
   226
You need get device-instance-ID-parameter:
fd703dc282b7 Invoking a Device Properties Dialog Box from a Command-line Prompt.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 620
diff changeset
   227
fd703dc282b7 Invoking a Device Properties Dialog Box from a Command-line Prompt.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 620
diff changeset
   228
  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
   229
fd703dc282b7 Invoking a Device Properties Dialog Box from a Command-line Prompt.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 620
diff changeset
   230
  http://msdn.microsoft.com/en-us/library/ff548170.aspx
624
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   231
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   232
* Driver Selection Process.
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   233
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   234
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
   235
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   236
 * 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
   237
 * 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
   238
 * 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
   239
 * 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
   240
 * 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
   241
76016e0c69f9 Driver Selection Process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   242
  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
   243
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   244
* Distributing a Driver Package.
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   245
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   246
** Windows Update.
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   247
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   248
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
   249
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   250
 * 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
   251
 * Qualifies for the Windows Logo program.
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   252
 * 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
   253
   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
   254
e1732c85cd1a Distributing a Driver Package. Windows Update.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 640
diff changeset
   255
  http://msdn.microsoft.com/en-us/library/ff554874.aspx
649
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   256
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   257
* Hardware ID.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   258
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   259
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
   260
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
   261
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   262
PCI Device Subsystem IDs and Windows specifications are available at:
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   263
http://www.microsoft.com/whdc/archive/pciidspec.mspx
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   264
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   265
PCMCIA: Always specific; contains PCMCIA in the ID string.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   266
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   267
USB: Contains VID and &PID in the ID string.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   268
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   269
IEEE 1394: Always specific; contains 1394 in the ID string.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   270
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   271
HID: Contains &VID and &PID in the ID string.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   272
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   273
IDE: Contains IDE\ in the ID string.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   274
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   275
Parallel Port Printers: Contain LPTENUM\ in the ID string.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   276
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   277
IrDA Printers: IDs begin with HWP.
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   278
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   279
  http://www.microsoft.com/whdc/winlogo/winup/default.mspx
2c884c88fd23 Hardware ID.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 643
diff changeset
   280
                Windows Update Driver Publishing