author | Oleksandr Gavenko <gavenkoa@gmail.com> |
Fri, 22 Oct 2010 14:18:55 +0300 | |
changeset 618 | ef2c73fcca44 |
parent 459 | 13abfab8b41b |
child 619 | bae478dec531 |
permissions | -rw-r--r-- |
176 | 1 |
-*- outline -*- |
2 |
||
3 |
* Which version exist? |
|
4 |
||
5 |
- VxD |
|
6 |
Windows 3.x and Windows 9x |
|
7 |
- Windows Driver Model (WDM) |
|
8 |
Windows 98, Windows 98 Second Edition, Windows Me, Windows |
|
9 |
2000, Windows XP, Windows Server 2003 and Windows Vista (for |
|
10 |
backwards compatibility) |
|
11 |
- Windows Driver Foundation (WDF) |
|
12 |
Windows 2000 and later |
|
13 |
||
14 |
* VxD. |
|
15 |
||
16 |
See |
|
17 |
||
18 |
http://en.wikipedia.org/wiki/VxD |
|
19 |
||
20 |
* WDM. |
|
21 |
||
22 |
See |
|
23 |
||
24 |
http://en.wikipedia.org/wiki/Windows_Driver_Model |
|
25 |
||
26 |
* WDF. |
|
27 |
||
28 |
See |
|
29 |
||
30 |
http://en.wikipedia.org/wiki/Windows_Driver_Foundation |
|
31 |
||
32 |
* Tools. |
|
33 |
||
183 | 34 |
** Msinfo32.exe |
35 |
||
36 |
Windows XP/2003 System Information Tool. |
|
37 |
||
38 |
See |
|
39 |
||
40 |
http://support.microsoft.com/kb/308549 |
|
41 |
||
184
380c761db215
About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
183
diff
changeset
|
42 |
** Sysinternals. |
380c761db215
About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
183
diff
changeset
|
43 |
|
380c761db215
About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
183
diff
changeset
|
44 |
*** WinObj. |
380c761db215
About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
183
diff
changeset
|
45 |
|
380c761db215
About WinObj and devtree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
183
diff
changeset
|
46 |
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
|
47 |
namespace. |
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 |
** devtree. |
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 |
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
|
52 |
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
|
53 |
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
|
54 |
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
|
55 |
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
|
56 |
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
|
57 |
|
176 | 58 |
** Microsoft DDK. |
59 |
||
60 |
*** DevCon. |
|
61 |
||
62 |
Supported device classes: |
|
63 |
||
64 |
cmd> devcon.exe classes |
|
65 |
||
66 |
Which files used by specific driver (with "*" prints list of files for all drivers): |
|
67 |
||
68 |
cmd> devcon.exe driverfiles * |
|
69 |
||
70 |
Device ID (names included): |
|
71 |
||
72 |
cmd> devcon.exe hwids * |
|
73 |
||
74 |
Device status (running/stoped): |
|
75 |
||
76 |
cmd> devcon.exe status * |
|
77 |
||
78 |
** USB Command Verifier. |
|
79 |
||
80 |
All USB peripherals are required to pass the Device Framework tests in order |
|
81 |
to gain certification. |
|
82 |
||
83 |
http://www.usb.org/developers/tools/ |
|
84 |
||
85 |
* Files. |
|
86 |
||
87 |
** Windows 98 SE/ME. |
|
88 |
||
284
b21079a6bc2b
Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
184
diff
changeset
|
89 |
* .386 |
b21079a6bc2b
Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
184
diff
changeset
|
90 |
VxD driver under Windows 3.x |
b21079a6bc2b
Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
184
diff
changeset
|
91 |
* .vxd |
b21079a6bc2b
Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
184
diff
changeset
|
92 |
VxD driver under Windows 95 |
b21079a6bc2b
Files for windows driver.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
184
diff
changeset
|
93 |
|
176 | 94 |
** Windows NT (2000/XP/2003). |
95 |
||
96 |
* .inf |
|
97 |
Stored in %Windir%\Inf. |
|
98 |
* .pnf |
|
99 |
Precompiled INF File. Stored in %Windir%\Inf. |
|
100 |
||
101 |
* Driver type. |
|
102 |
||
103 |
** CDC. |
|
104 |
||
105 |
http://support.microsoft.com/kb/837637 |
|
106 |
How to use or to reference the Usbser.sys driver from |
|
107 |
universal serial bus (USB) modem .inf files. |
|
108 |
||
109 |
* Driver class. |
|
110 |
||
111 |
See |
|
112 |
||
113 |
http://msdn.microsoft.com/en-us/library/ms791134.aspx |
|
114 |
System-Supplied Device Setup Classes |
|
450 | 115 |
http://msdn.microsoft.com/en-us/library/ff538820.aspx |
116 |
Drivers for the Supported USB Device Classes |
|
301
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
117 |
|
303 | 118 |
* How list drivers? |
119 |
||
120 |
Set environment devmgr_show_nonpresent_devices to 1 and run Device Manager, |
|
121 |
select "View" --> "Show hidden devices". |
|
122 |
||
301
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
123 |
* How install drivers? |
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
124 |
|
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
125 |
Driver Install Frameworks (DIFx) tools allow installing driver under following |
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
126 |
OSes: |
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
127 |
|
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
128 |
Windows Server 2008 R2 |
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
129 |
Windows 7 |
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
130 |
Windows Server 2008 |
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
131 |
Windows Vista |
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
132 |
Windows Server 2003 |
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
133 |
Windows XP |
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
134 |
Windows 2000 |
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
135 |
|
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
136 |
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
|
137 |
(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
|
138 |
|
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
139 |
http://www.microsoft.com/whdc/driver/install/DIFxFAQ.mspx |
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
140 |
Information about Driver Install Frameworks Tools |
303 | 141 |
http://msdn.microsoft.com/ru-ru/magazine/cc302206%28en-us%29.aspx |
142 |
If you update any drivers in Device Manager |
|
143 |
%windir%\system32\ReinstallBackups folder is created with |
|
144 |
backups of the old drivers. |
|
301
072d4cc9d726
How install drivers?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
284
diff
changeset
|
145 |
|
458
b4a231e0296a
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
450
diff
changeset
|
146 |
* How debug Windows drivers. |
b4a231e0296a
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
450
diff
changeset
|
147 |
|
618
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
148 |
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
|
149 |
|
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
150 |
In Windows Vista and later versions of Windows, SetupAPI logs information about device installation |
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
151 |
in a plain-text log file that you can use to verify the installation of a device and to troubleshoot |
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
152 |
device installation problems. Check |
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
153 |
|
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
154 |
%SystemRoot%\inf\SetupAPI.dev.log installation events in the device |
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
155 |
%SystemRoot%\inf\SetupAPI.app.log application installation |
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
156 |
|
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
157 |
http://msdn.microsoft.com/en-us/library/ff553497.aspx |
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
158 |
Troubleshooting Install and Load Problems with Signed Driver Packages |
458
b4a231e0296a
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
450
diff
changeset
|
159 |
http://www.microsoft.com/whdc/devtools/debugging/debugtips.mspx |
b4a231e0296a
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
450
diff
changeset
|
160 |
Improve Driver Debuggability |
b4a231e0296a
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
450
diff
changeset
|
161 |
http://msdn.microsoft.com/en-us/library/ff551063.aspx |
b4a231e0296a
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
450
diff
changeset
|
162 |
Debugging Tools for Windows |
459 | 163 |
http://msdn.microsoft.com/en-us/library/ff543450%28VS.85%29.aspx |
164 |
Checked and Free Build Differences |
|
618
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
165 |
|
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
166 |
* Driver signing. |
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
167 |
|
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
168 |
http://msdn.microsoft.com/en-us/library/ff552958.aspx |
ef2c73fcca44
How debug Windows drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
459
diff
changeset
|
169 |
Tools for Signing Drivers |