Preview new draft of the WDK Automated Deployment Tools Quick Start Guide

Here is the latest draft of the WDK Automated Deployment Tools Quick Start Guide.  Please let me know what helps, what doesn't and what is still needed.  By the way, it will look better when it's in the kit, it is just too much work to fix the formatting to fit the needs of our blogging tools.

WDK Automated Deployment Tools
Quick Start Guide

ASI Setup

Setting up ASI is a two-step process. First you setup the server, and then you setup the clients. The server may be installed on any system as long as the clients can get to the shares on the server. However, most customers install the ASI server on the same system as their DTM controller.

When setting up the client you have two choices, manual setup or using the ASI Client Setup CD. If you plan to run ASI tasks from within the DTM we recommend using the ASI Client Setup CD.

Prerequisites and Assumptions

This guide assumes the following.

1. Your DTM controller is installed and working properly.

2. Your test systems have network connectivity to the system you’ll be installing the ASI controller on.

3. You have a solid understanding of basic server management tasks such as creating accounts, managing credentials, etc.

ASI Server Setup

1. Install the Microsoft .NET Framework; you can download it from here.

2. Insert the WDK CD.

3. Browse to the WDK Automated Deployment Tools directory.

4. Run AsiServer.msi. Use the defaults.

5. Ensure that file and printer sharing is enabled on your active network connection.

The AsiServer.msi created the following share on your server, Images, ASI and Drivers. Ensure that you can access these shares from your clients. Things such as the Windows Firewall and IPSec can prevent file sharing from working. The ASI server will not work if your clients cannot access these shares.

6. Copy the .NET Framework redistributable v 1.1 to %systemdrive%\asi\asiserver\asi\data\external\x86. You can download it from here.

7. Open Computer Management and set the password on the ASIUser account.

8. Open a cmd window and navigate to %systemdrive%\asi\asiserver\tools.

9. Add an ASI account to your server. Use the following command “asimaintenance –addcredentials \\%servername%\images asiuser <password> <servername>.

Note: This command adds the credentials for the ASIUser account to the server’s database. When a client attempts to access the Images share, the server will supply these credentials to the client and the client will use them to gain access. The format of this switch is –addcredentials <share> <username> <password> <domain>. In the step above I’ve assumed you’re using a local account on the server therefore the domain in the server name. Alternatively, if you don’t need the images share to be secure, you can make the images share available to the Everyone group.

10. On the server, browse to Asi\AsiServer\Images.

11. Copy the contents of any operating system CD you wish to deploy to this directory.

The WDK team suggests creating a directory structure under the images directory. Internally we use images\%OS%\%release%\%SKU%.

For example, if I wanted to deploy Windows XP Pro Service Pack 2 I would create the directory “images\WinXP\SP2\Pro” and copy the contents of the CD to that directory. Note that for i386 systems it is necessary to copy only the i386 directory, not the whole CD.

12. Add the builds you’ve placed in the images directory to the ASI database.

a. Open a console window and change to the Asi\AsiServer\Tools directory.

b. Execute the following command “findbuild –startpath %systemdrive%\Asi\AsiServer\Images.

Note: if you have devices in your lab which require drivers that are not on the Windows OS CD, you will also need to put those drivers on your server. Please see the Tips and Tricks section for details.

Client Setup

Manual Client Setup

The following steps will enable you to use the ASI server to manually start the automated install of an operating system on any client.

1. From the client, browse to the ASI client share, “%ServerName%\ASI\Client.

2. Run AsiClient.msi. Provide the name of your ASI Server and accept the default install path.

3. Use either the ASI GUI client, which is on the Start Menu under the ASI group or the ASI command line interface. Details on how to use these clients are in the ASI help documentation.

ASI Integrated with the Device Test Manager (DTM) via CD

The WDK team recommends that you use the bootable client setup CD to configure your client for integrated use of the DTM and ASI. The steps below will install a client for use with the DTM and ASI. If you prefer to setup the client manually, skip to the next section.

1. Download the ASI Client Setup CD ISO from the WDK download site (Where?).

2. Burn a CD and boot the client from the CD.

3. Provide the name of your ASI server.

4. Select the WTT option.

