none
Access Tools folder from WinPE

    Question

  • On an offline deployment, if I add the executable to the tools folder then how can I execute it from WinPE knowing the drive letter is subject to change. I'm looking for the path to specify for the "start in" location option. 

    Does the tools folder get copied to the virtual X: drive?

    Saturday, March 10, 2012 10:55 PM

Answers

  • In the "extra directory to add" you can create a folder structure.

    For example if I would like to add folder D:\MDTStuff\x86. Inside this folder I can have structure
    .\Windows\System32
    .\Deploy\Tools\x86

    This would match WinPE structure nicely.

    WinPE boot drive is always X: (or environment variable %SystemDrive%)

    I don't know how to access the connected deployment share drive unless you are using VBScript or Powershell. If you are using vbscript or powershell you should look for the MDT environment variable DeployRoot. The bdd.log will show some interesting variabels. Perhaps you can find what you are looking for in there.

    If you are using a batch file you can use
    if exist Z:\Control\CustomSettings.ini set Deploydrive=Z:
    if exist Y:\Control\CustomSettings.ini set Deploydrive=Y:
    if exist V:\Control\CustomSettings.ini set Deploydrive=V:

    • Marked as answer by lunarpowered Monday, March 12, 2012 12:34 PM
    Monday, March 12, 2012 8:58 AM

