A remotely controlled computer is a computer without a monitor, a keyboard, or a mouse (also called a headless computer). Because remotely controlled computers must be connected to a network, there are additional networking configurations that you must enable, such as enabling ports in the firewall and enabling remote desktop connections. Unattended installations are required for this type of computer configuration.

The instructions in this topic are for installing Windows Server® 2008 and Windows Server® 2008 R2. If you want to install a remotely controlled Windows® 7 or Windows Vista® computer, you must configure additional setting to prevent Windows® Welcome user interface pages from being displayed. For more information, see Automate Windows Welcome.

To create an answer file for a remotely controlled computer

  1. Create a new answer file or update your existing answer file.

    For more information about creating or updating an answer file, see Work with Answer Files in Windows SIM.

    If you are creating an answer file for a Unified Extensible Firmware Interface (UEFI)-based computer, you must create additional partitions in your answer file. For more information, see Create UEFI-based Hard-Disk Partitions by Using Windows SIM. You must also ensure that the firmware of your EFI-based computer is configured to boot to EFI mode, and not to BIOS mode. Consult your firmware documentation for more information.

  2. Add the following settings to your answer file in the listed configuration pass.

    Component Configuration pass

    Microsoft-Windows-International-Core-WinPE

    windowsPE

    Microsoft-Windows-Setup/DiskConfiguration

    windowsPE

    Microsoft-Windows-Setup/UserData

    windowsPE

    Microsoft-Windows-Setup/ImageInstall

    windowsPE

    Microsoft-Windows-Shell-Setup

    specialize

    Microsoft-Windows-TerminalServices-LocalSessionManager

    specialize

    Microsoft-Windows-TerminalServices-RDP-WinStationExtensions

    specialize

    Networking-MPSSVC-Svc/FirewallGroup

    specialize

    Microsoft-Windows-Shell-Setup/OOBE

    oobeSystem

    Microsoft-Windows-Shell-Setup/UserAccounts/AdministratorPassword

    oobeSystem

    Microsoft-Windows-International-Core

    oobeSystem