Note: you may be asked to provide credentials to validate the machine. Any account that is a member of the ASIUsers group on the ASI server may be used to complete this validation. The ASIUser user is added to the ASIUsers group by default.

5. Choose option #2 (advanced).

6. Choose yes to launch the GUI client.

7. Select your OS and validate that the path is valid; if the path is not valid you will see “build not found” at the bottom of the client.

If you see “build not found” it is because the ASI server does not have a build in its database which matches the parameters you’ve selected in the client. Change the parameters until a build is found. If you need to see what is in the database, use the following command on the server, “findbuild –startpath c:\asi\asiserver\images –updatebuilds.” This command will list the parameters that are being added to the database for each build on your server. Check each parameter against the parameters on the client until they all match.

8. Enter a machine name.

9. Enter the administrator password.

10. Choose two partitions; make sure each is large enough to install the OS you want installed.

11. Select the partition for your safe OS.

12. Provide your DTM controller name.

13. Provide credentials for an account which has access to %servername%\wttinstall.

14. Let the process complete. When it is done, the client will show up in the default system pool on your DTM controller. You may now schedule jobs on the system.

ASI Integrated with the Device Test Manager (DTM) Manually

Note: if you’ve chosen to setup the client manually I’m assuming you have a strong understanding of how to partition and format drives in addition to installing Windows.

1. Create two partitions on the system.

2. Install an OS on one partition.

3. Browse to the ASI share on your ASI server and run the AsiClient.msi.

4. Run the WTTPrep command. Open a command windows and type the following “asi –wttprep installto <drive>: wttcontroller <controllername>

This command installs the DTM client and registers the partition from which you’re currently booted as the install-from partition. All ASI OS installs initiated via DTM will be executed from the OS installed on this partition. It also registers the drive specified after the -installto switch as the test partition. All ASI OS installs initiated via DTM will be done on this partition.

ASI Tips and Tricks

Finding a Matching Build

ASI works by taking a set of parameters, provided by you through the client, and matching those parameters to the builds indexed in the server’s database. If the parameters you’ve provided do not match any of the builds on the server your ASI command will fail with a “build not found” error. If you’re using the GUI client you’ll see “build not found” in the status bar. From the command line you won’t see the error until you run the command.

Here’s a common command line, “asi –install –product longhorn.” If I don’t have a build of Longhorn on my server, this will fail. Here is one that will never work, “asi –install –product longhorn –build 2600.” Build 2600 of Windows is Windows XP, not Longhorn.

What can you do if you’re getting the “build not found” error? Run the findbuild tool and use the –UpadteBuilds switch. The output you see is the list of parameters which are being added to the database. Make sure the parameters you’re adding match the build you want to deploy.

Installing Additional Drivers

If you have devices in your lab which do not have drivers on the OS CDs you’re copying to your server, you’ll need to make those drivers available to your clients. Follow these steps to accomplish that.

1. Copy your drivers to the c:\asi\asiserver\drivers folder. Like the Images share you may wish to create a folder hierarchy under the Drivers folder.

2. When you run the ASI client, either via the boot CD, manually or via the DTM, add the following parameter “-adddriver \\%servername%\drivers”

Ximage Setup

Ximage requires that the Ximage tools be installed on any system you wish to create images from, restore images to or view and edit image on. You may install Ximage manually or, if you are installing on your test clients, use the job which is provided with the DTM. To mount images you need to install the filter driver on the system you will use to mount the images.


1. Browse to the \tools\Auotmated Deployment Tools directory on the WDK CD.

2. Copy these files to the \Windows\System32 directory.

a. Xmlrw.dll

b. Wimgapi.dll

c. Ximage.exe

3. For help using the Ximage command line, type Ximage /?

Via Job

1. Run the Ximage Install library job on each client you want to create images from or restore images to.

2. For help using the Ximage command line, type “Ximage /?.” The Ximage command line may be automated via a job.

Filter Driver

1. Browse to the \tools\Auotmated Deployment Tools directory on the WDK CD.

2. Copy these files to the \Windows\System32 directory.

a. Xmlrw.dll

b. Wimgapi.dll

c. Ximage.exe

d. Wimfltr.sys

e. Wimfltr.inf

3. In the System32 directory, right-click on the Wimfltr.inf file and select “install.”

Copyright © 2001-2005 Microsoft Corporation. All rights reserved.