Chuyên mục

Blogger
  • Blogger Template 8
    • Seo Blogspot 29
      • Thiết kế Blogspot 26
        • Thủ thuật Blogspot 82
          • Tiện ích Blogspot 31
            Máy tính
            • Phần mềm 45
              • Sửa lỗi Windows 20
                • Thủ thuật Windows 78
                  • Cài đặt Windows 43

                    Hướng dẫn cấu hình sao chép và thực thi tệp tự động trong suốt quá trình cài đặt Windows

                    Trong Windows 10 hay các hệ điều hành Windows trở về trước Microsoft đã lập trình cài đặt tự động sao chép thư mục hoặc tập tin từ usb/dvd cài đặt đến đường dẫn phân vùng hệ thống hoặc các thư mục trong phân vùng đó thông qua một thư mục có tên $OEM$ nằm trong thư mục sources của usb/dvd.



                    Bạn lưu ý thư mục $OEM$ sẽ không có sẵn trong thư mục sources của bộ cài ISO mà phải tạo mới và lưu trong đó để trong quá trình cài đặt Windows sẽ tự tìm đến thư mục $OEM$ của usb/dvd mà dựa vào đó sao chép các thư mục hoặc tập tin mà bạn đặt trong thư mục này.

                    Dưới đây mình sẽ trình bày cấu trúc đường dẫn của nó trong thư mục $OEM$

                    Đầu tiên để sao chép được thì bạn phải tạo mới thư mục tên $OEM$ trong thư mục sources trước. Trong thư mục này có 4 thư mục chính mà bạn cần biết đó là các thư mục $$$1$docs$progs


                    Giải thích các thư mục trên như sau:

                    $1: đường dẫn đến phân vùng hệ thống thường là ổ C hoặc %system%
                    $$: đường dẫn đến thư mục Windows trong ổ C viết theo đường dẫn là C:\Windows hoặc %windir%
                    $docs: đường dẫn đến thư mục Documents trong ổ C
                    $progs: đường dẫn đến thư mục Program File trong ổ C

                    Như vậy nếu muốn thiết lập thư mục hoặc tập tin cần sao chép đến đường dẫn trên thì bạn làm như sau:

                    Ví dụ mình muốn sao chép thư mục Packages trong đó có lưu các bản cập nhật mình sẽ đặt thư mục này vào thư mục $1


                    Mình muốn sao chép các tệp vào thư mục INF và thư mục Panther của thư mục Windows trong ổ C do đó mình sẽ tạo mới các thư mục INFPanther trong thư mục $$ và trong thư mục INF mình đặt tệp dạng driver .inf và thư mục Panther mình đặt tập tin cài đặt tự động Unattend.xml


                    Mở rộng giả sử mình muốn sao chép tệp ảnh vào thư mục oobe trong thư mục System32 của thư mục Widows theo đường dẫn C:\Windows\System32\oobe mình sẽ tạo mới thư mục System32 vào thư mục $$ và trong thư mục System32 mình lại tạo mới thư mục tên oobe và lưu tệp hình ảnh vào thư mục này


                    Mình sẽ mô tả bằng sơ đồ hình cây dưới đây cho bạn dễ hình dung

                    Copy
                    usb drive
                        sources
                              $OEM$
                                  $$
                                     INF
                                         oem1.inf
                                         oem2.inf
                                     Panther
                                         Unattend.xml
                                     Setup
                                         Scripts
                                             SetupComplete.cmd
                                     System32
                                         oobe
                                             OEMWallapaper.png
                                             OEMLogo.bmp
                                     S1
                                         Packages
                                             microsoft-windows-netfx3-ondemand-package~31bf3856ad364e35~amd64~~.cab
                                             winrar-x64.exe
                                         Users
                                             Default
                                                 AppData
                                                     Local
                                                         Microsoft
                                                             Windows
                                                                 Shell
                                                                     LayoutModification.xml
                                                 Desktop
                                                     Windows 10 Tweaker
                                                         Windows_10_Tweaker.cmd

                    Mục đích chính khi sao chép các thư mục này là để thưc thi quá trình trong khi cài đặt, giả sử bạn muốn cài đặt driver tự động thì bạn phải sao chép các tệp driver (.inf) vào thư mục INF của thư mục Windows, bạn muốn sau khi cài đặt sẽ đăng nhập tự động bỏ qua các bước thiết lập tài khoản thì bạn cần phải có tập tin cấu hình tự động Unattend.xml trong thư mục Panther của thư mục Windows.

                    Hướng dẫn thực thi tệp trong suốt quá trình cài đặt


                    Đầu tiên mình sẽ thực thi các tệp trong thư mục Packages trong đó có lưu 2 tệp:

                    Copy
                    microsoft-windows-netfx3-ondemand-package~31bf3856ad364e35~amd64~~.cab
                    winrar-x64.exe

                    Như vậy mình cần sử dụng lệnh command để thực thi 2 tệp này và mình sẽ viết lệnh trong nội dung của tệp SetupComplete.cmd lưu trong thư mục Scripts

                    Copy
                    Dism /Online /Add-Package /PackagePath:C:\Packages\microsoft-windows-netfx3-ondemand-package~31bf3856ad364e35~amd64~~.cab /Quiet /NoRestart
                    Start /wait C:\Packages\winrar-x64.exe /s

                    Kết hợp mình sẽ gỡ bỏ ứng dụng Feedback Hub bằng lệnh sau áp dụng Windows 10, version 1809

                    Copy
                    Dism /Online /Remove-ProvisionedAppxPackage /PackageName:Microsoft.WindowsFeedbackHub_2018.822.2.0_neutral_~_8wekyb3d8bbwe

                    Danh sách PackageName của ứng dụng thuộc StoreApps trong Windows 10, version 1809

                    Copy
                    PackageName
                    -----------
                    Microsoft.BingWeather_4.26.12153.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.DesktopAppInstaller_2018.720.2137.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.GetHelp_10.1706.12332.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.Getstarted_6.14.12121.1000_neutral_~_8wekyb3d8bbwe
                    Microsoft.HEIFImageExtension_1.0.11792.0_x64__8wekyb3d8bbwe
                    Microsoft.Messaging_2018.727.1430.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.Microsoft3DViewer_5.1807.6012.1000_neutral_~_8wekyb3d8bbwe
                    Microsoft.MicrosoftOfficeHub_2018.614.804.1000_neutral_~_8wekyb3d8bbwe
                    Microsoft.MicrosoftSolitaireCollection_4.2.8172.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.MicrosoftStickyNotes_2.1.18.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.MixedReality.Portal_2000.18090.1131.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.MSPaint_5.1809.1017.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.Office.OneNote_16001.10730.20033.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.OneConnect_5.1807.1991.1000_neutral_~_8wekyb3d8bbwe
                    Microsoft.People_2018.905.522.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.Print3D_3.1.2612.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.ScreenSketch_2018.817.530.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.SkypeApp_14.30.73.0_neutral_~_kzf8qxf38zg5c
                    Microsoft.StorePurchaseApp_11808.1001.413.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.VP9VideoExtensions_1.0.12611.0_x64__8wekyb3d8bbwe
                    Microsoft.Wallet_2.2.18179.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.WebMediaExtensions_1.0.12341.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.WebpImageExtension_1.0.11551.0_x64__8wekyb3d8bbwe
                    Microsoft.Windows.Photos_2018.18081.14710.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.WindowsAlarms_2018.904.600.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.WindowsCalculator_2018.904.536.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.WindowsCamera_2018.426.90.1000_neutral_~_8wekyb3d8bbwe
                    microsoft.windowscommunicationsapps_16005.10827.20137.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.WindowsFeedbackHub_2018.822.2.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.WindowsMaps_2018.817.1649.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.WindowsSoundRecorder_2018.904.546.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.WindowsStore_11809.1001.813.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.Xbox.TCUI_1.11.29001.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.XboxApp_44.44.7002.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.XboxGameOverlay_1.34.5003.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.XboxGamingOverlay_2.21.25005.1000_neutral_~_8wekyb3d8bbwe
                    Microsoft.XboxIdentityProvider_12.45.6001.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.XboxSpeechToTextOverlay_1.21.13002.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.YourPhone_2018.925.223.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.ZuneMusic_2019.18091.10321.0_neutral_~_8wekyb3d8bbwe
                    Microsoft.ZuneVideo_2019.18082.10311.0_neutral_~_8wekyb3d8bbwe

                    Sử dụng lệnh sau để gỡ bỏ ứng dụng

                    Copy
                    Dism /Online /Remove-ProvisionedAppxPackage /PackageName:PackageName

                    Tệp SetupComplete.cmd tham khảo:

                    Copy
                    reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 0 /f
                    reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v PromptOnSecureDesktop /t REG_DWORD /d 0 /f
                    Dism /Online /Add-Package /PackagePath:C:\Packages\microsoft-windows-netfx3-ondemand-package~31bf3856ad364e35~amd64~~.cab /Quiet /NoRestart
                    Start /wait C:\Packages\winrar-x64.exe /s
                    Dism /Online /Remove-ProvisionedAppxPackage /PackageName:Microsoft.WindowsFeedbackHub_2018.822.2.0_neutral_~_8wekyb3d8bbwe
                    Dism /Online /Remove-ProvisionedAppxPackage /PackageName:Microsoft.Wallet_2.2.18179.0_neutral_~_8wekyb3d8bbwe
                    Dism /Online /Remove-ProvisionedAppxPackage /PackageName:Microsoft.MicrosoftSolitaireCollection_4.2.8172.0_neutral_~_8wekyb3d8bbwe
                    del /Q /F C:\windows\panther\unattend.xml
                    del /Q /F C:\windows\panther\unattendgc\setupact.log
                    rd /s /q C:\Packages
                    rd /s /q C:\Windows\Setup\Scripts

                    Tạo tệp LayoutModification.xml, tệp này có tác dụng ghim ứng dụng vào Start menu

                    Copy
                    <LayoutModificationTemplate xmlns:defaultlayout="http://schemas.microsoft.com/Start/2014/FullDefaultLayout" xmlns:start="http://schemas.microsoft.com/Start/2014/StartLayout" Version="1" xmlns="http://schemas.microsoft.com/Start/2014/LayoutModification">
                      <LayoutOptions StartTileGroupCellWidth="6" />
                      <DefaultLayoutOverride>
                        <StartLayoutCollection>
                          <defaultlayout:StartLayout GroupCellWidth="6">
                            <start:Group Name="Create">
                              <start:Tile Size="2x2" Column="0" Row="0" AppUserModelID="microsoft.windowscommunicationsapps_8wekyb3d8bbwe!Microsoft.WindowsLive.Calendar" />
                              <start:Tile Size="2x2" Column="2" Row="2" AppUserModelID="Microsoft.MSPaint_8wekyb3d8bbwe!Microsoft.MSPaint" />
                              <start:Tile Size="2x2" Column="4" Row="2" AppUserModelID="Microsoft.Office.OneNote_8wekyb3d8bbwe!microsoft.onenoteim" />
                              <start:Tile Size="4x2" Column="2" Row="0" AppUserModelID="microsoft.windowscommunicationsapps_8wekyb3d8bbwe!Microsoft.WindowsLive.Mail" />
                              <start:Tile Size="2x2" Column="0" Row="2" AppUserModelID="Microsoft.MicrosoftOfficeHub_8wekyb3d8bbwe!Microsoft.MicrosoftOfficeHub" />
                            </start:Group>
                            <start:Group Name="Play">
                              <start:Tile Size="1x1" Column="2" Row="0" AppUserModelID="Microsoft.ZuneVideo_8wekyb3d8bbwe!Microsoft.ZuneVideo" />
                              <start:Tile Size="2x2" Column="0" Row="0" AppUserModelID="Microsoft.XboxApp_8wekyb3d8bbwe!Microsoft.XboxApp" />
                              <start:Tile Size="1x1" Column="3" Row="0" AppUserModelID="Microsoft.ZuneMusic_8wekyb3d8bbwe!Microsoft.ZuneMusic" />
                              <start:Tile Size="1x1" Column="2" Row="1" AppUserModelID="Microsoft.WindowsCalculator_8wekyb3d8bbwe!App" />
                              <start:Tile Size="2x2" Column="4" Row="0" AppUserModelID="Microsoft.Windows.Photos_8wekyb3d8bbwe!App" />
                              <start:Tile Size="1x1" Column="3" Row="1" AppUserModelID="Microsoft.WindowsMaps_8wekyb3d8bbwe!App" />
                            </start:Group>
                            <start:Group Name="Explore">
                              <start:Tile Size="2x2" Column="4" Row="0" AppUserModelID="Microsoft.MicrosoftEdge_8wekyb3d8bbwe!MicrosoftEdge" />
                              <start:Tile Size="4x2" Column="0" Row="0" AppUserModelID="Microsoft.WindowsStore_8wekyb3d8bbwe!App" />
                            </start:Group>
                            <start:Group Name="">
                              <start:Tile Size="2x2" Column="2" Row="2" AppUserModelID="Microsoft.MSPaint_8wekyb3d8bbwe!Microsoft.MSPaint" />
                            </start:Group>
                          </defaultlayout:StartLayout>
                        </StartLayoutCollection>
                      </DefaultLayoutOverride>
                    </LayoutModificationTemplate>

                    Tạo tệp trả lời tự động Unattend.xml

                    Copy
                    <?xml version="1.0" encoding="utf-8"?>
                    <unattend xmlns="urn:schemas-microsoft-com:unattend">
                      <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">
                          <OEMInformation>
                            <Manufacturer>Hewlett-Packard©</Manufacturer>
                            <SupportHours>8:AM-6:PM All Days</SupportHours>
                            <SupportPhone>+123 345 678</SupportPhone>
                            <SupportURL>http://www8.hp.com/vn/en/contact-hp/support.html</SupportURL>
                            <Model>HP ProBook 4430s</Model>
                            <Logo>%windir%\system32\oobe\OEMLogo.bmp</Logo>
                          </OEMInformation>
                        </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">
                          <OEMInformation>
                            <Manufacturer>Hewlett-Packard©</Manufacturer>
                            <SupportHours>8:AM-6:PM All Days</SupportHours>
                            <SupportPhone>+123 345 678</SupportPhone>
                            <SupportURL>http://www8.hp.com/vn/en/contact-hp/support.html</SupportURL>
                            <Model>HP ProBook 4430s</Model>
                            <Logo>%windir%\system32\oobe\OEMLogo.bmp</Logo>
                          </OEMInformation>
                        </component>
                      </settings>
                      <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">
                          <FirstLogonCommands>
                            <SynchronousCommand wcm:action="add">
                              <CommandLine>reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SilentInstalledAppsEnabled" /t REG_DWORD /d 0 /f</CommandLine>
                              <Order>1</Order>
                              <RequiresUserInput>false</RequiresUserInput>
                            </SynchronousCommand>
                            <SynchronousCommand wcm:action="add">
                              <CommandLine>reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SystemPaneSuggestionsEnabled" /t REG_DWORD /d 0 /f</CommandLine>
                              <Order>2</Order>
                              <RequiresUserInput>false</RequiresUserInput>
                            </SynchronousCommand>
                            <SynchronousCommand wcm:action="add">
                              <CommandLine>reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SubscribedContent-338388Enabled" /t REG_DWORD /d 0 /f</CommandLine>
                              <Order>3</Order>
                              <RequiresUserInput>false</RequiresUserInput>
                            </SynchronousCommand>
                            <SynchronousCommand wcm:action="add">
                              <CommandLine>reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SubscribedContent-338393Enabled" /t REG_DWORD /d 0 /f</CommandLine>
                              <Order>4</Order>
                              <RequiresUserInput>false</RequiresUserInput>
                            </SynchronousCommand>
                            <SynchronousCommand wcm:action="add">
                              <CommandLine>reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "ShowSyncProviderNotifications" /t REG_DWORD /d 0 /f</CommandLine>
                              <Order>5</Order>
                              <RequiresUserInput>false</RequiresUserInput>
                            </SynchronousCommand>
                            <SynchronousCommand wcm:action="add">
                              <CommandLine>reg add "HKCU\Software\Policies\Microsoft\Windows\Explorer" /v "HideRecentlyAddedApps" /t REG_DWORD /d 1 /f</CommandLine>
                              <Order>6</Order>
                              <RequiresUserInput>false</RequiresUserInput>
                            </SynchronousCommand>
                          </FirstLogonCommands>
                          <Themes>
                            <DesktopBackground>C:\Windows\System32\oobe\OEMWallapaper.png</DesktopBackground>
                            <ThemeName>OEM Theme</ThemeName>
                          </Themes>
                          <TaskbarLinks>
                            <Link0>%allusersprofile%\Microsoft\Windows\Start Menu\Programs\Accessories\Snipping Tool.lnk</Link0>
                            <Link1>%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\System Tools\Control Panel.lnk</Link1>
                          </TaskbarLinks>
                        </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">
                          <FirstLogonCommands>
                          <SynchronousCommand wcm:action="add">
                            <CommandLine>reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SilentInstalledAppsEnabled" /t REG_DWORD /d 0 /f</CommandLine>
                            <Order>1</Order>
                            <RequiresUserInput>false</RequiresUserInput>
                          </SynchronousCommand>
                          <SynchronousCommand wcm:action="add">
                            <CommandLine>reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SystemPaneSuggestionsEnabled" /t REG_DWORD /d 0 /f</CommandLine>
                            <Order>2</Order>
                            <RequiresUserInput>false</RequiresUserInput>
                          </SynchronousCommand>
                          <SynchronousCommand wcm:action="add">
                            <CommandLine>reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SubscribedContent-338388Enabled" /t REG_DWORD /d 0 /f</CommandLine>
                            <Order>3</Order>
                            <RequiresUserInput>false</RequiresUserInput>
                          </SynchronousCommand>
                          <SynchronousCommand wcm:action="add">
                            <CommandLine>reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SubscribedContent-338393Enabled" /t REG_DWORD /d 0 /f</CommandLine>
                            <Order>4</Order>
                            <RequiresUserInput>false</RequiresUserInput>
                          </SynchronousCommand>
                          <SynchronousCommand wcm:action="add">
                            <CommandLine>reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "ShowSyncProviderNotifications" /t REG_DWORD /d 0 /f</CommandLine>
                            <Order>5</Order>
                            <RequiresUserInput>false</RequiresUserInput>
                          </SynchronousCommand>
                          <SynchronousCommand wcm:action="add">
                            <CommandLine>reg add "HKCU\Software\Policies\Microsoft\Windows\Explorer" /v "HideRecentlyAddedApps" /t REG_DWORD /d 1 /f</CommandLine>
                            <Order>6</Order>
                            <RequiresUserInput>false</RequiresUserInput>
                          </SynchronousCommand>
                          </FirstLogonCommand
                          <Themes>
                            <DesktopBackground>C:\Windows\System32\oobe\OEMWallapaper.png</DesktopBackground>
                            <ThemeName>OEM Theme</ThemeName>
                          </Themes>
                          <TaskbarLinks>
                            <Link0>%allusersprofile%\Microsoft\Windows\Start Menu\Programs\Accessories\Snipping Tool.lnk</Link0>
                            <Link1>%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\System Tools\Control Panel.lnk</Link1>
                          </TaskbarLinks>
                        </component>
                      </settings>
                    </unattend>

                    Nội dung chính
                      Bài đăng mới hơn Bài đăng cũ hơn