All about Windows Hardware Development

Windows Driver/Device Development and Hardware Certifcation

6 months after I move to Intel MCG

Cheers! Great place to wok on Windows Tablet in MCG!

Author: Fred ZH Date: 06/01/2014

MaximumTransferSize is obsolete after Win2000

MaximumTransferSize member of the USBD_PIPE_INFORMATION structure is obsolete after Win2000. Systems...

Author: Fred ZH Date: 11/03/2013

Layered Driver Architecture

https://msdn.microsoft.com/en-us/library/ms791644.aspxLayered Driver ArchitectureWindows operating...

Author: Fred ZH Date: 11/03/2013

"CTS" is not supported by USBSer.sys?

The usbser.sys assumes that the device has always signaled CTS.The RTS/CTS hardware handshaking is...

Author: Fred ZH Date: 11/03/2013

Get installed hotfixes in Windows

Here is a command: wmic qfe list full On XP, go to the registry directly: Instances of this class...

Author: Fred ZH Date: 11/03/2013

To ignore a device's serial number

https://www.lvr.com/usbfaq.htmDuring device testing, we attach many devices that are identical except...

Author: Fred ZH Date: 11/03/2013

Run program as Local System Account

To delete registry keys under Vista+... This article which demonstrates the use of PSTools from...

Author: Fred ZH Date: 11/03/2013

How to remove phantom/ghost devices

What is phantom devices Hidden, inactive deives, ghost devices. When a device is physically removed...

Author: Fred ZH Date: 11/03/2013

Test Unit Ready (TUR)

The SCSI Test Unit Ready command is used to determine if a device is ready to transfer data...

Author: Fred ZH Date: 11/03/2013

Overview of Signing and Install Process

I think "PIC" actually means "SPC".https://msdn.microsoft.com/en-us/library/aa906274.aspxKernel-Mode...

Author: Fred ZH Date: 11/03/2013

Test an unsigned driver

The recommendation is test-sign your driver...Installing an Unsigned Driver during Development and...

Author: Fred ZH Date: 11/03/2013

Safely Remove Hardware

  1. Invoke the Safely Remove Hardware Dialog:RunDll32.exe shell32.dll,Control_RunDLL hotplug.dll2....

Author: Fred ZH Date: 11/03/2013

How the system Finds and Loads Drivers

  1. PnP device It has an electronic signature that bus driver can detect the new hardware 2. Legacy...

Author: Fred ZH Date: 11/03/2013

Display JPG in ATL

• Tools: VC2005 (ATL8.0)• 2 possible ways:1. using the OleLoadPicture function and the...

Author: Fred ZH Date: 11/03/2013

PnP Device Installation

  1. Plug the device into the computer.2. The device is enumerated. the bus driver notifies the...

Author: Fred ZH Date: 11/03/2013

Composite USB device

Composite USB device A device that contains more than one interface descriptor is known as a...

Author: Fred ZH Date: 11/03/2013

USB Device ENUMERATION PROCESS

( Copy From Microchip AN1003) The following summarizes the steps involved in theenumeration of a USB...

Author: Fred ZH Date: 11/03/2013

How to "Refresh" Device Manager by programming

We are talking about: Device Manager->Action->Scan for hardware changesThe following CM APIs...

Author: Fred ZH Date: 11/03/2013

Error LNK2019: unresolved external symbol "char * __stdcall _com_util::ConvertBSTRToString(wchar_t *)"

Error 2 error LNK2019: unresolved external symbol "char * __stdcall...

Author: Fred ZH Date: 11/03/2013

How to get you NIC MAC address

Here is a good reference, Thanks...

Author: Fred ZH Date: 11/03/2013

Banned API in Windows

https://download.microsoft.com/download/2/e/b/2ebac853-63b7-49b4-b66f-9fd85f37c0f5/banned.h/****...

Author: Fred ZH Date: 11/03/2013

How To Get PCMCIA Socket Information

The sample code performs the following steps:Uses the IoGetDeviceObjectPointer function to obtain...

Author: Fred ZH Date: 11/03/2013

How To Get PCMCIA Socket Information

The sample code performs the following steps:Uses the IoGetDeviceObjectPointer function to obtain...

Author: Fred ZH Date: 11/03/2013

MDL

https://www.osronline.com/article.cfm?id=423An MDL is a structure that describes the fixed physical...

Author: Fred ZH Date: 11/03/2013

USB Port busy, or not?

How to detect USB Port status connected with a USB Flash drive? (working or idle). It seems no APIs...

Author: Fred ZH Date: 11/03/2013

WDF Logo Requirements Regarding Coinstallers

https://blogs.msdn.com/iliast/archive/2009/08/13/wdf-logo-requirements-regarding-coinstallers.aspxThe...

Author: Fred ZH Date: 11/03/2013

unsigned IM(passthru) driver cannot bind to newly installed NIC

  1. unsigned IM(passthru) driver cannot bind to newly installed NIC2. Uninstall a NIC in Device...

Author: Fred ZH Date: 11/03/2013

USB Event Tracking (ETW log in USB Core Stack)

Background:=========Event Tracing for Windows (ETW) In Windows 7, ETW provides an event logging...

Author: Fred ZH Date: 11/03/2013

Removal Policy for a Device

https://download.microsoft.com/download/1/6/1/161ba512-40e2-4cc9-843a-923143f3456c/Designing%20Hardwa...

Author: Fred ZH Date: 11/03/2013

How to make a partition on a RAW USB flash disk by programming?

Briefly, here are the steps:1. Use CreateFile to open PhysicalDriveX, that is the USB Flash disk2....

Author: Fred ZH Date: 11/03/2013

How to make a partition on a RAW USB flash disk by programming?

Briefly, here are the steps:1. Use CreateFile to open PhysicalDriveX, that is the USB Flash disk2....

Author: Fred ZH Date: 11/03/2013

How to setup to collect Memory Dump?

A kernel dump gets created every time a machine has a kernel fault. This dump gets stored in the...

Author: Fred ZH Date: 11/03/2013

Windows Hardware Certification Kit QFE...

Author: Fred ZH Date: 09/26/2013

Driver signature consideration for XP and Vista

HCK8.0 will retire on Nov. 30. But HCK8.1 doesn't support Vista and XP test, what should I do for XP...

Author: Fred ZH Date: 09/25/2013

No Guarded Mutex in Win8?

As the MSDN article “Fast Mutexes and Guarded Mutexes” says, Starting with Windows 8,...

Author: Fred ZH Date: 09/25/2013