Deploy to a Remotely Controlled Computer by Using an Answer File

Applies To: Windows 8, Windows 8.1, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2

A remotely controlled computer, or a headless computer, is a computer that doesn't have a monitor, a keyboard, or a mouse. Because remotely controlled computers must have a network connection, you must enable additional network configurations like ports in the firewall and remote desktop connections. This type of computer configuration must use an unattended installation. For more information about Windows® components and settings that you can add to an answer file, see the Unattended Windows Setup Reference.

In this topic:

  • To create an answer file for a remotely controlled computer

  • To configure the windowsPE settings

  • To configure the specialized settings

To create an answer file for a remotely controlled computer

  1. On your technician computer, open Windows System Image Manager (Windows SIM). Click Start, type Windows System Image Manager, and then select Windows System Image Manager.

  2. Create a new answer file, or update an existing answer file. For more information, see Create or Open an Answer File and Best Practices for Authoring Answer Files.

  3. Add the settings from the Automate Windows Setup topic to your answer file.

  4. In the following sample answer file, replace <-INSERT VALUE HERE-> 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="https://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="https://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="https://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="https://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="https://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="https://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <ComputerName>Headless</ComputerName>
            </component>
        </settings>
        </unattend>
    

To configure the windowsPE settings

  • Configure the Microsoft-Windows-Setup node by using this setting:
Component path Setting and value

Microsoft-Windows-Setup

EnableNetwork=false

Set this value to true if you're using a network share during an unattended installation.

To configure the specialized settings

  1. Configure the Microsoft-Windows-TerminalServices-LocalSessionManager component by using this setting:
Component path Setting and value

Microsoft-Windows-TerminalServices-LocalSessionManager

fDenyTSConnections=false

  1. Configure the Microsoft-Windows-TerminalServices-RDP-WinStationExtensions component by using this setting:
Component path Setting and value

Microsoft-Windows-TerminalServices-RDP-WinStationExtensions

UserAuthentication=0

  1. In the Answer File pane, right-click FirewallGroups, and then click Insert new Firewall Group.

  2. Configure the firewall group by using these settings:

Component path Setting and value

Networking-MPSSVC-Svc/FirewallGroups/FirewallGroup

Active=true

Group=Remote Desktop

Key=EnableRemoteDesktop

Profile=all

You're now ready to install your Windows image.

Note

If you run the Sysprep command together with the /generalize option on your Windows image, the installation may reset some settings that prevent UI pages from appearing. When the computer boots after the generalize process has finished, the installation might display the Out-Of-Box-Experience (OOBE) UI pages. To hide the UI pages during OOBE, use an answer file together with the Sysprep command. For more information, see Settings for Automating OOBE. For more information about how to use an answer file together with the Sysprep tool, see Sysprep Process Overview.

See Also

Tasks

Configure Windows Firewall with Advanced Security by Using an Answer File

Other Resources

Configure Network Settings in an Unattended Installation
Windows Deployment Options