All replies

  • If you would like to add files to WinPE you do this best with in MDT workbench.

    On the share, select properties. Then go to the Windows Pe x86 Settings and click browse for folder to add. You also need to do this on the Windows Pe x64 tab if you have a x64 WinPE.

    Sunday, March 11, 2012 12:13 PM
  • I'm attempting to get the McAfee Encryption Refresh Tool to work properly.

    I should have stated I would need to access the executable both in and out of the WinPE environment. My main problem is I'm not sure what to specify for the start in path.

    Sunday, March 11, 2012 11:38 PM
  • In the "extra directory to add" you can create a folder structure.

    For example if I would like to add folder D:\MDTStuff\x86. Inside this folder I can have structure
    .\Windows\System32
    .\Deploy\Tools\x86

    This would match WinPE structure nicely.

    WinPE boot drive is always X: (or environment variable %SystemDrive%)

    I don't know how to access the connected deployment share drive unless you are using VBScript or Powershell. If you are using vbscript or powershell you should look for the MDT environment variable DeployRoot. The bdd.log will show some interesting variabels. Perhaps you can find what you are looking for in there.

    If you are using a batch file you can use
    if exist Z:\Control\CustomSettings.ini set Deploydrive=Z:
    if exist Y:\Control\CustomSettings.ini set Deploydrive=Y:
    if exist V:\Control\CustomSettings.ini set Deploydrive=V:

    • Marked as answer by lunarpowered Monday, March 12, 2012 12:34 PM
    Monday, March 12, 2012 8:58 AM
  • This document spells it out pretty well:

    https://kc.mcafee.com/resources/sites/MCAFEE/content/live/PRODUCT_DOCUMENTATION/23000/PD23237/en_US/McAfeeEE5x_WindowsOSRefres_v1_1.pdf

    There is another for the 6.x procedure:

    https://kc.mcafee.com/resources/sites/MCAFEE/content/live/PRODUCT_DOCUMENTATION/23000/PD23245/en_US/McAfeeEE6x_WindowsOSRefresh_v1_1.pdf

    Tuesday, March 13, 2012 10:50 PM
  • Hi

     

    Please can you explain in detail as am trying to make to refresh systems from XP to WIndows 7 using SCCM 2007 with all systems encrypted with McAfee EEPC and when trying to wipe and load the OS its throwing up the access denied error at every stage.

     

    I have followed the steps as of the document below to load the drivers in WinpE http://kc.mcafee.com/resources/sites/MCAFEE/content/live/PRODUCT_DOCUMENTATION/23000/PD23245/en_US/McAfeeEE6x_WindowsOSRefresh_v1_1.pdf

     

    Iam able to get to point where its applying the OS but errors

     

    WIM error:C:\Windows\winsxs\amd64_microsoft-windows-d..lient-adm.resources_31bf3856 ad364e35_6.1.7600.16385_en-us_936c40cbff4a0ef1. Permissions on the requested may be configured incorrectly.


    Failed to run the last action: Apply Operating System. Execution of task sequence failed.

     

    Is the documentation correct on adding drivers and registry to WinPE, without the drivers in WinPE the disk is not accesible as I tried to load a clean WinPE to see if that is going to work but it is not able to access the C: drive as its encrypted.

     

    Any suggestions?

     

    Thanks!

    Monday, May 27, 2013 2:53 AM
  • Attaching my (edited) TS.xml. We had trouble with systems that were once encrypted, but decrypted, being re-encrypted, so we changed our detection process to look for a regisgtry key.  We have a pretty extensive preflight script checking for requirements.

    We search for "STATE=ENCRYP" because the reg key value has a typo where it shows up as Encryped. Assuming they will fix that some day.  If we find it, we set EpeStatus = True. then all the other tasks are performed if EpeStatus = True

    This is the function from my preflight check wsf file that checks the registry for the Safeboot enryption status key:

    'Checking encryption status
    oLogging.CreateEntry "==========================================", LogTypeInfo
    oLogging.CreateEntry "Beginning Safeboot encryption Registry key checks", LogTypeInfo
    
    If UCase(oEnvironment.Item("Architecture")) = "X64" Then
     	strSafebootRegValue = "HKLM\SOFTWARE\Wow6432Node\McAfee EndPoint Encryption\MfeEpePC\Status\CryptState"
    Else
    strSafebootRegValue = "HKLM\SOFTWARE\McAfee EndPoint Encryption\MfeEpePC\Status\CryptState"
    End If
    
    	oLogging.CreateEntry "Current OS is detected as " & oEnvironment.Item("Architecture"), LogTypeInfo
    oLogging.CreateEntry "Reading value at " & strSafebootRegValue, LogTypeInfo
    
    If RegistryValueExists(strSafebootRegValue) Then 
    	strSafebootRegData = oShell.RegRead(strSafebootRegValue)
    	oLogging.CreateEntry strOutlookRegValue & " value = " &  strSafebootRegData, LogTypeInfo
    	If InStr( UCASE(strSafebootRegData), "STATE=ENCRYP" ) Then
    		oLogging.CreateEntry "Setting Safeboot Epe Task Sequence variable to True", LogTypeInfo
    		oEnvironment.Item("EpeStatus") = True
    	Else
    		oLogging.CreateEntry "Setting Safeboot Epe Task Sequence variable to False", LogTypeInfo
    		oEnvironment.Item("EpeStatus") = False
    	End If
    	
    Else
      	oLogging.CreateEntry "Safeboot Reg Value does not exist", LogTypeWarning
      	oEnvironment.Item("EpeStatus") = False
    End If

    • Edited by JoeZeppy Wednesday, May 29, 2013 3:35 PM
    Wednesday, May 29, 2013 3:04 PM
  • Part one of TS, its too big to upload. Part two is in the next post. I removed some capture image tasks to get the character count down.

    Save the two sections together as ts.xml. Create a dummy x86 deploy TS named Mcafee. Then go to the Control\Mcafee folder and replace the ts.xml file with this one. Then you can view it and see what is happening.

    <?xml version="1.0" encoding="utf-8"?>
    <sequence version="3.00" name="Standard Client Task Sequence" description="A complete task sequence for deploying a client operating system">
      <globalVarList>
        <variable name="OSGUID" property="OSGUID">{f2b0a673-b0bd-4e4e-9dc1-01002361e49c}</variable>
        <variable name="DestinationDisk" property="DestinationDisk">0</variable>
        <variable name="DestinationPartition" property="DestinationPartition">1</variable>
      </globalVarList>
      <group name="Initialization" disable="false" continueOnError="false" description="Initialize the TS environment" expand="true">
        <step type="SMS_TaskSequence_RunCommandLineAction" name="Run PreFlightCheck" description="" disable="false" continueOnError="false" startIn="" successCodeList="0 3010" runIn="WinPEandFullOS">
          <defaultVarList>
            <variable name="PackageID" property="PackageID"></variable>
            <variable name="RunAsUser" property="RunAsUser">false</variable>
            <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
            <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
            <variable name="LoadProfile" property="LoadProfile">false</variable>
          </defaultVarList>
          <action>cscript.exe "%SCRIPTROOT%\ZTI_PreflightCheck.wsf"</action>
        </step>
        <step type="BDD_Gather" name="Gather local only" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
          <defaultVarList>
            <variable name="GatherLocalOnly" property="GatherLocalOnly">true</variable>
            <variable name="RulesFile" property="RulesFile"></variable>
          </defaultVarList>
          <action>cscript.exe "%SCRIPTROOT%\ZTIGather.wsf"</action>
    
        </step>
      </group>
      <group name="Validation" disable="false" continueOnError="false" description="Test" expand="true">
        <condition>
          <operator type="or">
            <expression type="SMS_TaskSequence_VariableConditionExpression">
              <variable name="Variable">PHASE</variable>
              <variable name="Operator">equals</variable>
              <variable name="Value">VALIDATION</variable>
            </expression>
          </operator>
        </condition>
        <step type="BDD_Validate" name="Validate" successCodeList="0 3010" description="" startIn="" disable="false" continueOnError="false">
          <defaultVarList>
            <variable name="ImageSize" property="ImageSize">0</variable>
            <variable name="ImageProcessorSpeed" property="ImageProcessorSpeed">1499</variable>
            <variable name="ImageMemory" property="ImageMemory">1000</variable>
            <variable name="VerifyOS" property="VerifyOS">CLIENT</variable>
          </defaultVarList>
          <action>cscript.exe "%SCRIPTROOT%\ZTIValidate.wsf"</action>
        </step>
        <step name="Check BIOS" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
          <action>cscript.exe "%SCRIPTROOT%\ZTIBIOSCheck.wsf"</action>
          <defaultVarList>
            <variable name="RunAsUser" property="RunAsUser">false</variable>
            <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
            <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
            <variable name="LoadProfile" property="LoadProfile">false</variable>
          </defaultVarList>
        </step>
        <step name="Next Phase" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
          <action>cscript.exe "%SCRIPTROOT%\ZTINextPhase.wsf"</action>
          <defaultVarList>
            <variable name="RunAsUser" property="RunAsUser">false</variable>
            <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
            <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
            <variable name="LoadProfile" property="LoadProfile">false</variable>
          </defaultVarList>
        </step>
      </group>
      <group name="State Capture" description="" disable="false" continueOnError="false" expand="true">
        <condition>
          <expression type="SMS_TaskSequence_VariableConditionExpression">
            <variable name="Variable">PHASE</variable>
            <variable name="Operator">equals</variable>
            <variable name="Value">STATECAPTURE</variable>
          </expression>
        </condition>
        <group expand="false" name="McAfee 6.x Prep" description="" disable="false" continueOnError="false">
          <step type="SMS_TaskSequence_RunCommandLineAction" name="Autoboot  &quot;--number-of-reboots 10&quot;" description="" disable="false" continueOnError="false" startIn="" successCodeList="0 3010" runIn="WinPEandFullOS">
            <defaultVarList>
              <variable name="PackageID" property="PackageID" />
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
            <action>cscript "%SCRIPTROOT%\ZTIEpeAutoboot.wsf" "--number-of-reboots 10"</action>
          </step>
          <step type="SMS_TaskSequence_RunCommandLineAction" name="Shutdown EPE Host Service" description="" disable="false" continueOnError="false" startIn="" successCodeList="0 3010" runIn="WinPEandFullOS">
            <defaultVarList>
              <variable name="PackageID" property="PackageID" />
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
            <action>sc stop "McAfee Endpoint Encryption Agent"</action>
          </step>
          <action />
          <step type="SMS_TaskSequence_RunCommandLineAction" name="Store EPE MBR" description="" disable="false" continueOnError="false" startIn="%DEPLOYROOT%\Tools\%ARCHITECTURE%" successCodeList="0 3010" runIn="WinPEandFullOS">
            <defaultVarList>
              <variable name="PackageID" property="PackageID" />
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
            <action>EpeWinUpgradeTool.exe -SaveMbr c:\EpeMbr.dat</action>
          </step>
          <step type="SMS_TaskSequence_RunCommandLineAction" name="Unlock EPE Files" description="" disable="false" continueOnError="false" startIn="%DEPLOYROOT%\Tools\%ARCHITECTURE%" successCodeList="0 3010" runIn="WinPEandFullOS">
            <defaultVarList>
              <variable name="PackageID" property="PackageID" />
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
            <action>EpeWinUpgradeTool.exe -SetFileLocks Unlock</action>
          </step>
          <step type="SMS_TaskSequence_RunCommandLineAction" name="Unhide Epe Files" description="" disable="false" continueOnError="false" startIn="C:\" successCodeList="0 3010" runIn="WinPEandFullOS">
            <defaultVarList>
              <variable name="PackageID" property="PackageID" />
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
            <action>attrib -r -s -h C:\safeboot.*</action>
          </step>
          <condition>
            <expression type="SMS_TaskSequence_VariableConditionExpression">
              <variable name="Variable">EpeStatus</variable>
              <variable name="Operator">equals</variable>
              <variable name="Value">True</variable>
            </expression>
          </condition>
        </group>
        <group name="Non-Upgrade" disable="false" continueOnError="false" description="" expand="false">
          <step type="SMS_TaskSequence_RunCommandLineAction" name="Generate Application Migration File" description="" disable="false" continueOnError="false" successCodeList="0 3010" runIn="WinPEandFullOS" startIn="">
            <defaultVarList>
              <variable name="PackageID" property="PackageID"></variable>
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
            <action>cscript.exe "%SCRIPTROOT%\ZTIAppXmlGen.wsf" /capture</action>
          </step>
          <step name="Capture User State" successCodeList="0 3010" description="" startIn="" disable="false" continueOnError="false">
            <action>cscript.exe "%SCRIPTROOT%\ZTIUserState.wsf" /capture</action>
            <defaultVarList>
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
          </step>
          <condition>
            <expression type="SMS_TaskSequence_VariableConditionExpression">
              <variable name="Variable">DeploymentType</variable>
              <variable name="Operator">notEquals</variable>
              <variable name="Value">UPGRADE</variable>
            </expression>
          </condition>
          <step name="Capture Groups" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
            <action>cscript.exe "%SCRIPTROOT%\ZTIGroups.wsf" /capture</action>
            <defaultVarList>
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
          </step>
        </group>
        <group name="Refresh only" disable="false" continueOnError="false" description="" expand="false">
          <condition>
            <expression type="SMS_TaskSequence_VariableConditionExpression">
              <variable name="Variable">DeploymentType</variable>
              <variable name="Operator">equals</variable>
              <variable name="Value">REFRESH</variable>
            </expression>
          </condition>
          <step type="SMS_TaskSequence_RunCommandLineAction" name="Disable BDE Protectors" description="" disable="false" continueOnError="false" startIn="" successCodeList="0 3010" runIn="WinPEandFullOS">
            <defaultVarList>
              <variable name="PackageID" property="PackageID"></variable>
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
            <action>cscript.exe "%SCRIPTROOT%\ZTIDisableBDEProtectors.wsf"</action>
          </step>
          <step name="Apply Windows PE" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
            <action>cscript.exe "%SCRIPTROOT%\LTIApply.wsf" /PE</action>
            <defaultVarList>
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
          </step>
        </group>
        <step name="Next Phase" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
          <action>cscript.exe "%SCRIPTROOT%\ZTINextPhase.wsf"</action>
          <defaultVarList>
            <variable name="RunAsUser" property="RunAsUser">false</variable>
            <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
            <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
            <variable name="LoadProfile" property="LoadProfile">false</variable>
          </defaultVarList>
        </step>
        <group name="Refresh only" disable="false" continueOnError="false" expand="false" description="">
          <condition>
            <expression type="SMS_TaskSequence_VariableConditionExpression">
              <variable name="Variable">DeploymentType</variable>
              <variable name="Operator">equals</variable>
              <variable name="Value">REFRESH</variable>
            </expression>
          </condition>
          <step type="SMS_TaskSequence_RunCommandLineAction" name="Restore EPE MBR" description="Continue on error (to handle condition of WinPE not replacing boot Sector)" disable="false" continueOnError="true" startIn="%DEPLOYROOT%\Tools\%ARCHITECTURE%" successCodeList="0 3010" runIn="WinPEandFullOS">
            <defaultVarList>
              <variable name="PackageID" property="PackageID" />
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
            <action>EpeWinUpgradeTool.exe -SetMbr C:\EpeMbr.dat</action>
            <condition>
              <expression type="SMS_TaskSequence_VariableConditionExpression">
                <variable name="Variable">EpeStatus</variable>
                <variable name="Operator">equals</variable>
                <variable name="Value">True</variable>
              </expression>
            </condition>
          </step>
          <step type="SMS_TaskSequence_RebootAction" name="Restart computer" description="" disable="false" continueOnError="false" runIn="WinPEandFullOS" successCodeList="0 3010">
            <defaultVarList>
              <variable name="Message" property="Message"></variable>
              <variable name="MessageTimeout" property="MessageTimeout">60</variable>
              <variable name="Target" property="Target"></variable>
            </defaultVarList>
            <action>smsboot.exe /target:WinPE</action>
          </step>
        </group>
      </group>
      <group name="Preinstall" disable="false" continueOnError="false" description="" expand="true">
        <condition>
          <expression type="SMS_TaskSequence_VariableConditionExpression">
            <variable name="Variable">PHASE</variable>
            <variable name="Operator">equals</variable>
            <variable name="Value">PREINSTALL</variable>
          </expression>
        </condition>
        <step type="BDD_Gather" name="Gather local only" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
          <defaultVarList>
            <variable name="GatherLocalOnly" property="GatherLocalOnly">true</variable>
            <variable name="RulesFile" property="RulesFile"></variable>
          </defaultVarList>
          <action>cscript.exe "%SCRIPTROOT%\ZTIGather.wsf"</action>
        </step>
        <group name="New Computer only" disable="false" continueOnError="false" description="" expand="false">
          <condition>
            <expression type="SMS_TaskSequence_VariableConditionExpression">
              <variable name="Variable">DeploymentType</variable>
              <variable name="Operator">equals</variable>
              <variable name="Value">NEWCOMPUTER</variable>
            </expression>
          </condition>
          <step type="BDD_Validate" name="Validate" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
            <defaultVarList>
              <variable name="ImageSize" property="ImageSize">0</variable>
              <variable name="ImageProcessorSpeed" property="ImageProcessorSpeed">800</variable>
              <variable name="ImageMemory" property="ImageMemory">512</variable>
              <variable name="VerifyOS" property="VerifyOS">CLIENT</variable>
            </defaultVarList>
            <action>cscript.exe "%SCRIPTROOT%\ZTIValidate.wsf"</action>
          </step>
          <step type="SMS_TaskSequence_PartitionDiskAction" name="Format and Partition Disk" description="" disable="false" continueOnError="false" runIn="WinPEandFullOS" successCodeList="0 3010">
            <defaultVarList>
              <variable name="OSDDiskIndex" property="DiskIndex">0</variable>
              <variable name="OSDPartitions0Type" property="Partitions0Type">Primary</variable>
              <variable name="OSDPartitions0FileSystem" property="Partitions0FileSystem">NTFS</variable>
              <variable name="OSDPartitions0Bootable" property="Partitions0Bootable">True</variable>
              <variable name="OSDPartitions0QuickFormat" property="Partitions0QuickFormat">True</variable>
              <variable name="OSDPartitions0VolumeName" property="Partitions0VolumeName">OSDisk</variable>
              <variable name="OSDPartitions0Size" property="Partitions0Size">100</variable>
              <variable name="OSDPartitions0SizeUnits" property="Partitions0SizeUnits">%</variable>
              <variable name="OSDPartitions0VolumeLetterVariable" property="Partitions0VolumeLetterVariable"></variable>
              <variable name="OSDPartitions" property="Partitions">1</variable>
              <variable name="OSDPartitionStyle" property="PartitionStyle">MBR</variable>
            </defaultVarList>
            <action>cscript.exe "%SCRIPTROOT%\ZTIDiskpart.wsf"</action>
          </step>
          <step name="Copy scripts" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
            <action>cscript.exe "%SCRIPTROOT%\LTICopyScripts.wsf"</action>
            <defaultVarList>
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
          </step>
        </group>
        <group name="Refresh only" disable="false" continueOnError="false" description="" expand="false">
          <condition>
            <expression type="SMS_TaskSequence_VariableConditionExpression">
              <variable name="Variable">DeploymentType</variable>
              <variable name="Operator">equals</variable>
              <variable name="Value">REFRESH</variable>
            </expression>
          </condition>
          <step name="Backup" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
            <action>cscript.exe "%SCRIPTROOT%\ZTIBackup.wsf"</action>
            <defaultVarList>
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
          </step>
        </group>
        <step name="Configure" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
          <action>cscript.exe "%SCRIPTROOT%\ZTIConfigure.wsf"</action>
          <defaultVarList>
            <variable name="RunAsUser" property="RunAsUser">false</variable>
            <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
            <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
            <variable name="LoadProfile" property="LoadProfile">false</variable>
          </defaultVarList>
        </step>
        <step type="BDD_InjectDrivers" name="Inject Drivers" description="" disable="false" continueOnError="false" runIn="WinPEandFullOS" successCodeList="0 3010">
          <defaultVarList>
            <variable name="DriverSelectionProfile" property="DriverSelectionProfile">Windows 7 Drivers Only</variable>
            <variable name="DriverInjectionMode" property="DriverInjectionMode">AUTO</variable>
          </defaultVarList>
          <action>cscript.exe "%SCRIPTROOT%\ZTIDrivers.wsf"</action>
        </step>
        <step type="BDD_InstallUpdatesOffline" name="Apply Patches" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
          <action>cscript.exe "%SCRIPTROOT%\ZTIPatches.wsf"</action>
          <defaultVarList>
            <variable name="PackageSelectionProfile" property="PackageSelectionProfile"></variable>
          </defaultVarList>
        </step>
        <step name="Next Phase" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
          <action>cscript.exe "%SCRIPTROOT%\ZTINextPhase.wsf"</action>
          <defaultVarList>
            <variable name="RunAsUser" property="RunAsUser">false</variable>
            <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
            <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
            <variable name="LoadProfile" property="LoadProfile">false</variable>
          </defaultVarList>
        </step>
      </group>
      <group name="Install" disable="false" continueOnError="false" description="" expand="true">
        <condition>
          <expression type="SMS_TaskSequence_VariableConditionExpression">
            <variable name="Variable">PHASE</variable>
            <variable name="Operator">equals</variable>
            <variable name="Value">INSTALL</variable>
          </expression>
        </condition>
        <step type="SMS_TaskSequence_RunCommandLineAction" name="Store EPE MBR" description="" disable="false" continueOnError="false" startIn="%DEPLOYROOT%\Tools\%ARCHITECTURE%" successCodeList="0 3010" runIn="WinPEandFullOS">
          <defaultVarList>
            <variable name="PackageID" property="PackageID" />
            <variable name="RunAsUser" property="RunAsUser">false</variable>
            <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
            <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
            <variable name="LoadProfile" property="LoadProfile">false</variable>
          </defaultVarList>
          <action>EpeWinUpgradeTool.exe -SaveMbr X:\EpeMbr.dat</action>
          <condition>
            <expression type="SMS_TaskSequence_VariableConditionExpression">
              <variable name="Variable">EpeStatus</variable>
              <variable name="Operator">equals</variable>
              <variable name="Value">True</variable>
            </expression>
          </condition>
        </step>
        <step type="BDD_InstallOS" name="Install Operating System" description="" disable="false" continueOnError="false" runIn="WinPEandFullOS" successCodeList="0 3010">
          <defaultVarList>
            <variable name="OSGUID" property="OSGUID">{f2b0a673-b0bd-4e4e-9dc1-01002361e49c}</variable>
            <variable name="DestinationDisk" property="DestinationDisk">0</variable>
            <variable name="DestinationPartition" property="DestinationPartition">1</variable>
          </defaultVarList>
          <action>cscript.exe "%SCRIPTROOT%\LTIApply.wsf"</action>
        </step>
        <group expand="true" name="Add &amp; Configure EPE Filter Driver" description="" disable="false" continueOnError="false">
          <action />
          <step type="SMS_TaskSequence_RunCommandLineAction" name="Copy MfeEEAlg.sys Driver File" description="" disable="false" continueOnError="false" startIn="" successCodeList="0 3010" runIn="WinPEandFullOS">
            <defaultVarList>
              <variable name="PackageID" property="PackageID"></variable>
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
            <action>cmd /c "copy /V /Y %DEPLOYROOT%\Extra\%ARCHITECTURE%\Windows\System32\Drivers\MfeEEAlg.sys C:\Windows\System32\Drivers\MfeEEAlg.sys"</action>
          </step>
          <step type="SMS_TaskSequence_RunCommandLineAction" name="Copy MfeEpePc.sys Driver File" description="" disable="false" continueOnError="false" startIn="" successCodeList="0 3010" runIn="WinPEandFullOS">
            <defaultVarList>
              <variable name="PackageID" property="PackageID"></variable>
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
            <action>cmd /c "copy /V /Y %DEPLOYROOT%\Extra\%ARCHITECTURE%\Windows\System32\Drivers\MfeEpePc.sys C:\Windows\System32\Drivers\MfeEpePc.sys"</action>
          </step>
          <step type="SMS_TaskSequence_RunCommandLineAction" name="Copy SafeBoot.sys Driver File" description="" disable="false" continueOnError="false" startIn="" successCodeList="0 3010" runIn="WinPEandFullOS">
            <defaultVarList>
              <variable name="PackageID" property="PackageID"></variable>
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
            <action>cmd /c "copy /V /Y %DEPLOYROOT%\Extra\%ARCHITECTURE%\Windows\System32\Drivers\SafeBoot.sys C:\Windows\System32\Drivers\SafeBoot.sys"</action>
          </step>
          <step type="SMS_TaskSequence_RunCommandLineAction" name="Copy SbAlg.sys Driver File" description="" disable="false" continueOnError="false" startIn="" successCodeList="0 3010" runIn="WinPEandFullOS">
            <defaultVarList>
              <variable name="PackageID" property="PackageID"></variable>
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
            <action>cmd /c "copy /V /Y %DEPLOYROOT%\Extra\%ARCHITECTURE%\Windows\System32\Drivers\SbAlg.sys C:\Windows\System32\Drivers\SbAlg.sys"</action>
          </step>
          <step type="SMS_TaskSequence_RunCommandLineAction" name="Update McAfee EE Registry Entires" description="" disable="false" continueOnError="false" startIn="" successCodeList="0 3010" runIn="WinPEandFullOS">
            <defaultVarList>
              <variable name="PackageID" property="PackageID"></variable>
              <variable name="RunAsUser" property="RunAsUser">false</variable>
              <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
              <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
              <variable name="LoadProfile" property="LoadProfile">false</variable>
            </defaultVarList>
            <action>cscript.exe "%SCRIPTROOT%\UpdateMcAfeeEEReg.vbs"</action>
          </step>
          <condition>
            <expression type="SMS_TaskSequence_VariableConditionExpression">
              <variable name="Variable">EpeStatus</variable>
              <variable name="Operator">equals</variable>
              <variable name="Value">True</variable>
            </expression>
          </condition>
        </group>
        <step name="Next Phase" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
          <action>cscript.exe "%SCRIPTROOT%\ZTINextPhase.wsf"</action>
          <defaultVarList>
            <variable name="RunAsUser" property="RunAsUser">false</variable>
            <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
            <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
            <variable name="LoadProfile" property="LoadProfile">false</variable>
          </defaultVarList>
        </step>
      </group>
      <group name="Postinstall" disable="false" continueOnError="false" description="" expand="true">
        <condition>
          <expression type="SMS_TaskSequence_VariableConditionExpression">
            <variable name="Variable">PHASE</variable>
            <variable name="Operator">equals</variable>
            <variable name="Value">POSTINSTALL</variable>
          </expression>
        </condition>
        <step name="Copy Scripts" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
          <action>cscript.exe "%SCRIPTROOT%\LTICopyScripts.wsf"</action>
          <defaultVarList>
            <variable name="RunAsUser" property="RunAsUser">false</variable>
            <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
            <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
            <variable name="LoadProfile" property="LoadProfile">false</variable>
          </defaultVarList>
        </step>
        <step name="Configure" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
          <action>cscript.exe "%SCRIPTROOT%\ZTIConfigure.wsf"</action>
          <defaultVarList>
            <variable name="RunAsUser" property="RunAsUser">false</variable>
            <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
            <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
            <variable name="LoadProfile" property="LoadProfile">false</variable>
          </defaultVarList>
        </step>
        <step name="Inject Drivers" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
          <action>cscript.exe "%SCRIPTROOT%\ZTIdrivers.wsf"</action>
          <defaultVarList>
            <variable name="RunAsUser" property="RunAsUser">false</variable>
            <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
            <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
            <variable name="LoadProfile" property="LoadProfile">false</variable>
          </defaultVarList>
        </step>
        <step type="SMS_TaskSequence_RunCommandLineAction" name="Restore Epe MBR" description="" disable="false" continueOnError="true" startIn="%DEPLOYROOT%\Tools\%ARCHITECTURE%" successCodeList="0 3010" runIn="WinPEandFullOS">
          <defaultVarList>
            <variable name="PackageID" property="PackageID" />
            <variable name="RunAsUser" property="RunAsUser">false</variable>
            <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
            <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
            <variable name="LoadProfile" property="LoadProfile">false</variable>
          </defaultVarList>
          <action>EpeWinUpgradeTool.exe -SetMbr X:\EpeMbr.dat</action>
          <condition>
            <expression type="SMS_TaskSequence_VariableConditionExpression">
              <variable name="Variable">EpeStatus</variable>
              <variable name="Operator">equals</variable>
              <variable name="Value">True</variable>
            </expression>
          </condition>
        </step>
        <step name="Next Phase" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn="">
          <action>cscript.exe "%SCRIPTROOT%\ZTINextPhase.wsf"</action>
          <defaultVarList>
            <variable name="RunAsUser" property="RunAsUser">false</variable>
            <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable>
            <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable>
            <variable name="LoadProfile" property="LoadProfile">false</variable>
          </defaultVarList>
        </step>
        <step type="SMS_TaskSequence_RebootAction" name="Restart computer" description="" disable="false" continueOnError="false" runIn="WinPEandFullOS" successCodeList="0 3010">
          <defaultVarList>
            <variable name="Message" property="Message"></variable>
            <variable name="MessageTimeout" property="MessageTimeout">60</variable>
            <variable name="Target" property="Target"></variable>
          </defaultVarList>
          <action>smsboot.exe /target:WinPE</action>
        </step>
      </group>
    
    ========= End Part one of TS.xml ===============


    • Edited by JoeZeppy Wednesday, May 29, 2013 3:41 PM
    Wednesday, May 29, 2013 3:27 PM
  • Save the two sections together as ts.xml. Create a dummy x86 deploy TS named Mcafee. Then go to the Control\Mcafee folder and replace the ts.xml file with this one. Then you can view it and see what is happening.

    ========= Begin Part 2 of TS.XML =============== <group name="State Restore" disable="false" continueOnError="false" description="" expand="true"> <condition> <expression type="SMS_TaskSequence_VariableConditionExpression"> <variable name="Variable">PHASE</variable> <variable name="Operator">equals</variable> <variable name="Value">STATERESTORE</variable> </expression> </condition> <step type="SMS_TaskSequence_ApplyNetworkSettingsAction" name="Apply Network Settings" disable="false" continueOnError="false" successCodeList="0" description="" startIn=""> <action>cscript.exe "%SCRIPTROOT%\ZTINICConfig.wsf"</action> <defaultVarList> <variable name="OSDAdapterCount" property="NumAdapters">0</variable> <variable name="OSDAdapter" property="Adapters">0</variable> </defaultVarList> </step> <step type="BDD_Gather" name="Gather local only" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn=""> <defaultVarList> <variable name="GatherLocalOnly" property="GatherLocalOnly">true</variable> <variable name="RulesFile" property="RulesFile"></variable> </defaultVarList> <action>cscript.exe "%SCRIPTROOT%\ZTIGather.wsf"</action> </step> <step name="Post-Apply Cleanup" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn=""> <action>cscript.exe "%SCRIPTROOT%\LTIApply.wsf" /post</action> <defaultVarList> <variable name="RunAsUser" property="RunAsUser">false</variable> <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable> <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable> <variable name="LoadProfile" property="LoadProfile">false</variable> </defaultVarList> </step> <step name="Tattoo" disable="false" continueOnError="true" successCodeList="0 3010" description="" startIn=""> <action>cscript.exe "%SCRIPTROOT%\ZTITatoo.wsf"</action> <defaultVarList> <variable name="RunAsUser" property="RunAsUser">false</variable> <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable> <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable> <variable name="LoadProfile" property="LoadProfile">false</variable> </defaultVarList> </step> <step name="Windows Update (Pre-Application Installation)" disable="true" continueOnError="true" successCodeList="0 3010" description="" startIn=""> <action>cscript.exe "%SCRIPTROOT%\ZTIWindowsUpdate.wsf"</action> <defaultVarList> <variable name="RunAsUser" property="RunAsUser">false</variable> <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable> <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable> <variable name="LoadProfile" property="LoadProfile">false</variable> </defaultVarList> </step> <step type="BDD_InstallApplication" name="Install Applications" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn=""> <action>cscript.exe "%SCRIPTROOT%\ZTIApplications.wsf"</action> <defaultVarList> <variable name="ApplicationGUID" property="ApplicationGUID"></variable> <variable name="ApplicationSuccessCodes" property="ApplicationSuccessCodes">0 3010</variable> </defaultVarList> </step> <group expand="true" name="McAfee Software" description="if EpeStatus=True, install MCAfee Software. Should not install again if it was installed as laptop bundle" disable="false" continueOnError="false"> <step type="BDD_InstallApplication" name="Add McAfee EPO Agent if encryption detected" description="" disable="false" continueOnError="false" runIn="WinPEandFullOS" successCodeList="0 3010"> <defaultVarList> <variable name="ApplicationGUID" property="ApplicationGUID">{9b4b799b-2484-435b-928b-d6c36d54555d}</variable> <variable name="ApplicationSuccessCodes" property="ApplicationSuccessCodes">0 3010</variable> </defaultVarList> <action>cscript.exe "%SCRIPTROOT%\ZTIApplications.wsf"</action> <condition></condition> </step> <step type="BDD_InstallApplication" name="McAfee Endpoint 6.1.3 and Host 1.1.3 - 2.5" description="" disable="false" continueOnError="false" runIn="WinPEandFullOS" successCodeList="0 3010"> <defaultVarList> <variable name="ApplicationGUID" property="ApplicationGUID">{4506810e-fc8d-4891-8390-2deaae410403}</variable> <variable name="ApplicationSuccessCodes" property="ApplicationSuccessCodes">0 3010</variable> </defaultVarList> <action>cscript.exe "%SCRIPTROOT%\ZTIApplications.wsf"</action> </step> <step type="SMS_TaskSequence_RunCommandLineAction" name="Autoboot &quot;--clear&quot;" description="" disable="false" continueOnError="false" startIn="" successCodeList="0 3010" runIn="WinPEandFullOS"> <defaultVarList> <variable name="PackageID" property="PackageID" /> <variable name="RunAsUser" property="RunAsUser">false</variable> <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable> <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable> <variable name="LoadProfile" property="LoadProfile">false</variable> </defaultVarList> <action>cscript "%SCRIPTROOT%\ZTIEpeAutoboot.wsf" "--clear"</action> <condition /> </step> <step type="SMS_TaskSequence_RunCommandLineAction" name="Autoboot &quot;--timeout-in-minutes 540&quot;" description="" disable="false" continueOnError="false" startIn="" successCodeList="0 3010" runIn="WinPEandFullOS"> <defaultVarList> <variable name="PackageID" property="PackageID" /> <variable name="RunAsUser" property="RunAsUser">false</variable> <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable> <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable> <variable name="LoadProfile" property="LoadProfile">false</variable> </defaultVarList> <action>cscript "%SCRIPTROOT%\ZTIEpeAutoboot.wsf" "--timeout-in-minutes 540"</action> </step> <action /> <condition> <expression type="SMS_TaskSequence_VariableConditionExpression"> <variable name="Variable">EpeStatus</variable> <variable name="Operator">equals</variable> <variable name="Value">True</variable> </expression> </condition> </group> <step name="Windows Update (Post-Application Installation)" disable="true" continueOnError="true" successCodeList="0 3010" description="" startIn=""> <action>cscript.exe "%SCRIPTROOT%\ZTIWindowsUpdate.wsf"</action> <defaultVarList> <variable name="RunAsUser" property="RunAsUser">false</variable> <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable> <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable> <variable name="LoadProfile" property="LoadProfile">false</variable> </defaultVarList> </step> <step type="SMS_TaskSequence_EnableBitLockerAction" name="Enable BitLocker" continueOnError="false" successCodeList="0 3010" description="" startIn="" disable="true"> <action>cscript.exe "%SCRIPTROOT%\ZTIBde.wsf"</action> <condition> <expression type="SMS_TaskSequence_VariableConditionExpression"> <variable name="Variable">BdeInstallSuppress</variable> <variable name="Operator">notEquals</variable> <variable name="Value">YES</variable> </expression> </condition> <defaultVarList> <variable name="OSDBitLockerTargetDrive" property="BdeTargetDriveLetter"></variable> <variable name="OSDBitLockerMode" property="BdeInstall">TPM</variable> <variable name="OSDBitLockerStartupKeyDrive" property="BdeKeyLocation"></variable> <variable name="OSDBitLockerCreateRecoveryPassword" property="BdeRecoveryPassword">AD</variable> <variable name="OSDBitLockerWaitForEncryption" property="WaitForEncryption">false</variable> </defaultVarList> </step> <group name="Prepare to Capture Image" disable="false" continueOnError="false" expand="true" description=""> <condition> <expression type="SMS_TaskSequence_VariableConditionExpression"> <variable name="Variable">DoCapture</variable> <variable name="Operator">equals</variable> <variable name="Value">PREPARE</variable> </expression> </condition> </group> <group name="Capture Image" disable="false" continueOnError="false" expand="true" description=""> <condition> <expression type="SMS_TaskSequence_VariableConditionExpression"> <variable name="Variable">DoCapture</variable> <variable name="Operator">equals</variable> <variable name="Value">YES</variable> </expression> </condition> </group> <step name="Restore User State" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn=""> <action>cscript.exe "%SCRIPTROOT%\ZTIUserState.wsf" /restore</action> <condition> <operator type="and"> <expression type="SMS_TaskSequence_VariableConditionExpression"> <variable name="Variable">DeploymentType</variable> <variable name="Operator">notEquals</variable> <variable name="Value">UPGRADE</variable> </expression> <expression type="SMS_TaskSequence_VariableConditionExpression"> <variable name="Variable">DoCapture</variable> <variable name="Operator">notEquals</variable> <variable name="Value">YES</variable> </expression> <expression type="SMS_TaskSequence_VariableConditionExpression"> <variable name="Variable">DoCapture</variable> <variable name="Operator">notEquals</variable> <variable name="Value">PREPARE</variable> </expression> </operator> </condition> <defaultVarList> <variable name="RunAsUser" property="RunAsUser">false</variable> <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable> <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable> <variable name="LoadProfile" property="LoadProfile">false</variable> </defaultVarList> </step> <step name="Restore Groups" disable="false" continueOnError="false" successCodeList="0 3010" description="" startIn=""> <action>cscript.exe "%SCRIPTROOT%\ZTIGroups.wsf" /restore</action> <condition> <operator type="and"> <expression type="SMS_TaskSequence_VariableConditionExpression"> <variable name="Variable">DoCapture</variable> <variable name="Operator">notEquals</variable> <variable name="Value">YES</variable> </expression> <expression type="SMS_TaskSequence_VariableConditionExpression"> <variable name="Variable">DoCapture</variable> <variable name="Operator">notEquals</variable> <variable name="Value">PREPARE</variable> </expression> </operator> </condition> <defaultVarList> <variable name="RunAsUser" property="RunAsUser">false</variable> <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable> <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable> <variable name="LoadProfile" property="LoadProfile">false</variable> </defaultVarList> </step> <group expand="true" name="Final Config" description="" disable="false" continueOnError="false"> <action /> <step type="SMS_TaskSequence_RunCommandLineAction" name="Hide Epe Files" description="" disable="false" continueOnError="false" startIn="C:\" successCodeList="0 3010" runIn="WinPEandFullOS"> <defaultVarList> <variable name="PackageID" property="PackageID" /> <variable name="RunAsUser" property="RunAsUser">false</variable> <variable name="SMSTSRunCommandLineUserName" property="SMSTSRunCommandLineUserName"></variable> <variable name="SMSTSRunCommandLineUserPassword" property="SMSTSRunCommandLineUserPassword"></variable> <variable name="LoadProfile" property="LoadProfile">false</variable> </defaultVarList> <action>attrib +r +s +h C:\safeboot.* </action> </step> </group> </group> </sequence>



    • Edited by JoeZeppy Wednesday, May 29, 2013 3:44 PM
    Wednesday, May 29, 2013 3:29 PM
  • We are using x86 and x64 images, so I have two versions of the Mcafee files. I keep them in the Tools folder under the respective architecture and refer to them like this:

    Command line:

         EpeWinUpgradeTool.exe -SetMbr C:\EpeMbr.dat

    Start in:

        "%DEPLOYROOT%\Tools\%ARCHITECTURE%"

    We also add the EPE Filter driver to the Windows 7 image on the fly if encryption is detected, that way we don't need to maintain separate encrypted images. That is handled under the Add & Configure EPE Filter Driver group that occurs right after the "Install Operating System" task. It copies the drivers to C:, and there is a vbscript that loads the registry hive from C: and edits it in WinPE, using the same method I use to inject the Mcafee suport into the WinPE image as it is being built.

    So the encrypted drive is immediately supported under Windows 7 as soon as it rebots into the OS, even though the agent isn't installed yet. Then later in the install application phase, we install the agent if EpeStatus = true.

    Option Explicit
    
    Dim oShell, oEnv, ScriptPath
    
    ScriptPath = Left(WScript.ScriptFullName, Len(WScript.ScriptFullName) - Len(WScript.ScriptName))
    
    Set oShell = CreateObject("WScript.Shell")
    Set oEnv = oShell.Environment("PROCESS")
    
    Dim sCmd, rc, strLog, fso, filetxt
    
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set filetxt = fso.CreateTextFile("C:\UpdateMcAfeeEEReg.log", True)
    
    	strLog = strLog & "---- Beginning UpdateMcAfeeEEReg.vbs WIM section ----" & vbCrLf
    	strLog = strLog &  "Adding Safeboot Registry keys(UpdateMcAfeeEEReg.vbs)..." & VbCrLf
    
    	'Load SYSTEM registry hive 
    	sCmd = "Reg load HKLM\winpe " & "C:\Windows\System32\config\SYSTEM"
    	strLog = strLog &  "About to run command: " & sCmd & VbCrLf
    	rc = oShell.Run(sCmd, 1, True)
    	strLog = strLog &  "REG LOAD rc = " & rc & VbCrLf
    	
    	sCmd = "Reg add HKLM\winpe\ControlSet001\services\Safeboot /f"
    	strLog = strLog &  "About to run command: " & sCmd & VbCrLf
    	rc = oShell.Run(sCmd, 1, True)
    	strLog = strLog &  "REG add rc = " & rc & VbCrLf
    	
    	sCmd = "Reg add HKLM\winpe\ControlSet001\services\SBAlg /f"
    	strLog = strLog &  "About to run command: " & sCmd & VbCrLf
    	rc = oShell.Run(sCmd, 1, True)
    	strLog = strLog &  "REG add rc = " & rc & VbCrLf
    
    	sCmd = "Reg add HKLM\winpe\ControlSet001\services\MfeEpePc /f"
    	strLog = strLog &  "About to run command: " & sCmd & VbCrLf
    	rc = oShell.Run(sCmd, 1, True)
    	strLog = strLog &  "REG add rc = " & rc & VbCrLf
    	
    	sCmd = "Reg add HKLM\winpe\ControlSet001\services\MfeEEAlg /f"
    	strLog = strLog &  "About to run command: " & sCmd & VbCrLf
    	rc = oShell.Run(sCmd, 1, True)
    	strLog = strLog &  "REG add rc = " & rc & VbCrLf
    	
    	sCmd = "Reg import " & ScriptPath & "SBWinPE.reg"
    	strLog = strLog &  "About to run command: " & sCmd & VbCrLf
    	rc = oShell.Run(sCmd, 1, True)
    	strLog = strLog &  "REG import rc = " & rc & VbCrLf
    	
    	sCmd = "Reg unload HKLM\winpe"
    	strLog = strLog &  "About to run command: " & sCmd & VbCrLf
    	rc = oShell.Run(sCmd, 1, True)
    	strLog = strLog &  "REG unload rc = " & rc & VbCrLf
    
    	filetxt.Write(strLog)
    	filetxt.Close


    • Edited by JoeZeppy Wednesday, May 29, 2013 4:05 PM
    Wednesday, May 29, 2013 4:03 PM
  • Thanks for sharing your TS info for the McAfee Refresh tool. I'll be working on this soon as a part of a project I'm on. Besides the documentation I already have this will be a good reference for me from those that have already done it.
    Wednesday, May 29, 2013 7:51 PM