3. Daynix Computing
LTD
Introduction to HCK
The HCK is a device/system test toolkit by
Microsoft.
Devices which pass HCK are certified, and their
binaries are digitally signed.
It has predefined test suites for each device
type.
And an ability to add your own tests, outside of
the certification process.
3
4. Daynix Computing
LTD
Introduction to HCK - Setup
The HCK requires a server (“HCK Studio”)
machine, and at least one client.
For testing some devices (such as network
adapters) at least two clients are required.
The server requires at least 1 GB of RAM, and
the clients may require up to 4 GB of RAM, and
up to 4 CPU cores, depending on the system
and on the device tested.
4
7. Daynix Computing
LTD
Setup of HCK Studio -
preparations
A freshly installed copy of Windows® is assumed.
1.Set a static IP address (e.g. 192.168.100.1).
a) This is done in Control Panel → View
network status and tasks → Change adapter
settings.
b) Optionally, set a static IPv6 address as well.
7
9. Daynix Computing
LTD
Setup of HCK Studio -
preparations
2. Disable the firewall.
o In Control Panel → Windows Firewall →
Turn Windows Firewall on or off, turn the
firewall off, for all networks.
9
11. Daynix Computing
LTD
Setup of HCK Studio -
preparations
3. Set the network connections to “Private”.
a) Run “secpol.msc”.
b) Under Network List Manager Policies, edit
the properties of the networks, to set them
to the “Private” location type.
11
13. Daynix Computing
LTD
Setup of HCK Studio -
preparations
4. Disable Windows Update.
o Under Control Panel → Windows Update →
Turn automatic updating on or off, disable
the automatic updates by choosing the
“Never check for updates (not
recommended)” option in the drop-down
menu.
13
15. Daynix Computing
LTD
Setup of HCK Studio -
preparations
5. Disable the screen saver, screen blanking, and
auto-locking, if any enabled.
6. And finally, change the computer network name,
to be recognized as the HCK Studio server.
a) In Control Panel → System and Security →
System, change the computer name (to e.g.
HCK-STUDIO)
b) This will require a reboot.
15
17. Daynix Computing
LTD
Setup of HCK Studio
1. Download the HCK Studio setup program
(HCKSetup.exe).
o This can be done on any computer.
o If the intended HCK Studio machine has no access
to the Internet, download HCKSetup.exe to a
different machine, run it there, and choose the option
to download for installation on a separate computer.
17
18. Daynix Computing
LTD
Setup of HCK Studio
2. If the installation files were downloaded to a separate
computer, transfer them to the intended machine, and
start the installation.
3. When prompted, choose to install Controller + Studio,
and choose “Yes” when asked to allow a port to be
opened.
4. Go over the license agreement, and accept it to continue.
18
20. Daynix Computing
LTD
Setup of HCK Studio
5. Download and install the HCK filters.
a) Extract UpdateFilters.sql from the downloaded
HCKFilterUpdates.cab file.
b) Move UpdateFilters.sql to: C:Program Files (x86)Windows
Kits<version>Hardware Certification KitController
c) Close all instances of HCK Studio (if open).
d) In the directory mentioned above, run the
updatefilters.exe command.
20
21. Daynix Computing
LTD
Setup of HCK Clients –
Preparations (very similar to the server!)
1. Set a distinct static IP address for each client.
2. Disable the firewall.
3. Set the network connections to “Private”.
4. Disable Windows Update.
5. Disable screen server, auto-locking, etc.
6. Set a distinct name for each client.
21
22. Daynix Computing
LTD
Setup of HCK Clients
Make sure that the tested driver is installed
properly before installing the HCK Client!
1.The HCK Client installation is available on the
server, after installing the HCK Studio + Controller
there. Start it by executing:
<server name>HCKInstallClientSetup.exe
(<server name> is the computer name that you
gave to the server earlier, HCK-STUDIO, for
example.)
22
23. Daynix Computing
LTD
Setup of HCK Clients
2. The installation process will take some time.
Installation on the other clients (if there is more
than one) can be performed in parallel.
23
24. Daynix Computing
LTD
Running the Tests
1. Start the HCK Studio, go to Configuration.
2. You should see the connected client machines in
the Default Pool.
3. Create a new machine pool, using the appropriate
option.
4. Drag the needed machines from the Default Pool
to the newly created one.
5. Change their status to “Ready”, using the right
mouse button menu.
24
26. Daynix Computing
LTD
Running the Tests
6. Go back to the initial screen (large gray arrow,
top left: ).
7. Create a new project, and name it.
26
27. Daynix Computing
LTD
Running the Tests
8. Go to Selection, and choose the new machine pool
from the menu.
9. In the menu to the left choose device manager, and
select the devices for testing.
27
28. Daynix Computing
LTD
Running the Tests
10. Go to Tests, select the desired procedures, and
run them by clicking Run Selected.
Note, that some
tests require
manual
intervention, or
special
configuration.
1
3
2
28
29. Daynix Computing
LTD
Running the Tests
11. After the tests are over, results and logs can be
reviewed in the Results section.
12. To save the results, go to the Package section,
and click Create Package near the bottom of
the window.
13. Signing Options prompt will appear. You can
choose a certificate file to sign the results, or
leave the Do not sign option.
14. Saving the results might take some time. In the
end, you will get the output as an .hckx file.
29
31. Daynix Computing
LTD
Additional Utilities
Tests can be run in a virtual machine setup. See
our VirtHCK (OSS) for details:
http://www.slideshare.net/YanVugenfirer/virt-hck-kvmforum2013
https://github.com/daynix/bricklets/tree/master/VirtHCK
Tests can be run using an automated script. See:
https://github.com/daynix/bricklets/tree/master/VirtHCK/guest_tools/AutoHCK
More automation is on the way.
31