Preparing a Computer for Provisioning (WDK 8.1)
Using Microsoft Visual Studio to configure and set up driver deployment and driver testing is called provisioning a target computer or provisioning a test computer. For information about provisioning, see Configuring a Computer for Driver Deployment, Testing, and Debugging. Here we explain how to prepare a target computer for provisioning if you are using version 8.1 of the Windows Driver Kit (WDK).
On the target computer, install the operating system that you want to use to run and test your driver. If the host computer is joined to a network domain, join the target computer to the same domain. If the host computer is joined to a workgroup, join the target computer to the same workgroup.
Note The host and target computers can be joined to different domains as long as the host computer can ping the target computer by name.
If Secure Boot is enabled on an x86 or x64 target computer, disable it. For information about Unified Extensible Firmware Interface (UEFI) and Secure Boot, see UEFI Firmware.
If the target computer uses an ARM processor, install the Windows Debug Policy. This can be done only by Microsoft or the manufacturer of the target computer. You do not need to disable Secure Boot.
On the target computer, run the WDK Test Target Setup MSI that matches the platform of the target computer. You can find the MSI in the WDK installation directory under Remote.
Example: C:\Program Files (x86)\Windows Kits\8.1\Remote\x64\WDK Test Target Setup x64-x64_en-us.msi
If the target computer is running an N or KN version of Windows, install the Media Feature Pack for N and KN versions of Windows.
- If your target computer is running Windows Server, locate the DriverTest folder that was just created by WDK Test Target Setup MSI. (Example: c:\DriverTest). Right click the DriverTest folder, and choose Properties. On the Security tab, give Modify permission to the Authenticated Users group.
Verify that the host and target computers can ping each other. Open a Command Prompt window, and enter ping ComputerName.
If the host and target computers are joined to a workgroup and the two computers are on different subnets, you might have to adjust some firewall settings so that the host and target computers can communicate. Follow these steps:
- On the target computer, in Control Panel, navigate to Network and Internet > Network Sharing Center. Note your active network. This will be either Public network or Private network.
- On the target computer, in Control Panel, navigate to System and Security > Windows Firewall > Advanced settings > Inbound Rules.
- In the list of inbound rules, locate all Network Discovery rules for your active network. (Example: Locate all Network Discovery rules that have a Profile of Private.) For each of those rules, double click the rule, and open the Scope tab. Under Remote IP address, select Any IP address.
- In the list of inbound rules, locate all File and Printer Sharing rules for your active network. For each of those rules, double click the rule, and open the Scope tab. Under Remote IP address, select Any IP address.
The WDK Test Target Setup MSI performs these actions:
- Installs the driver test service to execute tests remotely
Disables Remote User Access Control (UAC) by setting the value of this registry entry to 0.
- Enables File and Printer Sharing and Network Discovery
- (ARM only) Sets the Lanmanserver service to start automatically and starts the service.
To uninstall WDK Test Target Setup, go to Control Panel > Programs > Uninstall a program. As an alternative to using Control Panel, you can right click WDK Test Target Setup PlatformLocale.msi, and choose Uninstall.
Example: Right click WDK Test Target Setup x64-x64_en-us.msi, and choose Uninstall.
Uninstalling WDK Test Target Setup performs this action:
- Uninstalls the driver test service
Uninstalling WDK Test Target Setup does not change these:
- Remote UAC settings
- File and Printer Sharing settings
- Network discovery settings
- Lanmanserver service start type
This video demonstrates how to provision a remote computer as a target for driver deployment, testing, and debugging.