To configure the windowsPE settings

  1. Configure the language setting in the Microsoft-Windows-International-Core-WinPE component.

    Component path Setting and value

    Microsoft-Windows-International-Core-WinPE/SetupUILanguage

    UILanguage= language

    Microsoft-Windows-International-Core-WinPE

    UILanguage= language

  2. Configure the Microsoft-Windows-Setup node with the following setting.

    Component path Setting and value

    Microsoft-Windows-Setup

    EnableNetwork=false

    Set this value to True if you are using a network share during unattended installation.

  3. Configure the disk partitions by using the Microsoft-Windows-Setup component. Right-click DiskConfiguration, and then select Insert New Disk.

  4. In the DiskConfiguration node, right-click CreatePartitions, and then select Insert new CreatePartition. Repeat this step to create a second CreatePartition setting.

  5. In the DiskConfiguration node, right-click ModifyPartitions, and then select Insert new ModifyPartition. Repeat this step to create a second ModifyPartition setting.

  6. Configure the Microsoft-Windows-Setup/DiskConfiguration node with the following settings.

    Component path Setting and value

    Microsoft-Windows-Setup/DiskConfiguration/Disk

    WillWipeDisk=true

    DiskID=0

    Modify these values if you are deploying to a different hard disk configuration.

    Microsoft-Windows-Setup/DiskConfiguration/Disk/CreatePartitions/CreatePartition

    Extend=false Order=1

    Size=300

    Type=Primary

    Modify these values if you are deploying to a different hard disk configuration.

    Microsoft-Windows-Setup/DiskConfiguration/Disk/CreatePartitions/CreatePartition

    Order=2

    Extend=true

    Type=Primary

    Modify these values if you are deploying to a different hard disk configuration.

    Microsoft-Windows-Setup/DiskConfiguration/Disk/ModifyPartitions/ModifyPartition

    Active=true

    Extend=false

    Format=NTFS

    Label=System

    Order=1

    PartitionID=1

    TypeID=0x27

    Modify these values if you are deploying to a different hard disk configuration.

    Microsoft-Windows-Setup/DiskConfiguration/Disk/ModifyPartitions/ModifyPartition

    Extend=false Format=NTFS

    Label=Windows

    Letter=C

    Order=2

    PartitionID=2

    TypeID=0x7

    Modify these values if you are deploying to a different hard disk configuration.

    Note:

    If you are creating an answer file for a Unified Extensible Firmware Interface (UEFI)-based computer, you must configure different partition types in your answer file. For more information, see Create UEFI-based Hard-Disk Partitions by Using Windows SIM.

  7. In the Microsoft-Windows-Setup component, expand the ImageInstall node, and then expand the OSImage node.

  8. Configure the Microsoft-Windows-Setup/ImageInstall/OSImage node with the following settings.

    Component path Setting and value

    Microsoft-Windows-Setup/ImageInstall/OSImage/InstallTo

    DiskID= disk

    PartitionID= partition

  9. Right-click InstallFrom, and then select Insert New MetaData.

  10. Configure the Microsoft-Windows-Setup/ImageInstall/OSImage/InstallFrom/MetaData node with the following settings.

    Component path Setting and value

    Microsoft-Windows-Setup/ImageInstall/OSImage/InstallFrom/MetaData

    Key= image metadata identifier

    Value= image metadata value

    For example,

    Key=/IMAGE/INDEX

    Value=2

  11. Configure the Microsoft-Windows-Setup/UserData node with the following settings.

    Component path Setting and value

    Microsoft-Windows-Setup/UserData/ProductKey

    ProductKey/Key= product_key

    ProductKey/WillShowUI=Never

    Microsoft-Windows-Setup/UserData

    AcceptEula=true

To configure the specialize settings

  1. Configure Microsoft-Windows-Shell-Setup with the following settings.

    Component path Setting and value

    Microsoft-Windows-Shell-Setup

    ComputerName= computername

  2. Configure the Microsoft-Windows-TerminalServices-LocalSessionManager component with the following settings.

    Component path Setting and value

    Microsoft-Windows-TerminalServices-LocalSessionManager

    fDenyTSConnections=false

  3. Configure the Microsoft-Windows-TerminalServices-RDP-WinStationExtensions component with the following settings.

    Component path Setting and value

    Microsoft-Windows-TerminalServices-RDP-WinStationExtensions

    UserAuthentication=0

  4. In the answer file pane, right-click FirewallGroups, and then select Insert new Firewall Group.

  5. Configure the Firewall Group with the following settings.

    Component path Setting and value

    Networking-MPSSVC-Svc/FirewallGroups/FirewallGroup

    Active=true

    Group=Remote Desktop

    Key=EnableRemoteDesktop

    Profile=all

To configure the oobeSystem settings

  1. Configure Microsoft-Windows-Shell-Setup with the following settings.

    Component path Setting and value

    Microsoft-Windows-Shell-Setup/UserAccounts/AdministratorPassword

    Value= password

    Microsoft-Windows-Shell-Setup/OOBE

    HideEULAPage=true

  2. Configure Microsoft-Windows-International-Core with the following settings.

    Component path Setting and value

    Microsoft-Windows-International-Core

    InputLocale= language

    SystemLocale= language

    UILanguage= language

    UserLocale= language

You are now ready to install your Windows image.

Note:

If you run the Sysprep command with the /generalize option on your Windows image, some settings that are required to prevent user interface pages from displaying might be reset. When the computer boots after the generalize process, the installation might display Windows Welcome user interface pages. To prevent the user interface pages from displaying, use an answer file with the Sysprep command to hide the user interface pages during Windows Welcome. For more information, see Automate Windows Welcome. For more information about using an answer file with the Sysprep tool, see How Sysprep Works.

