मुझे 2 विंडोज इंस्टॉलेशन मिले हैं जो समान हैं, समान सेटिंग्स, समान प्रोग्राम। फर्क सिर्फ इतना है कि विंडोज आर्किटेक्चर अलग है, एक 32 बिट है और दूसरा 64 बिट है।
जब निम्नलिखित उत्तर फ़ाइल के साथ मेरे 32 बिट इंस्टॉलेशन को खोजा जा रहा हो:
<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
<settings pass="oobeSystem">
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<FolderLocations>
<ProfilesDirectory>U:\Users</ProfilesDirectory>
</FolderLocations>
<FirstLogonCommands>
<SynchronousCommand wcm:action="add">
<CommandLine>%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe -NonInteractive -ExecutionPolicy Bypass -File C:\Windows\System32\Scripts\PinTaskbarItems\Managetaskbar\Taskband.ps1</CommandLine>
<Description>Sets the pinned taskbar items and restarts the explorer process</Description>
<Order>1</Order>
<RequiresUserInput>false</RequiresUserInput>
</SynchronousCommand>
</FirstLogonCommands>
</component>
</settings>
<settings pass="specialize">
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<DesktopOptimization>
<ShowWindowsStoreAppsOnTaskbar>false</ShowWindowsStoreAppsOnTaskbar>
</DesktopOptimization>
<CopyProfile>true</CopyProfile>
<DoNotCleanTaskBar>true</DoNotCleanTaskBar>
<EnableStartMenu>true</EnableStartMenu>
</component>
</settings>
<cpi:offlineImage cpi:source="wim:c:/users/bas/desktop/iso's/x32/install.wim#Windows 10 Pro" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
</unattend>
यह वर्तमान में केवल के बारे में है FirstLogonCommands
हिस्सा, जो पूरी तरह से 32bit sysprep के बाद ठीक काम करता है। आदेश बिना किसी त्रुटि के चलता है और वांछित परिणाम वापस देता है।
मेरे 64 बिट इंस्टॉलेशन के लिए उत्तर फ़ाइल को समायोजित करने के बाद, यह इस तरह दिखता है:
<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
<settings pass="specialize">
<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">
<DesktopOptimization>
<ShowWindowsStoreAppsOnTaskbar>false</ShowWindowsStoreAppsOnTaskbar>
</DesktopOptimization>
<CopyProfile>true</CopyProfile>
<DoNotCleanTaskBar>true</DoNotCleanTaskBar>
<EnableStartMenu>true</EnableStartMenu>
</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">
<FolderLocations>
<ProfilesDirectory>U:\Users</ProfilesDirectory>
</FolderLocations>
<FirstLogonCommands>
<SynchronousCommand wcm:action="add">
<CommandLine>%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe -NonInteractive -ExecutionPolicy Bypass -File C:\Windows\System32\Scripts\PinTaskbarItems\Managetaskbar\Taskband.ps1</CommandLine>
<Description>Sets the pinned taskbar items and restarts the explorer process</Description>
<Order>1</Order>
<RequiresUserInput>false</RequiresUserInput>
</SynchronousCommand>
</FirstLogonCommands>
</component>
</settings>
<cpi:offlineImage cpi:source="wim:e:/sources/install.wim#Windows 10 Pro" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
</unattend>
केवल एक चीज जो उलट है वह है pass
का पैरामीटर settings
कुंजी। जब मैंने 64 बिट इंस्टॉलेशन sysprep पर इस उत्तर फ़ाइल की कोशिश की, FirstLogonCommands
नहीं चला। शेष उत्तर फ़ाइल ने पूरी तरह से काम किया, जैसे कि 32 बिट संस्करण।
दोनों उत्तर फ़ाइलों को WSIM द्वारा मान्य किया गया है।
मैंने लाइन को कॉपी करने की कोशिश की <CommandLine>
एक CMD में (व्यवस्थापक विशेषाधिकारों के साथ या बिना) और इसे चलाने के लिए। जब यह चलता है, तो कमांड बिना किसी त्रुटि के चलती है।
समस्या यह है कि स्क्रिप्ट मेरे 64 बिट इंस्टॉलेशन sysprep पर नहीं चल रही है।
यह कैसे आता है और मैं इस उत्तर फ़ाइल का उपयोग करके इस स्क्रिप्ट को कैसे चला सकता हूं?
ProfilesDirectory
यू: \ उपयोगकर्ताओं के लिए सेट किया गया है जो 32 बिट संस्करण पर ठीक काम करता है।