Preview: New draft of the WDK ADT Quick Start Guide

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 WDK customers install the ASI server on the same system as their DTM controller. 

 

 

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.

4. You have a solid understanding of Windows setup including partitioning and formatting drives.

ASI Server Setup

1.      Insert the WDK DVD; If the WDK Installer does not start automatically run Installer.exe from the root of the DVD.

2. Install the .NET Framework.

3. Install the ASI server. Use the defaults.

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

 

The AsiServer.msi created the following share on your server, Asi and AsiCache,. 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 redistributables to your ASI server.

The WDK DVD has the .NET Framework redistributables in the net2.0 folder. Copy the files in each subdirectory to the matching subdirectory on your server under %systemdrive%\asi\asiserver\data\external. For example, copy the dotnetfx.exe file from the DVD’s net2.0\x86 directory to you server’s %systemdrive%\asi\asiserver\data\external\x86 directory.

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 name is 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 %systemdrive%\Asi\AsiServer\AsiCache.

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 “AsiCache\WinXP\SP2\Pro” and copy the contents of the CD to that directory. 

 

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

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

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

 

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)

 

1.      Create two partitions on the system. One partition needs to be large enough to host the Os you’ll install in step two below. The other partition needs to be large enough to host the OS you want to test and any other software that needs to be installed for your testing.

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.

 

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. Change your command line or parameters in the GUI client to match one of the builds in your database.

 

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 %systemdrive%\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 must install Ximage manually To mount images you need to install the filter driver on the system you will use to mount the images.

Manual

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

2.      Browse to the directory which matches the architecture of your system. 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 /?

Filter Driver

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

2.      Browse to the directory which matches the architecture of your system. 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.

Comments

  • Anonymous
    January 24, 2006
    Will the WIMGAPI be available to ISV:s?

    Is the API already included in the Vista Platform SDK (December CTP)?

    I've tried to find the definition for WIMLoadImage, but failed.