Sample Answer File

A sample answer file is provided below. In some cases, settings configured with -INSERT VALUE HERE- need to be completed with your specific values.

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
	<settings pass="windowsPE">
		<component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
			<ImageInstall>
				<OSImage>
					<InstallTo>
						<DiskID>0</DiskID>
						<PartitionID>2</PartitionID>
					</InstallTo>
					<InstallFrom>
						<MetaData wcm:action="add">
							<Key>/IMAGE/INDEX</Key>
							<Value>-INSERT VALUE HERE-</Value>
						</MetaData>
					</InstallFrom>
				</OSImage>
			</ImageInstall>
			<UserData>
				<ProductKey>
					<Key>-INSERT VALUE HERE-</Key>
					<WillShowUI>OnError</WillShowUI>
				</ProductKey>
				<AcceptEula>true</AcceptEula>
			</UserData>
			<DiskConfiguration>
				<Disk wcm:action="add">
					<CreatePartitions>
						<CreatePartition wcm:action="add">
							<Extend>false</Extend>
							<Order>1</Order>
							<Size>300</Size>
							<Type>Primary</Type>
						</CreatePartition>
						<CreatePartition wcm:action="add">
							<Order>2</Order>
							<Extend>true</Extend>
							<Type>Primary</Type>
						</CreatePartition>
					</CreatePartitions>
					<ModifyPartitions>
						<ModifyPartition wcm:action="add">
							<Active>true</Active>
							<Extend>false</Extend>
							<Format>NTFS</Format>
							<Label>System</Label>
							<Order>1</Order>
							<PartitionID>1</PartitionID>
							<TypeID>0x27</TypeID>
						</ModifyPartition>
						<ModifyPartition wcm:action="add">
							<Extend>false</Extend>
							<Format>NTFS</Format>
							<Label>Windows</Label>
							<Letter>C</Letter>
							<Order>2</Order>
							<PartitionID>2</PartitionID>
							<TypeID>0x7</TypeID>
						</ModifyPartition>
					</ModifyPartitions>
					<DiskID>0</DiskID>
					<WillWipeDisk>true</WillWipeDisk>
				</Disk>
			</DiskConfiguration>
		</component>
		<component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
			<SetupUILanguage>
				<UILanguage>en-us</UILanguage>
			</SetupUILanguage>
			<InputLocale>en-us</InputLocale>
			<UILanguage>en-us</UILanguage>
			<UILanguageFallback>en-us</UILanguageFallback>
			<UserLocale>en-us</UserLocale>
		</component>
	</settings>
	<settings pass="oobeSystem">
		<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
			<OOBE>
				<HideEULAPage>true</HideEULAPage>
			</OOBE>
			<AutoLogon>
				<Password>
					<Value>-INSERT VALUE HERE-</Value>
					<PlainText>true</PlainText>
				</Password>
				<LogonCount>9</LogonCount>
				<Username>Administrator</Username>
				<Enabled>true</Enabled>
			</AutoLogon>
			<UserAccounts>
				<AdministratorPassword>
					<Value>-INSERT VALUE HERE-</Value>
					<PlainText>true</PlainText>
				</AdministratorPassword>
			</UserAccounts>
		</component>
	</settings>
	<settings pass="specialize">
		<component name="Microsoft-Windows-TerminalServices-LocalSessionManager" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
			<fDenyTSConnections>false</fDenyTSConnections>
		</component>
		<component name="Networking-MPSSVC-Svc" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
			<FirewallGroups>
				<FirewallGroup wcm:action="add" wcm:keyValue="EnableRemoteDesktop">
					<Active>true</Active>
					<Group>Remote Desktop</Group>
					<Profile>all</Profile>
				</FirewallGroup>
			</FirewallGroups>
		</component>
		<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
			<ComputerName>Headless</ComputerName>
		</component>
	</settings>
	</unattend>

See Also