Windows 10 IoT Enterprise 2019 - Multikiosk rejimi

kirish

Windows 10 IoT Enterprise 2019 Windows 10 ning navbatdagi versiyasi uchun marketing nomi. Ushbu versiyaning chiqarilishi 2018 yil sentyabr oyida e'lon qilingan, mos ravishda 1809 versiyasiga ega, 18 - yil, 09 - oy. Windows 10 1809-ning yangi versiyasi haqida ko'plab maqolalar yozilgan, ammo ularning aksariyati uyda talab qilinadigan turli xil "kamonlar", "go'zalliklar" va turli xil funktsiyalarga bag'ishlangan.
Ushbu maqolada faqat belgilangan maqsadli qurilmalar ishlab chiqaruvchilari orasida talab bo'lishi mumkin bo'lgan funksionallik muhokama qilinadi. Ya'ni, "Kiosk" rejimining yangi imkoniyatlari haqida. Korxona segmentining Windows nashrlari uchun xizmat ko'rsatish sxemalari nomlarini o'zgartirish mavzusi ham ko'rib chiqiladi.

Yangi nom bilan eski xizmat ko'rsatish sxemasi

Qisqa tushuntirishdan boshlaylik: Windows nashrlarining korporativ segmentida Windows yangilanishlarni qabul qiladigan ikkita xizmat sxemasi mavjud. Xizmat diagrammalarida harf belgisi mavjud. Hozirgi vaqtda xizmat ko'rsatish filiallari LTSC va SAC deb ataladi.

LTSC qisqartmasi Uzoq muddatli xizmat ko'rsatish kanali (uzoq muddatli texnik xizmat ko'rsatish bilan). Ilgari bunday kanal LTSB - Long Term Service Branch deb nomlangan edi.Microsoft shunchaki xizmat ko'rsatish kanali nomini o'zgartirdi, xizmatning o'zi esa o'zgarishsiz qoldi.

Microsoft shuningdek, CBB xizmat ko'rsatish bo'limi nomini o'zgartirdi - Biznes uchun joriy filial, endi bu xizmat filiali SAC deb nomlanadi - Yarim yillik kanal. Shunga qaramay, faqat ism o'zgargan.

Ammo shuni ta'kidlash kerakki, LTSC va SAC xizmat ko'rsatish bo'limlari turli xil Windows distributivlaridan foydalanadilar.

SACdagi yangi kiosk rejimi haqida bir oz

Yuqorida aytib o'tganimdek, LTSC va SAC turli xil taqsimotlarga ega. LTSC-da standart universal ilovalar yoki ilovalar do'koni yo'q, lekin SAC mavjud. Shunga ko'ra, LTSC-da Edge brauzeri yo'q, lekin SAC mavjud. Kioskni o'rnatishda Edge brauzerini tanlasangiz, endi ikkita rejim mavjud:

  1. Raqamli belgi yoki interaktiv displey sifatida
  2. Umumiy brauzer kabi

Men bu rejimlarni o'rnatish haqida to'xtalmayman, chunki... O'rnatish juda oddiy va grafik interfeysda amalga oshiriladi. Shunchaki Administratorlar guruhiga aʼzo boʻlmagan foydalanuvchini yarating, EDGE yordamida u uchun kiosk rejimini yoqing va bu rejimlar qanday ishlashini koʻring.

Ko'p ilovalarga ega kiosk

Ba'zi odamlar litsenziyalangan foydalanish deb o'ylashadi Windows 10 IoT Enterprise qurilmada faqat bitta dasturning ishlashini nazarda tutadi, aslida bunday emas. Qurilma bitta biznes vazifasini bajarish uchun mo'ljallangan bo'lishi kerak va foydalanuvchi ish stoliga kirish huquqiga ega bo'lmasligi kerak. Endi Microsoft-ning o'zi ko'plab ilovalardan foydalanish uchun vositani berdi. Ushbu rejim "ko'p dasturli kiosk" deb nomlanadi; bundan keyin qisqalik uchun men uni "multikiosk" deb atayman. Ushbu maqolada biz ushbu rejimni dasturiy ta'minot to'plami va ushbu rejimning ba'zi xususiyatlaridan foydalangan holda sozlashni ko'rib chiqamiz.

Multikiosk rejimi haqida bir oz

Ko'p kiosk rejimi sozlangan foydalanuvchi hisobiga kirganingizda tizim planshet rejimida ishlaydi. Ishga tushirish menyusi ilova plitalarini ko'rsatuvchi to'liq ekranga kengayadi.

Asosiy sozlamalar va rejim imkoniyatlari ro'yxati:

  1. Bir nechta foydalanuvchilar yoki guruhlar uchun sozlash
  2. Har bir foydalanuvchi yoki guruhga individual sozlamalar tayinlanishi mumkin
  3. Universal va klassik ilovalardan foydalanish qobiliyati
  4. Foydalanuvchi tizimga kirganda ilovalardan birini avtomatik ravishda ishga tushirish imkoniyati
  5. Oq ro'yxatga kiritilgan ilovalar
  6. Oq ro'yxat yordamida papkalarga kirish

5-bandga e'tibor qaratish lozim. Odatiy bo'lib, faqat tizim ishlashi uchun zarur bo'lgan ilovalar ishlashiga ruxsat beriladi, ruxsat etilganlar ro'yxatiga boshqa ilovalar qo'shilishi kerak. Bular. Endi AppLocker-ni alohida sozlashingiz shart emas. Aytgancha, AppLocker sozlamalari bilan ziddiyatlarni oldini olish uchun ko'p kiosk rejimida barcha sozlangan AppLocker qoidalari qo'llanilmaydi.

6-band yaxshi variantni ko'rsatadi, ammo hozirda faqat "Yuklashlar" jildiga yozish uchun ruxsat berish mumkin. Tartib universal va klassik ilovalardan foydalanish imkonini beradi. Barcha rejim sozlamalari XML faylida ko'rsatilgan, unda siz bitta dastur kioski uchun sozlamalarni ham belgilashingiz mumkin.

Keling, hammasini sozlashga harakat qilaylik ...

Bizga nima kerak...

  1. Avvalo, bizga multikiosk rejimini qo'llab-quvvatlaydigan tizimning o'zi kerak. Bu yerda yuklab olishingiz mumkin demo versiyasi
  2. Multikioskni o'rnatish bo'yicha ko'rsatmalar
  3. Har qanday XML muharriri
  4. Multikiosk sozlamalarini qo'llash uchun:
    1. 1-sonli usul uchun - ADK tarkibiga kiruvchi ICD. ADK mumkin bu erdan yuklab olish
    2. 2-usul uchun - PsExec yordam dasturi. Foydali dastur bo'lishi mumkin bu erdan yuklab olish

U dedi: "Ketdik!"

Men barcha tajribalarni demo versiyasida emas, balki Windows 10 IoT Enterprise 1809 LTSC x32 tijorat versiyasida o‘tkazaman. Tizim faollashtirilmaydi, chunki faollashtirishning yo'qligi tizimning funksionalligiga ta'sir qilmaydi. Men 32 bitni oldim, chunki u kamroq joy egallaydi va tizim tasvirlari bilan ishlash tezroq bo'ladi.

1-qadam - o'rnatish

Win 10 IoT Enterprise-ni o'rnatish Win 10 Enterprise-ni o'rnatishdan farq qilmaydi, shuning uchun men butun o'rnatish jarayonini tasvirlamayman, faqat ba'zi nuanslar haqida gapiraman.

Har holda, sizga eslatib o'taman, tizimni o'rnatilgan tizimning ustiga o'rnatmang. O'rnatuvchi tizimni o'rnatish joyi haqida so'raganda, kelajakdagi tizim diskidagi barcha bo'limlarni o'chiring va bo'linmagan diskni belgilang.

Tizim keraksiz narsalarni tortib olmaslik uchun tizimni Internetga ulanmasdan o'rnatamiz.

Chunki Biz tizimning zaxira rasmlarini yaratamiz va buning uchun uni audit rejimida muhrlab qo'yamiz, keyin o'rnatishdan so'ng darhol tizimni audit rejimiga yuklash orqali biroz vaqtni tejashingiz mumkin. Buning uchun tizim sizdan hududni tanlashingizni so‘raganda “Miloyatdan boshlaylik. Bu to'g'rimi" degan savolga faqat "Ctrl + Shift + F3" tugmasini bosing.

2-qadam - tizim tasvirini yaratish

Chunki biz tizimni masxara qilamiz va turli xil yangi sozlamalarni sinab ko'ramiz, ehtimol nimadir noto'g'ri bo'lishi mumkin va tizimni asl holatiga qaytarishimiz kerak bo'ladi. Va tezda asl holatiga qaytish uchun siz tizim tasvirini yaratishingiz kerak. Men qiladigan yagona narsa bu "janoblar to'plami" ni nusxalash - skript va javob fayli. Mening barcha fayllarim "Sysprep" papkasida joylashgan bo'lib, men uni tizim diskining ildiziga nusxalayman. Va tabiiyki, men bu "janoblar to'plamini" siz bilan baham ko'raman.

Sysprep.bat - tizimni muhrlash uchun.

@echo off
chcp 1251>nul

net session>nul 2>nul
if %errorLevel% neq 0 (powershell -command "Start-Process "%~s0" -Verb RunAs"&exit)

tasklist /fi "ImageName eq sysprep.exe" | find /i "sysprep.exe"
if %errorlevel% lss 1 (taskkill /im sysprep.exe)

set AdminName=Admin
net user %AdminName%>nul 2>nul
if %errorLevel% neq 0 (call :AddAdmin "%AdminName%")
if %errorLevel% neq 0 (call :ShowMessage "‡‡‡Ошибка создания новой учетной записи администратора "%AdminName%"‡‡Нажмите любую клавишу для завершения работы скрипта"&pause>nul&exit)

pushd "%~dp0"

cls
call :ShowMessage ‡‡‡‡‡‡‡‡‡‡
echo  1 - Запечатать систему в режиме аудита
echo  2 - Запечатать систему в режиме приветствия
:Select
set /p Choice="Введите номер пункта меню: "
if "%Choice%"=="1" (goto Audit)
if "%Choice%"=="2" (goto OOBE)
echo.&echo Выбрано недопустимое значение.&goto Select

exit

:Audit
    call :ShowMessage "‡‡‡‡‡Запечатывание системы в режиме аудита"
    reg add HKLMSoftwareMicrosoftWindowsCurrentVersionRun /v KillSysprep /t REG_SZ /d "taskkill /im sysprep.exe" /f
    %SYSTEMROOT%System32Sysprepsysprep.exe /audit /generalize /shutdown /quiet
goto :eof

:OOBE
    call :ShowMessage "‡‡‡‡‡Запечатывание системы в режиме приветствия"
    reg delete HKLMSoftwareMicrosoftWindowsCurrentVersionRun /v KillSysprep /f
    powershell -command "(Get-Content -path 'Unattend.xml' -Raw).Trim() -replace 'Architecture=""".+?"""','Architecture="""%PROCESSOR_ARCHITECTURE%"""' | Set-Content -path 'Unattend.xml'"
    %SYSTEMROOT%System32Sysprepsysprep.exe /oobe /generalize /shutdown /quiet /unattend:Unattend.xml
goto :eof

:AddAdmin
    setlocal
    set UserName=%~1
    if not defined UserName (echo Не указано имя пользователя&endlocal&exit /b 1)

    call :GetGroupName "S-1-5-32-544" AdminGroup
    if not defined AdminGroup (endlocal&exit /b 2)

    call :GetGroupName "S-1-5-32-545" UserGroup
    if not defined UserGroup (endlocal&exit /b 3)

    net user %UserName% /add
    wmic useraccount where "Name='%UserName%'" set PasswordExpires=False>nul
    net localgroup %AdminGroup% %UserName% /add
    net localgroup %UserGroup% %UserName% /delete
    endlocal&exit /b 0
goto :eof

:GetGroupName
    if "%~1"=="" (echo Не указан SID группы&goto :eof)
    set %2=
    for /f "tokens=2 delims= " %%i in ('whoami /groups /fo table^|find "%~1"') do set %2=%%i
    if not defined %2 (echo Ошибка определения имени группы по SID'у "%~1")
goto :eof

:ShowMessage
    setlocal enabledelayedexpansion
    set String=%~1
    if not defined String (echo.&setlocal disabledelayedexpansion&goto :eof)
    set /a ConCols=120 & set /a Num=1
    set "String[!Num!].str=%String:‡=" & set /a Num+=1 & set "String[!Num!].str=%"
    for /l %%a in (1,1,%Num%) do (
        for /l %%b in (0,1,%ConCols%) do if "!String[%%a].str:~%%b!" == "" (set "String[%%a].str= !String[%%a].str! "&set /a String[%%a].len-=1) else (set /a String[%%a].len+=0||set /a String[%%a].len=0)
        if not defined String[%%a].str (set String[%%a].str= )
        if not !String[%%a].len! equ 0 (call set String[%%a].str=%%String[%%a].str:~,!String[%%a].len!%%)
        if "!String[%%a].str: =!"=="" (echo.) else (echo !String[%%a].str!))
    setlocal disabledelayedexpansion
goto :eof

Ishga tushganda, skript "Administrator" hisobining mavjudligini tekshiradi va agar u yo'q bo'lsa, uni yaratadi. Hisob qaydnomasi Administratorlar guruhiga qo'shiladi.

Unattend.xml – sysprep uchun javob fayli.

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
    <settings pass="specialize">
        <component name="Microsoft-Windows-Deployment" 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">
            <RunSynchronous>
                <RunSynchronousCommand wcm:action="add">
                    <Path>reg add HKLMSoftwareMicrosoftWindowsCurrentVersionSetupOOBE /v SetupDisplayedProductKey /t REG_DWORD /d 1 /f</Path>
                    <Order>1</Order>
                    <Description>Dont show key page</Description>
                </RunSynchronousCommand>
                <RunSynchronousCommand wcm:action="add">
                    <Path>reg add HKLMSoftwareMicrosoftWindowsCurrentVersionSetupOOBE /v UnattendCreatedUser /t REG_DWORD /d 1 /f</Path>
                    <Order>2</Order>
                    <Description>Dont make account</Description>
                </RunSynchronousCommand>
                <RunSynchronousCommand wcm:action="add">
                    <Path>cmd.exe /c rd %systemdrive%Sysprep /s /q</Path>
                    <Order>3</Order>
                    <Description>Del Folder</Description>
                </RunSynchronousCommand>
            </RunSynchronous>
        </component>
        <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">
            <AutoLogon>
                <Enabled>true</Enabled>
                <Username>Admin</Username>
            </AutoLogon>
        </component>
    </settings>
    <settings pass="oobeSystem">
        <component name="Microsoft-Windows-International-Core" 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">
            <InputLocale>en-US; ru-RU</InputLocale>
            <SystemLocale>ru-RU</SystemLocale>
            <UILanguage>ru-RU</UILanguage>
            <UILanguageFallback></UILanguageFallback>
            <UserLocale>ru-RU</UserLocale>
        </component>
        <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">
            <OOBE>
                <HideEULAPage>true</HideEULAPage>
                <HideLocalAccountScreen>true</HideLocalAccountScreen>
                <HideOEMRegistrationScreen>true</HideOEMRegistrationScreen>
                <HideOnlineAccountScreens>true</HideOnlineAccountScreens>
                <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
                <ProtectYourPC>1</ProtectYourPC>
            </OOBE>
        </component>
    </settings>
</unattend>

Audit rejimida muhrlanganda, skript har safar sysprep oynasini qo'lda yopmaslik uchun "sysprep.exe" jarayonini tugatish uchun ro'yxatga olish kitobiga buyruq qo'shadi. Salom rejimida muhrlanganda, skript ro'yxatga olish kitobidan oynani yopish buyrug'ini olib tashlaydi va o'zi javob faylidagi arxitektura qiymatini joriy qiymatga o'zgartiradi. Javob faylida tizimni foydalanuvchi shovqinisiz yuklash parametrlari va tizim drayverining ildizidagi "Sysprep" papkasini o'chirish buyrug'i mavjud.

Endi men "Sysprep.bat" yordamida tizimni audit rejimida muhrlab qo'yaman va tizimning rasmini olaman. Men tizimni DISM yordamida tasvirlayman va faqat tizim tovushini tasvirlayman. Agar siz butun diskni emas, balki faqat tizim hajmini tasvirlasangiz, tizimni ishga tushirgandan so'ng, "WindowsSystem32Recovery" katalogining mazmunini birinchi jildga "RecoveryWindowsRE" jildiga nusxalashni unutmang. Buni OSni yuklashdan oldin qilish kerak bo'ladi. OTni yuklagandan so'ng, "WindowsSystem32Recovery" katalogi allaqachon bo'sh bo'ladi.

3-qadam - tizimni ruslashtirish

Agar sizda ushbu paket mavjud bo'lsa, til to'plamini Internetga ulanmasdan o'rnatish mumkin. Agar yo'q bo'lsa, sozlamalarga tilni qo'shganingizda tizimning o'zi uni Internetdan yuklab oladi. OTning oldingi versiyalaridan til paketini olish shart emas. Windows 10 1809 uchun Windows 10 1809 uchun maxsus til paketi bo'lishi kerak.

Microsoft o'zining sozlamalarini klassik menyudan yangisiga bosqichma-bosqich o'tkazish rejasiga amal qilmoqda, shuning uchun klassik boshqaruv panelida endi tilni o'zgartirish va til paketini o'rnatish sozlamalarini topa olmaysiz. Ushbu sozlamalar endi faqat tizim parametrlarida.

Audit rejimida siz "Ishga tushirish" menyusidan tizim sozlamalarini ochishda muammoga duch kelishingiz mumkin; tizim sozlamalarini ochish uchun "ms-settings:" buyrug'ini bajaring, buyruq oxiridagi ikki nuqtaga e'tibor bering, busiz buyruq bo'ladi. ishlamaydi. Ushbu buyruq yordamida tizim parametrlarini bir marta ochgandan so'ng, uni grafik menyu yordamida ochish mumkin.

Ammo tizim sozlamalarida siz til paketini o'rnatishingiz mumkin, agar tizim Internetga ulangan bo'lsa, mahalliy fayldan til paketini o'rnatishni tanlash imkoniyati yo'q.

Men tizimni mahalliylashtirish jarayonini tasvirlamayman, chunki... bu maqolani sezilarli darajada murakkablashtiradi, ayniqsa mahalliylashtirish jarayoni batafsil bu yerda tasvirlangan. Lekin men sizning e'tiboringizni konsol yordamida til paketini o'rnatgandan so'ng tizim tilini o'zgartirishning o'ziga xos xususiyatiga qaratmoqchiman. Bu xususiyat men avvalroq havola bergan wiki-da, kichik bo'limda tasvirlangan "Tillar ro'yxatiga til qo'shish".

Men til paketini internetga ulanmasdan o'rnataman.

Tizimni to'liq lokalizatsiya qilgandan so'ng, tizimning rasmini yaratishni unutmang.

4-qadam - Kerakli ilovalarni o'rnating

Chunki LTSB va LTSC tizimlarida ilovalar doʻkoni yoʻqligi sababli, Microsoft doʻkonidan ilovalarni oʻrnatish baʼzi qiyinchiliklarni keltirib chiqaradi, yaʼni dasturni yuklab olish. Ilovalarni yuklab olish uchun Adguard kompaniyasi juda qulay xizmatni yaratdi - "Adguard do'koni", uning yordamida ilovalar va ularning komponentlari uchun vaqtinchalik yuklab olish havolalarini olishingiz mumkin.

Ilovani o'rnatish uchun sizga "Appx" va "AppxBundle" kengaytmali fayllar kerak bo'ladi. Ilovaning o'zini o'rnatishdan oldin uning tarkibiy qismlarini o'rnatishingiz kerak. Qoida tariqasida, dastur komponentlarini fayl nomi bilan intuitiv ravishda ajratish mumkin.

Maqolani juda uzun qilib qo'ymaslik uchun men ilovalarni o'rnatish jarayonini batafsil tasvirlab bermayman, ayniqsa o'rnatish haqida ma'lumot mavjud batafsil ko'rsatmalar. Ammo joriy hisobingizga ilovalarni o'rnatishning yana bir usulini qo'shaman. Ilovalar dastur yordamida o'rnatilishi mumkin "Ilova o'rnatuvchisi", lekin ilovalarni o'rnatish uchun sizga Internet ulanishi kerak bo'ladi, lekin ilovalarni ikki marta bosish bilan o'rnatish mumkin va sizga uning komponentlari kerak bo'lmaydi, barcha kerakli komponentlar yuklab olinadi va o'rnatiladi "Ilova o'rnatuvchisi".

Va kichik bir eslatma, dasturni joriy hisobga o'rnatishda siz tizimni muhrlay olmaysiz. Tizimni muhrlab qo'yishingiz uchun ilovalarni qanday o'rnatish kerak, yuqoridagi ko'rsatmalarga qarang. Va multikioskning ishlashini tekshirish uchun mavjud ilovalar etarli.

5-qadam – multikiosk uchun konfiguratsiya faylini yaratish

Endi biz eng qiziqarli qismga - kiosk rejimini sozlashga o'tamiz. Keling, ko'rib chiqaylik ko'rsatma biz ko'rgan sozlamalarga muvofiq. Avvalo, biz XML konfiguratsiya faylini yaratishimiz kerak, uning to'liq namunasini bu erda topish mumkin. mana qarang.

Keling, plitka tartibini o'rnatishdan boshlaylik. XML plitkalarini sozlash konfiguratsiyasini yaratishning eng oson yo'li ularning hozirgi holatini eksport qilish.

Avvalo, "Ishga tushirish" menyusiga kerakli ilovalarning plitalarini qo'shamiz. "Win+s" qidiruviga qo'ng'iroq qiling, kerakli dasturni toping, ustiga sichqonchaning o'ng tugmachasini bosing va "Bosh ekranga mahkamlash" -ni tanlang.

Men quyidagi ilovalarni mahkamladim:

  • Notepad
  • Kalkulyator
  • Internet Explorer
  • bo'yoq
  • Wordpad
  • parametrlar
  • Windows xavfsizligi

Oxirgi ikkita ilova mahkamlangan, chunki... Standart LTSC paketida oddiygina boshqa universal ilovalar mavjud emas. E'tibor bering, ish stoli plitalari yorliqlarga bog'lanadi. Endi, plitkalarni to'g'ridan-to'g'ri Boshlash menyusida siljitish orqali men mahkamlangan plitkalarni ikki guruhga ajrataman. Plitkalarning yangi guruhini yaratish uchun plitkani boshqa plitkalarga qaraganda ancha balandroq yoki pastroq torting, bu intuitiv ajratuvchini ta'kidlaydi. Guruhlarni o'zingizning xohishingiz bilan nomlashingiz mumkin, buning uchun sichqoncha kursorini guruh ustiga qo'ying va "Guruhga nom bering" yozuvi paydo bo'lganda, sichqonchaning chap tugmasini bosing. Men birinchi guruhni "Sozlamalar" deb nomlayman, u "Sozlamalar" va "Windows xavfsizligi" plitalarini o'z ichiga oladi. Men boshqa barcha plitkalarni o'z ichiga olgan ikkinchi guruhni "Ofis ilovalari" deb nomlayman. Aytgancha, siz guruh nomining yuqori o'ng tomonida joylashgan ikkita chiziqdan foydalanib, barcha plitalar guruhlarini sudrab ko'chirishingiz mumkin.

Chunki "Windows Xavfsizlik" plitasida nom to'liq mos kelmaydi, men uning o'lchamini "Keng" ga o'zgartiraman. Plitka o'lchamini o'zgartirish uchun kafel ustiga sichqonchaning o'ng tugmachasini bosing va "O'lchamini o'zgartirish" -ni tanlang.

Konfiguratsiyadan so'ng biz joriy holatni eksport qilamiz va PowerShell muhitida buyruqni bajaramiz - "Export-StartLayout - C: SysprepStartLayout.xml yo'li".

Keyinchalik, eng oson yo'li sozlamalar faylini o'zingiz yaratish emas, balki bu yerdan namuna faylini oling sozlamalar - "Nusxalash" tugmasini bosing, tarkibni bloknotga joylashtiring va "MultiAppKiosk.xml" sifatida saqlang. Endi biz sozlamalarni o'zimizga o'zgartiramiz. Biriktirilgan plitkalar sozlamalarini o'zgartirish uchun butun "StartLayoutCollection" blokini "StartLayout.xml" dan "MultiAppKiosk.xml" ga ko'chiring. Ilovalarni ruxsat etilganlarga qo'shish uchun siz universal dastur identifikatorlarini "AllowedApps" bo'limiga kiritishingiz kerak va xuddi shu blokda klassik ilovalarning bajariladigan fayllariga to'liq yo'lni qo'shishingiz kerak, bu yorliqlar xususiyatlarida ko'rsatilgan. plitkalarga murojaat qiling. Tezkor yorliqni olish uchun mahkamlangan plitka ustiga sichqonchaning o'ng tugmachasini bosing va Ko'proq > Fayl joylashuviga o'tish-ga o'ting. E'tibor bering, "AppUserModelId" parametri universal ilova identifikatorini belgilash uchun ishlatiladi va "DesktopAppPath" parametri ish stoli ilovasiga to'liq yo'lni ko'rsatish uchun ishlatiladi. Va yana bir kichik nuance, agar siz x64 tizimida IE dan foydalanishni rejalashtirmoqchi bo'lsangiz, ruxsat etilgan ilovalar ro'yxatida "Program FilesInternet Exploreriexplore.exe" va "Program Files (x86)Internet Exploreriexplore" bajariladigan fayl uchun ikkita yo'lni belgilashingiz kerak. exe".

Men papkalarga kirishga ruxsat bermayman, shuning uchun "FileExplorerNamespaceRestrictions" bo'limini o'chirib tashlayman.

Vazifalar panelini ko'rsatish meni bezovta qilmaydi, shuning uchun men hamma narsani "Vazifa paneli" bo'limida bo'lgani kabi qoldiraman.

Misolda ikkita profil ko'rsatilgan, lekin menda faqat bitta profil bo'ladi, shuning uchun ikkinchi profilga ega bo'lim o'chirilishi mumkin. O'chirishdan oldin dasturni argumentlar bilan avtomatik ravishda ishga tushirish misoliga e'tibor bering.

"Konfiguratsiyalar" bo'limida hisoblar profillarga bog'langan; bir nechta hisoblarni bitta profilga bog'lash mumkinligini unutmang. Lekin chunki Meni faqat bitta hisob qiziqtiradi, keyin birinchisidan tashqari barcha ulanishlarni o'chirib tashlayman - "Config" bloklari. Qolgan bog'lashda men "Foydalanuvchi" nomini yozaman.

Men ushbu faylni parametrlari bilan oldim

MultiAppKiosk.xml

<?xml version="1.0" encoding="utf-8" ?>
<AssignedAccessConfiguration 
  xmlns="http://schemas.microsoft.com/AssignedAccess/2017/config"
  xmlns:rs5="http://schemas.microsoft.com/AssignedAccess/201810/config"
  >
  <Profiles>
      <Profile Id="{9A2A490F-10F6-4764-974A-43B19E722C23}">
          <AllAppsList>
              <AllowedApps>
                  <App AppUserModelId="WINDOWS.IMMERSIVECONTROLPANEL_CW5N1H2TXYEWY!MICROSOFT.WINDOWS.IMMERSIVECONTROLPANEL" />
                  <App AppUserModelId="Microsoft.Windows.SecHealthUI_cw5n1h2txyewy!SecHealthUI" />
                  <App DesktopAppPath="%windir%system32notepad.exe" />
                  <App DesktopAppPath="C:Program FilesInternet Exploreriexplore.exe" />
                  <App DesktopAppPath="%windir%system32win32calc.exe" />
                  <App DesktopAppPath="%windir%system32mspaint.exe" />
                  <App DesktopAppPath="%ProgramFiles%Windows NTAccessorieswordpad.exe" />
              </AllowedApps>
          </AllAppsList>
          <StartLayout>
              <![CDATA[<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="Настройки">
                            <start:Tile Size="2x2" Column="0" Row="0" AppUserModelID="WINDOWS.IMMERSIVECONTROLPANEL_CW5N1H2TXYEWY!MICROSOFT.WINDOWS.IMMERSIVECONTROLPANEL" />
                            <start:Tile Size="4x2" Column="2" Row="0" AppUserModelID="Microsoft.Windows.SecHealthUI_cw5n1h2txyewy!SecHealthUI" />
                          </start:Group>
                          <start:Group Name="Офисные приложения">
                            <start:DesktopApplicationTile Size="2x2" Column="2" Row="2" DesktopApplicationLinkPath="%ALLUSERSPROFILE%MicrosoftWindowsStart MenuProgramsAccessoriesWordpad.lnk" />
                            <start:DesktopApplicationTile Size="2x2" Column="0" Row="0" DesktopApplicationLinkPath="%APPDATA%MicrosoftWindowsStart MenuProgramsAccessoriesNotepad.lnk" />
                            <start:DesktopApplicationTile Size="2x2" Column="2" Row="0" DesktopApplicationLinkPath="%ALLUSERSPROFILE%MicrosoftWindowsStart MenuProgramsAccessoriesCalculator.lnk" />
                            <start:DesktopApplicationTile Size="2x2" Column="0" Row="2" DesktopApplicationLinkPath="%ALLUSERSPROFILE%MicrosoftWindowsStart MenuProgramsAccessoriesPaint.lnk" />
                            <start:DesktopApplicationTile Size="2x2" Column="4" Row="0" DesktopApplicationLinkPath="%APPDATA%MicrosoftWindowsStart MenuProgramsAccessoriesInternet Explorer.lnk" />
                          </start:Group>
                        </defaultlayout:StartLayout>
                      </StartLayoutCollection>
                    </DefaultLayoutOverride>
                  </LayoutModificationTemplate>
              ]]>
          </StartLayout>
          <Taskbar ShowTaskbar="true"/>
      </Profile>
  </Profiles>
  <Configs>
      <Config>
          <Account>User</Account>
          <DefaultProfile Id="{9A2A490F-10F6-4764-974A-43B19E722C23}"/>
      </Config>
  </Configs>
</AssignedAccessConfiguration>

XML konfiguratsiya fayllarini yaratganingizda, har bir profil nafaqat bitta XML faylida, balki bitta OS ichida noyob identifikatorga ega bo'lishi kerakligini unutmang. Bular. Ideal holda, chalkashmaslik uchun har safar yangi identifikator yaratishingiz mumkin; buni PowerShell muhitida “[guid]::NewGuid()” buyrug'i yordamida amalga oshirish mumkin. Va faylni "UTF-8" kodlashda saqlashni unutmang; agar fayl "ANSI" kodlashda saqlangan bo'lsa, unda XML faylida kirill yozuvi bo'lsa, tayyorgarlik paketini yaratishda siz xatoga duch kelasiz.

6-qadam - multikiosk sozlamalarini qo'llash

Keling, konfiguratsiya faylida tasvirlangan sozlamalarni qo'llashning ikkita usulini ko'rib chiqaylik. Birinchisi, ICDda yaratilishi kerak bo'lgan ta'minot paketi orqali. Ba'zilar uchun, ehtimol, bu usul ko'proq tanish bo'ladi. Ikkinchisi, "MDM Bridge WMI Provider" dan foydalanish, bu usul men uchun qulayroq bo'lib tuyuldi.

Boshqaruv # 1

Kimda ICD yo'q? ADK yuklab olish va o'rnating. ADK ni o'rnatish juda oddiy, komponentlar to'plami sukut bo'yicha qoldirilishi mumkin.

ICD-ni ishga tushiring, "Kengaytirilgan tayyorgarlik" plitasini bosing, loyiha nomi va papkasini belgilang va "Keyingi" tugmasini bosing. Keyingi oynada "Windows ish stolining barcha nashrlari" ni tanlang va "Keyingi" tugmasini bosing. Tayyorlash paketini import qilishni o'tkazib yuborishingiz mumkin, "Finish" tugmasini bosing.

"Ish vaqti sozlamalari" ochiladigan menyusini kengaytiring, so'ng "AssignedAccess" pastki menyusini kengaytiring va "MultiAppAssignedAccessSettings" ni tanlang. ICD oynasining o'rta qismining yuqori qismida "Browse" tugmasini bosing va sozlamalar bilan XML faylining joylashishini ko'rsating. Har holda, siz "Ctrl + s" tugmachalarini bosib loyihani saqlashingiz mumkin. ICD ning yuqori chap qismida "Eksport" ni tanlang va ochiladigan menyudan "Ta'minot paketi" ni tanlang. Egasi sifatida "IT ma'muri" ni tanlang; qolgan barcha savollarni "Keyingi" tugmasini bosish orqali o'tkazib yuborish mumkin va oxirida "Yaratish" va "Finish" tugmasini bosing.

O'rnatilgan tizimda "Foydalanuvchi" foydalanuvchisini yaratishni unutmang, uni "Administratorlar" guruhiga qo'shib bo'lmaydi, aks holda multikiosk ishlamaydi. Men kompyuter boshqaruvida hech qachon muddati tugamaydigan parol bilan foydalanuvchi yaratdim.

Endi biz oldindan o'rnatilgan tizimda tayyorgarlik paketini ishga tushiramiz. Tayyorgarlik paketini qo'llaganingizdan so'ng, Boshlash menyusi va administrator menyusi o'zgaradi. Chapdagi boshlang'ich ustunda tugmalar yo'qolishi kerak: "Hujjatlar", "Rasm", "Tanlovlar". Boshlash menyusi o'zgarmagan bo'lsa, unda biror narsa noto'g'ri ketdi. O‘rnatilgan paketni Sozlamalar > Hisoblar > Ish yoki maktab hisobiga kirish > Ta’minot paketini qo‘shish yoki olib tashlash oynasini ochish orqali olib tashlash mumkin.

Agar ishga tushirish menyusi o'zgargan bo'lsa, sozlamalar tizimga qo'llaniladi, multikiosk sozlangan foydalanuvchi sifatida tizimga kiring va natijaga qarang.

Boshqaruv # 2

"MDM Bridge WMI Provider" yordamida sozlamalarni qo'llash bu yerda tasvirlangan. Ushbu usulning qulayligi - foydalanishning moslashuvchanligi va tayyorgarlik paketini yaratish uchun zarur bo'lgan ko'plab qo'lda operatsiyalardan xalos bo'lish qobiliyati. Bu erda har kim o'zi uchun qulay bo'lgan qaror qabul qilishi mumkin. Men o'zim uchun bir nechta skript tayyorladim.

MiltiKiosk.bat - ishga tushirish skripti

@echo off
chcp 1251>nul

if not exist "%~dp0psexec.exe" call :ShowMessage "‡‡‡‡‡‡‡‡‡‡‡‡‡Для работы скрипта необходим файл psexec.exe‡‡Для завершения работы скрипта нажмите любую клавишу"&pause>nul&exit

net session>nul 2>nul
if %errorLevel% neq 0 (powershell -command "Start-Process "%~s0" -Verb RunAs"&exit)

for /f "tokens=2 delims==" %%i in ('wmic useraccount where "Name='%UserName%'" get SID /value^|find "SID"') do set SID=%%i
reg add HKU%SID%SoftwareSysinternalsPsExec /v EulaAccepted /t REG_DWORD /d 1 /f

for /f %%i in ('dir "%~dp0%~n0*.ps1" /b /o:n') do set PSFilePath=%~dp0%%i
if not defined PSFilePath (echo Не найдено PS файлов с началом названия - "%~n0"&pause&exit)
set PSFilePath=%PSFilePath: =` %
"%~dp0psexec.exe" -i -s powershell -command "Start-Process powershell.exe -ArgumentList '-ExecutionPolicy Unrestricted -Command %PSFilePath%'"

exit

:ShowMessage
    setlocal enabledelayedexpansion
    set String=%~1
    if not defined String (echo.&setlocal disabledelayedexpansion&goto :eof)
    set /a ConCols=120 & set /a Num=1
    set "String[!Num!].str=%String:‡=" & set /a Num+=1 & set "String[!Num!].str=%"
    for /l %%a in (1,1,%Num%) do (
        for /l %%b in (0,1,%ConCols%) do if "!String[%%a].str:~%%b!" == "" (set "String[%%a].str= !String[%%a].str! "&set /a String[%%a].len-=1) else (set /a String[%%a].len+=0||set /a String[%%a].len=0)
        if not defined String[%%a].str (set String[%%a].str= )
        if not !String[%%a].len! equ 0 (call set String[%%a].str=%%String[%%a].str:~,!String[%%a].len!%%)
        if "!String[%%a].str: =!"=="" (echo.) else (echo !String[%%a].str!))
    setlocal disabledelayedexpansion
goto :eof

MiltiKiosk_Ver.12.ps1 - asosiy skript

Function ConvertEncoding ([string]$From, [string]$To) {
    Begin{$encFrom = [System.Text.Encoding]::GetEncoding($From);$encTo = [System.Text.Encoding]::GetEncoding($To)}
    Process{$bytes = $encTo.GetBytes($_);$bytes = [System.Text.Encoding]::Convert($encFrom, $encTo, $bytes);$encTo.GetString($bytes) -replace [char]0, ''}
}

Function ShowMessage ($Message='', $Align=0) {
    Try {$Align = [decimal]$Align} Catch {Return 'Для параметра Align может быть указано только число' | ConvertEncoding 'windows-1251' -To 'UTF-16'}
    if ($Message -is [int]) {for ($i=1; $i -le $Message; $i++) {Write-Host}; Return}
    if ([System.Text.Encoding]::Default.WindowsCodePage -eq 1252) {$Message = $Message | ConvertEncoding 'windows-1251' -To 'UTF-16'}
    if ($Message -is [string]) {[array] $Message = $Message}
    foreach ($String in $Message) {
        Try {$String = [int]$String} Catch {}
        if ($String -is [int]) {for ($i=1; $i -le $String; $i++) {Write-Host}; continue}
        if ($Host.UI.RawUI.BufferSize.Width -gt $String.Length) {
            if ($Align -eq 0) {Write-Host $String
            } else {Write-Host ("{0}{1}" -f (' ' * (([Math]::Max(0, $Host.UI.RawUI.BufferSize.Width / $Align) - [Math]::Floor($String.Length / $Align)))), $String)}
        } else {Write-Host $String}
    } 
}

$script:NameSpace="rootcimv2mdmdmmap"
$script:ClassName="MDM_AssignedAccess"
$script:MultiAppKiosk = Get-CimInstance -Namespace $NameSpace -ClassName $ClassName
if (-not $MultiAppKiosk) {ShowMessage -Message (3, 'Ошибка получения объекта настроек', 2, 'Нажмите "Enter" для завершения рабты скрипта') -Align 2; Read-Host; Exit}

Function MainMenu() {
    ShowMessage (13, ' 0 - Выход', ' 1 - Выбрать XML-файл для установки', ' 2 - Показать текущую конфигурацию мультикиоска', ' 3 - Удалить настройки мультикиоска', 1)
    $local:PromptText = 'Выберите действие'
    if ([System.Text.Encoding]::Default.WindowsCodePage -eq 1252) {$PromptText = $PromptText | ConvertEncoding 'windows-1251' -To 'UTF-16'}

    $local:Selections = 1..2
    While ($true) {
        $Select = Read-Host -Prompt $PromptText
        Switch ($Select) {
            0 {exit}
            1 {XMLSelection}
            2 {ShowMessage -Message (1, 'Начало конфигурации') -Align 2; Write-Host $MultiAppKiosk.Configuration; ShowMessage -Message ('Конец конфигурации', 1, 'Для возврата в меню нажмите "Enter"', 1) -Align 2; Read-Host}
            3 {$MultiAppKiosk.Configuration = $Null; Set-CimInstance -CimInstance $MultiAppKiosk; ShowMessage -Message (1, 'Выполнена команда удаления настроек', 1) -Align 2}
            DEFAULT {ShowMessage 'Выбрано недопустимое значение'}
        }
        if ($Selections -contains $Select) {Clear-Host; ShowMessage (15, ' 0 - Выход', ' 1 - Выбрать XML-файл для установки', ' 2 - Показать текущую конфигурацию мультикиоска', ' 3 - Удалить настройки мультикиоска', 1)}
    }
}

Function XMLSelection() {
    Clear-Host

    if (!(Test-Path -Path $PSScriptRoot'XML')) {ShowMessage -Message (13, 'Не найден каталог', $('"'+$PSScriptRoot+'XML"'), 1, 'Нажмите "Enter" для возврвта в предыдущее меню') -Align 2; Read-Host; Return}

    $local:XMLList = @()
    $XMLList += Get-ChildItem -Path $PSScriptRoot'XML' -name -filter '*.xml'
    if ($XMLList.Count -eq  0) {ShowMessage -Message (13, 'Не найдено XML-файлов в каталоге', $('"'+$PSScriptRoot+'XML"'), 1, 'Нажмите "Enter" для возврвта в предыдущее меню') -Align 2; Read-Host; Return}

    [int]$local:Indent = 13 - $XMLList.Count / 2; if ($Indent -lt 1) {$Indent = 1}
    ShowMessage ($Indent, ' 0 - Вернуться в предыдущее меню')
    for ($i=0; $i -le $XMLList.GetUpperBound(0); $i++) {Write-Host $(' '+($i+1)+' - '+$XMLList[$i])}
    Write-Host
    $local:PromptText = 'Выберите файл для установки'
    if ([System.Text.Encoding]::Default.WindowsCodePage -eq 1252) {$PromptText = $PromptText | ConvertEncoding 'windows-1251' -To 'UTF-16'}

    $local:Selections = 1..$XMLList.Count
    $local:BackToPrevMenu = 0
    While ($BackToPrevMenu -eq 0) {
        $Select = Read-Host -Prompt $PromptText
        Switch ($Select) {
            0 {$BackToPrevMenu = 1}
            {$Selections -contains $Select} {ShowMessage $('Дана команда на применение настроек из файла '+$XMLList[$Select-1]);
                $local:Config = (Get-Content -encoding UTF8 -path $($PSScriptRoot+'XML'+$XMLList[$Select-1]) -Raw).Trim()
                $local:GUIDs = [regex]::matches($Config, '{.+?}') | select -ExpandProperty Value | Get-Unique
                foreach ($GUID in $GUIDs) {$Config = $Config -replace $(''+$GUID),$('{'+[guid]::NewGuid()+'}')}
                $Config = $Config -replace '&','&' -replace '<','<' -replace '>','>' -replace "'",''' -replace '"','"'
                $MultiAppKiosk.Configuration = $Config
                Set-CimInstance -CimInstance $MultiAppKiosk
            }
            DEFAULT {ShowMessage ('Выбрано недопустимое значение')} 
        }
    }
}

MainMenu

Agar siz mening yechimimdan foydalanmoqchi bo'lsangiz, yuqoridagi skriptlarni asl nomlari bilan bitta papkaga saqlang va "PsExec.exe" faylini o'sha papkaga qo'ying. Xuddi shu papkada "XML" papkasini yarating va multikioskni sozlash uchun XML fayllarini nusxalang. Men birinchi usulda bo'lgani kabi bir xil fayldan foydalanaman.

MultiAppKiosk.xml

<?xml version="1.0" encoding="utf-8" ?>
<AssignedAccessConfiguration 
  xmlns="http://schemas.microsoft.com/AssignedAccess/2017/config"
  xmlns:rs5="http://schemas.microsoft.com/AssignedAccess/201810/config"
  >
  <Profiles>
      <Profile Id="{9A2A490F-10F6-4764-974A-43B19E722C23}">
          <AllAppsList>
              <AllowedApps>
                  <App AppUserModelId="WINDOWS.IMMERSIVECONTROLPANEL_CW5N1H2TXYEWY!MICROSOFT.WINDOWS.IMMERSIVECONTROLPANEL" />
                  <App AppUserModelId="Microsoft.Windows.SecHealthUI_cw5n1h2txyewy!SecHealthUI" />
                  <App DesktopAppPath="%windir%system32notepad.exe" />
                  <App DesktopAppPath="C:Program FilesInternet Exploreriexplore.exe" />
                  <App DesktopAppPath="%windir%system32win32calc.exe" />
                  <App DesktopAppPath="%windir%system32mspaint.exe" />
                  <App DesktopAppPath="%ProgramFiles%Windows NTAccessorieswordpad.exe" />
              </AllowedApps>
          </AllAppsList>
          <StartLayout>
              <![CDATA[<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="Настройки">
                            <start:Tile Size="2x2" Column="0" Row="0" AppUserModelID="WINDOWS.IMMERSIVECONTROLPANEL_CW5N1H2TXYEWY!MICROSOFT.WINDOWS.IMMERSIVECONTROLPANEL" />
                            <start:Tile Size="4x2" Column="2" Row="0" AppUserModelID="Microsoft.Windows.SecHealthUI_cw5n1h2txyewy!SecHealthUI" />
                          </start:Group>
                          <start:Group Name="Офисные приложения">
                            <start:DesktopApplicationTile Size="2x2" Column="2" Row="2" DesktopApplicationLinkPath="%ALLUSERSPROFILE%MicrosoftWindowsStart MenuProgramsAccessoriesWordpad.lnk" />
                            <start:DesktopApplicationTile Size="2x2" Column="0" Row="0" DesktopApplicationLinkPath="%APPDATA%MicrosoftWindowsStart MenuProgramsAccessoriesNotepad.lnk" />
                            <start:DesktopApplicationTile Size="2x2" Column="2" Row="0" DesktopApplicationLinkPath="%ALLUSERSPROFILE%MicrosoftWindowsStart MenuProgramsAccessoriesCalculator.lnk" />
                            <start:DesktopApplicationTile Size="2x2" Column="0" Row="2" DesktopApplicationLinkPath="%ALLUSERSPROFILE%MicrosoftWindowsStart MenuProgramsAccessoriesPaint.lnk" />
                            <start:DesktopApplicationTile Size="2x2" Column="4" Row="0" DesktopApplicationLinkPath="%APPDATA%MicrosoftWindowsStart MenuProgramsAccessoriesInternet Explorer.lnk" />
                          </start:Group>
                        </defaultlayout:StartLayout>
                      </StartLayoutCollection>
                    </DefaultLayoutOverride>
                  </LayoutModificationTemplate>
              ]]>
          </StartLayout>
          <Taskbar ShowTaskbar="true"/>
      </Profile>
  </Profiles>
  <Configs>
      <Config>
          <Account>User</Account>
          <DefaultProfile Id="{9A2A490F-10F6-4764-974A-43B19E722C23}"/>
      </Config>
  </Configs>
</AssignedAccessConfiguration>

Skriptning xususiyatlari haqida bir oz. Skript "UTF8" kodli XML fayllardan foydalanish uchun mo'ljallangan; agar siz "ANSI" kodlashdan foydalanmoqchi bo'lsangiz, faylni o'qish opsiyasidan "kodlash UTF8" parametrini olib tashlang. XML fayllarini belgilarni almashtirmasdan "XML" jildiga joylashtirishingiz kerak; skriptning o'zi maxsus belgilarni tegishli belgilar bilan almashtiradi. Foydalanuvchilarni profillar bilan bog'lashning GUID-larida chalkashmaslik uchun siz shunchaki jingalak qavslar ichida foydalanuvchi raqami yoki nomini ko'rsatishingiz mumkin; jingalak qavslardagi barcha tarkib GUIDlar bilan almashtiriladi.

Skriptdan foydalanish juda oddiy, uni ishga tushirish va kerakli elementni tanlash kifoya. Joriy konfiguratsiyani yangisiga o'zgartirish uchun joriy konfiguratsiyani o'chirish shart emas, uning ustiga yoziladi. Konfiguratsiya faylida ko'rsatilgan foydalanuvchilarni yaratishni unutmang.

Joriy multikiosk konfiguratsiyasini u qo'llanilgan seansda ko'rishda maxsus belgilar o'rniga almashtiriladigan belgilar kombinatsiyasi ko'rsatiladi. Seansni o'zgartirgandan so'ng (skriptni qayta ishga tushirish) barcha maxsus belgilar asl shaklida ko'rsatiladi.

7-qadam - tizimni muhrlash

Multikiosk ishlaydi, hammasi shu, shekilli...

Agar hamma narsa rejaga muvofiq bo'lsa, demak siz biror narsani sezmaysiz.

Shuni unutmangki, biz hali ham tizimni audit rejimidan xush kelibsiz rejimiga o'tkazishimiz kerak. Xo'sh, biz bunga tayyormiz, biz "Sysprep.bat" ni ishga tushiramiz, 2-bandni tanlang, tizim muhrlangan. Biz qurilmani yoqamiz, tizim ishga tushadi, biz multikiosk sozlangan foydalanuvchi hisobiga kiramiz, lekin tizimga kira olmaymiz. "Xush kelibsiz" xabaridan so'ng "Chiqish" xabari paydo bo'ladi.

Avvaliga men muammoning faqat yechimini tasvirlamoqchi edim, lekin keyinroq muammoni aniqlash va eng oddiy yechimni topish qadamlarini tasvirlashga qaror qildim, chunki... Shubhasiz, ko'plab o'quvchilar noaniq shubhalar bilan azoblanadi - "Agar shunday bo'lsa-chi ...". O'ylaymanki, agar siz boshqa yechim topmoqchi bo'lsangiz, turli xil tajribalarni tavsiflash sizga vaqtni sezilarli darajada tejaydi. Ma'lumotni iloji boricha aniqroq qilish va xatolar yo'qligiga yana bir bor ishonch hosil qilish uchun men tajribalarni "bajarilgan va yozilgan" formatida tasvirlab beraman. Bular. Men yana tasvirlangan tajribalarni bajaraman.

tajribalar

Biz nima qildik? Tizimda ikkita hisob mavjud:

"Admin" - "Administratorlar" guruhida
"Foydalanuvchi" - "Foydalanuvchilar" guruhida
Audit rejimida multikiosk ishladi, lekin muhrlanganda u ishlamadi.

Tajriba 1

Biz o'rnatilgan tayyorgarlik paketini o'chirib tashlaymiz, "Kompyuterni boshqarish" qo'shimchasida biz "Foydalanuvchi" foydalanuvchisini o'chirib tashlaymiz va "Foydalanuvchi" nomi bilan yangi foydalanuvchi yaratamiz, tayyorgarlik paketini qo'llaymiz, "Foydalanuvchi" hisobiga o'tamiz - bu shunday qiladi. ishlamaydi. Biz "Admin" nomiga o'tamiz, "Foydalanuvchi" foydalanuvchisini "Foydalanuvchilar" guruhidan olib tashlaymiz, uni "Administratorlar" guruhiga qo'shamiz, "Foydalanuvchi" nomi bilan o'tamiz - bu ishlamaydi. Biz "Admin" nomi bilan kiramiz, multikiosk bilan tayyorgarlik paketini o'chirib tashlaymiz, "Foydalanuvchi" nomi bilan tizimga kiramiz - biz kirishga muvaffaq bo'ldik, lekin, albatta, multikiosk rejimi ishlamaydi, chunki Ta'minot paketi olib tashlandi.

Tajriba 2

Biz tizim tasvirini yuklaymiz - audit rejimida ruslashtirilgan.

OS yuklandi, "Win + r" ni bosing, chunki Bizning sysprep oynamiz avtomatik ravishda yopildi, "sysprep" buyrug'ini ishga tushiring va ochilgan oynada "sysprep" ni ishga tushiring. Oynadagi Sysprep sozlamalari: "Tizimga xush kelibsiz oynasiga (OOBE) o'ting", "Foydalanishga tayyorlanmoqda", "Qayta yuklash". "OK" tugmasini bosing va OS salomlashuvini kuting. Tizim birinchi marta ishga tushganda biz savollarga javob beramiz: "Tanlangan tilda davom ettirilsinmi?" - "ruscha"; mintaqa - Rossiya; klaviatura tartibi - ruscha; ikkinchi klaviatura tartibini qo'shing - o'tkazib yuboring; "Keling, sizni tarmoqqa ulaymiz" - "Hozircha o'tkazib yuboring"; Internetga ulanish - yo'q; litsenziya shartnomasi - qabul qilish; "Ushbu kompyuterdan kim foydalanadi" - "Test"; parol yaratish - maydonni bo'sh qoldiring; Turli xil qurilmalarda qulay ishlash - yo'q; Maxfiylik sozlamalari - qabul qiling. OT yuklandi, "Kompyuterni boshqarish" qo'shimchasida biz "Foydalanuvchi" nomi bilan foydalanuvchi yaratamiz, tayyorgarlik paketini qo'shamiz. Natijada u ishlamaydi.

Tajriba 3

Biz tizim tasvirini yuklaymiz - audit rejimida ruslashtirilgan.

OT yuklandi, tizimni Internetga ulang, "gpedit.msc" buyrug'ini bajaring va "Windows Update" bo'limida "Avtomatik yangilanishlar orqali tavsiya etilgan yangilanishlarni yoqish" opsiyasini yoqing, har qanday holatda qayta yoqing. Yangilash markazida "Yangilanishlarni tekshirish" tugmasini bosing va barcha yangilanishlar o'rnatilguncha qayta yoqing. Tizimni Internetdan uzing. Biz "sysprep" ni grafik rejimda ishga tushiramiz va "sysprep" yordam dasturini ishga tushirishdan tayyorgarlik paketini qo'shishgacha bo'lgan oldingi bosqichda tasvirlangan barcha amallarni takrorlaymiz. Natijada, u ishlamaydi.

Tajriba 4

Biz tizim tasvirini yuklaymiz - audit rejimida ingliz.

Biz grafik rejimda "sysprep" ni ishga tushiramiz, OSni 2-tajribadagi kabi parametrlar bilan muhrlaymiz. Tizim birinchi marta ishga tushganda, biz 2-tajribadagi kabi parametrlarni tanlaymiz, chunki mintaqaviy va til parametrlari bundan mustasno. Rus tili yo'q. Xuddi shu tarzda, "Foydalanuvchi" foydalanuvchisini yarating va provayder paketini qo'shing. Natijada u ishlaydi. Bular. Muammo mahalliylashtirish bilan bog'liq.

Tajriba 5

Biz tizim tasvirini yuklaymiz - audit rejimida ruslashtirilgan.

"Kompyuter boshqaruvi" qo'shimchasida "Foydalanuvchi" foydalanuvchisini yarating, tayyorgarlik paketini qo'shing, "Foydalanuvchi" hisobiga o'ting, multikiosk ishlaydi.

Hisobingizdan chiqing va "Administrator" hisobiga kiring. Biz PowerShell-ni administrator huquqlari bilan ishga tushiramiz, "Dism /online /Get-Intl" buyrug'ini bajaramiz va "Standart foydalanuvchi interfeysi tili: en-US" ga qarang.

Biz flesh-diskdan WinPE-ga yuklaymiz, o'rnatilgan OS mening E diskimda.“Dism /image:E: /Set-UILang:ru-ru” buyrug'ini bajaramiz. Natijani ko'rib chiqamiz, "Dism / image: E: / Get-Intl" ni bajaramiz va "Standart tizim UI tili: ru-RU" ga qarang.

Biz tizimni ishga tushiramiz, "Foydalanuvchi" hisobiga kiring, multikiosk ishlamayapti.

Muammoning sabab-oqibat munosabatlarini aniq aniqlash uchun, keling, ko'p kioskni ishlaydigan va ishlamaydigan qilib ko'rsatishga yana urinib ko'raylik.

Biz flesh-diskdan WinPE-ga yuklaymiz, o'rnatilgan OT mening E diskimda joylashgan.“Dism /image:E: /Set-UILang:en-us” buyrug'ini bajaramiz. Natijani ko'rib chiqamiz, "Dism /image:E: /Get-Intl" ni bajaramiz va "Standart tizim UI tili: en-US" ga qarang.

Biz tizimni ishga tushiramiz, "Foydalanuvchi" hisobiga kiring, multikiosk ishlaydi.

Biz flesh-diskdan WinPE-ga yuklaymiz, o'rnatilgan OS mening E diskimda.“Dism /image:E: /Set-UILang:ru-ru” buyrug'ini bajaramiz. Natijani ko'rib chiqamiz, "Dism / image: E: / Get-Intl" ni bajaramiz va "Standart tizim UI tili: ru-RU" ga qarang.

Biz tizimni ishga tushiramiz, "Foydalanuvchi" hisobiga kiring, multikiosk ishlamayapti.

Bular. kiosk ishlashining standart foydalanuvchi interfeysi tiliga aniq bog'liqligini ko'rishingiz mumkin. Ehtimol, multikioskning ishlashiga ta'sir qiluvchi boshqa omillar ham bormi?

Tajriba 6

Tajribaning tozaligi uchun biz tizimni to'ldiramiz. Biz tizim tasvirini yuklaymiz - audit rejimida ruslashtirilgan.

Biz "sysprep" ni grafik rejimda ishga tushiramiz, 2-tajribadagi kabi parametrlar bilan OTni muhrlaymiz. OT bizni kutib olishini va savollarga javob berishini kutamiz: "Tanlangan tilda davom etasizmi?" – “Ingliz tili (AQSh)”; mintaqa - Rossiya; Klaviatura tartibi - rus. Keyinchalik, barcha parametrlar 2-tajribadagi kabi tanlangan.

Keling, standart foydalanuvchi interfeysi til sozlamalarini ko'rib chiqaylik. Biz "Dism /online /Get-Intl" buyrug'ini bajaramiz va "Standart tizim UI tili: en-US" ga qarang. "Kompyuter boshqaruvi" qo'shimchasida "Foydalanuvchi" foydalanuvchisini yarating, tayyorgarlik paketini qo'shing, "Foydalanuvchi" hisobiga o'ting, multikiosk ishlaydi.

Biz standart foydalanuvchi interfeysi tilini o'zgartirish orqali kioskni buzishga harakat qilmoqdamiz. Biz tizim birinchi marta ishga tushganda yaratilgan "Test" foydalanuvchisiga o'tamiz va tizim darhol "Foydalanuvchi" hisobiga yuklanmasligi uchun unga avtomatik kirishni yoqamiz. "Netplwiz" ni ishga tushiring, "Test" foydalanuvchisini tanlang, "Foydalanuvchi nomi va parolni talab qilish" katagiga belgini olib tashlang va parametrlarni qo'llang.

WinPE-ga flesh-diskdan yuklash. “Dism /image:E: /Set-UIlang:ru-ru” buyrug'ini bajaring. Natijani ko'rib chiqamiz, "Dism / image: E: / Get-Intl" ni bajaramiz va "Standart tizim UI tili: ru-RU" ga qarang.

Biz tizimni ishga tushiramiz, "Foydalanuvchi" hisobiga kirishga harakat qilamiz, multikiosk ishlaydi. Bular. uni buzish mumkin emas. Buni shunday qilish mumkinmi?

Tajriba 7

Biz tizim tasvirini yuklaymiz - audit rejimida ruslashtirilgan.

Biz "Sysprep.bat" ni ishga tushiramiz, 2-bandni tanlaymiz. Biz tizimga yuklaymiz, "Kompyuterni boshqarish" qo'shimchasida "Foydalanuvchi" foydalanuvchisini yaratamiz, tayyorgarlik paketini qo'shamiz, "Foydalanuvchi" hisobiga o'tamiz, multi- kiosk ishlamaydi.

WinPE-ga flesh-diskdan yuklash. “Dism /image:E: /Set-UIlang:en-us” buyrug'ini bajaring. Natijani ko'rib chiqamiz, "Dism /image:E: /Get-Intl" ni bajaramiz va "Standart tizim UI tili: en-US" ga qarang.

Biz tizimni ishga tushiramiz, "Foydalanuvchi" hisobiga kirishga harakat qilamiz, multikiosk ishlamayapti.

Ma'lum bo'lishicha, standart foydalanuvchi interfeysi til sozlamalarini o'zgartirish orqali siz multikioskning ishlashiga faqat tizim audit rejimida yoki tizim muhrlanganidan keyin birinchi yuklashda ta'sir qilishingiz mumkin. Bu shuni anglatadiki, tizimni javob fayli bilan muhrlashingiz kerak, unda tizim tili ingliz tilida tanlanadi va keyin interfeys ruscha bo'lishi uchun tizim sozlamalarini o'zgartiring. Juda yaxshi yechim emas. Ehtimol, muammoni til paketini o'rnatish yoki qo'shimcha til paketlarini o'rnatish orqali hal qilish mumkinmi?

Tajriba 8

Biz tizim tasvirini yuklaymiz - audit rejimida ingliz.

Biz internetga ulanamiz, tizim parametrlarida "Til" bo'limiga o'ting, "Til qo'shish" ni tanlang, "ruscha" tilini tanlang, "Keyingi" tugmasini bosing, o'rnatish parametrlarini sukut bo'yicha qoldiring, o'rnatgandan so'ng "O'rnatish" tugmasini bosing. til to'plami biz tizimni qayta ishga tushiramiz, endi Russified. Tizimni Internetdan uzing, "Sysprep.bat" ni ishga tushiring, 2-bandni tanlang.

Tizimni yuklaganingizdan so'ng, "Kompyuterni boshqarish" qo'shimchasida "Foydalanuvchi" foydalanuvchisini yarating, tayyorgarlik paketini qo'shing, "Foydalanuvchi" hisobiga o'ting, multi-kiosk ishlamayapti.

Tajriba 9

O'rnatishdan oldin tizimni oflayn rejimda ruslashtirishga harakat qilaylik. Shu bilan birga, tarqatishni mahalliylashtirish bo'yicha qisqa ta'lim dasturi bo'ladi.

Men toza original tarqatish bilan flesh-diskni olaman - X21-96381. Bu "E" drayveri bo'ladi. Tasvirlarni o'rnatish uchun men papkalarni yarataman: "c: MountInstall", "c: MountWinre", "c: MountBoot". Men mahalliylashtirish paketlari to'plamini olaman - X21-87814. Va "c: Mount" jildiga men undan paketlarni nusxalayman: "Microsoft-Windows-Client-Language-Pack_x86_ru-ru.cab", "lp.cab", "WinPE-Setup_ru-ru.cab". Men konsolni administrator huquqlari bilan ishga tushiraman. O'ylaymanki, keyingi buyruqlar izohsiz aniq bo'ladi.

Lokalizatsiya buyruqlari

cd c:mount
dism /Mount-Wim /WimFile:e:sourcesinstall.wim /index:1 /MountDir:Installcode
dism /Image:Install /Add-Package /PackagePath:Microsoft-Windows-Client-Language-Pack_x86_ru-ru.cabcode
dism /Image:Installcode /Set-AllIntl:ru-ru
dism /Image:Install /Set-TimeZone:"Russian Standard Time"code

dism /Mount-Wim /WimFile:InstallWindowsSystem32RecoveryWinre.wim /index:1 /MountDir:Winrecode
dism /Image:Winre /Add-Package /PackagePath:lp.cabcode
dism /Image:Winrecode /Set-AllIntl:ru-ru
dism /Image:Winre /Set-TimeZone:"Russian Standard Time"code
dism /Unmount-Image /MountDir:Winre /Commitcode

dism /Image:Install /Gen-LangINI /distribution:E: /Set-AllIntl:ru-RUcode
dism /image:Install /Set-SetupUILang:RU-ru /distribution:E:code
dism /Unmount-Image /MountDir:Install /Commitcode

dism /mount-wim /wimfile:e:sourcesboot.wim /index:1 /mountdir:Bootcode
dism /Image:Boot /Add-Package /PackagePath:lp.cabcode
dism /Image:Bootcode /Set-AllIntl:ru-ru
copy e:sourceslang.ini Bootsourceslang.inicode
dism /Unmount-Image /MountDir:Boot /Commitcode

dism /mount-wim /wimfile:e:sourcesboot.wim /index:2 /mountdir:Bootcode
dism /Image:Boot /Add-Package /PackagePath:lp.cabcode
dism /Image:Boot /Add-Package /PackagePath:WinPE-Setup_ru-ru.cabcode
dism /Image:Bootcode /Set-AllIntl:ru-ru
copy e:sourceslang.ini Bootsourceslang.ini /ycode
dism /Unmount-Image /MountDir:Boot /Commit

Biz flesh-diskdan yuklaymiz, rus tilini tanlaymiz va tizimni bo'sh diskka o'rnatamiz. Tizim sizdan hududni tanlashni so'raganda, "Ctrl + Shift + F3" tugmalarini bosing. "Kompyuterni boshqarish" qo'shimchasida "Foydalanuvchi" foydalanuvchisini yarating, tayyorgarlik paketini qo'shing, "Foydalanuvchi" hisobiga o'ting, multikiosk ishlamayapti.

WinPE-ga flesh-diskdan yuklash. “Dism /image:E: /Set-UIlang:en-us” buyrug'ini bajaring.

Biz tizimni ishga tushiramiz, "Foydalanuvchi" hisobiga kirishga harakat qilamiz, multikiosk ishlaydi.

Ko'rinishidan, muammo paketni qo'shish usullarida emas, keling, qo'shimcha paketlarni qo'shishga harakat qilaylik.

Tajriba 10

Biz oldingi bosqichda tayyorlagan flesh-diskni olamiz.

Biz "Feat on Demand" to'plamini olamiz - X21-87815. Men undan paketlarni "c: Mount" jildiga ko'chiraman: «Microsoft-Windows-LanguageFeatures-Basic-ru-ru-Package~31bf3856ad364e35~x86~~.cab», «Microsoft-Windows-LanguageFeatures-OCR-ru-ru-Package~31bf3856ad364e35~x86~~.cab», «Microsoft-Windows-LanguageFeatures-Handwriting-ru-ru-Package~31bf3856ad364e35~x86~ ~.cab», «Microsoft-Windows-LanguageFeatures-TextToSpeech-ru-ru-Package~31bf3856ad364e35~x86~~.cab».

Берем пакет «Feat on Demand RDX Updt» – X21-99781. В папку «c:Mount» копирую из него пакеты: «Microsoft-Windows-RetailDemo-OfflineContent-Content-Package~31bf3856ad364e35~x86~~.cab», « Microsoft-Windows-RetailDemo-OfflineContent-Content-ru-ru-Package~31bf3856ad364e35~x86~~.cab».

Administrator huquqlari bilan konsolni ishga tushiring va buyruqlarni bajaring:

Buyruqlar

cd c:mount
dism /Mount-Wim /WimFile:e:sourcesinstall.wim /index:1 /MountDir:Install
dism /Add-Package /Image:Install /PackagePath:Microsoft-Windows-LanguageFeatures-Basic-ru-ru-Package~31bf3856ad364e35~x86~~.cab
dism /Add-Package /Image:Install /PackagePath:Microsoft-Windows-LanguageFeatures-OCR-ru-ru-Package~31bf3856ad364e35~x86~~.cab
dism /Add-Package /Image:Install /PackagePath:Microsoft-Windows-LanguageFeatures-Handwriting-ru-ru-Package~31bf3856ad364e35~x86~~.cab
dism /Add-Package /Image:Install /PackagePath:Microsoft-Windows-LanguageFeatures-TextToSpeech-ru-ru-Package~31bf3856ad364e35~x86~~.cab
dism /Add-Package /Image:Install /PackagePath:Microsoft-Windows-RetailDemo-OfflineContent-Content-Package~31bf3856ad364e35~x86~~.cab
dism /Add-Package /Image:Install /PackagePath:Microsoft-Windows-RetailDemo-OfflineContent-Content-ru-ru-Package~31bf3856ad364e35~x86~~.cab
dism /Unmount-Image /MountDir:Install /Commit

Biz flesh-diskdan yuklaymiz, rus tilini tanlaymiz va tizimni bo'sh diskka o'rnatamiz. Tizim sizdan hududni tanlashni so'raganda, "Ctrl + Shift + F3" tugmalarini bosing. "Kompyuter boshqaruvi" qo'shimchasida "Foydalanuvchi" foydalanuvchisini yarating, ta'minot paketini qo'shing va "Foydalanuvchi" hisobiga kiring. Menda uzoq vaqt osilgan qora ekran bor edi, shuning uchun men tizimni issiq yukladim.

Tayyorgarlik paketini o'chirib tashlaymiz, "Foydalanuvchi" sifatida tizimga kiring, tizimni qayta ishga tushiramiz, tayyorgarlik paketini qo'shamiz, multikiosk ishlamayapti.

WinPE-ga flesh-diskdan yuklash. “Dism /image:E: /Set-UIlang:en-us” buyrug'ini bajaring.

Biz tizimni ishga tushiramiz, "Foydalanuvchi" hisobiga kirishga harakat qilamiz, multikiosk ishlaydi.

Vaqtinchalik yechim

Oddiy qahramonlar. Ular har doim aylanma yo'lni bosib o'tishadi!

Lokalizatsiya paketlarini o'rnatishning turli usullari muammoni hal qilmadi, ya'ni muhrlangandan keyin birinchi yuklashda "en-us" tilini o'rnatishingiz va birinchi yuklashdan keyin til sozlamalarini o'zgartirishingiz kerak bo'ladi.

Biz tizim tasvirini yuklaymiz - audit rejimida ruslashtirilgan.

"Unattend.xml" faylida parametrga "en-US" ni kiriting, "Sysprep.bat" ni ishga tushiring, 2-bandni tanlang va nima olganimizni ko'ring. Xush kelibsiz ekran ingliz tilida, multi-kiosk ishlaydi. Bu salomlashish tilini o'zgartirish uchun "Unattend.xml" ga buyruq qo'shishingiz kerakligini anglatadi. Va buning uchun siz joriy parametrlarni xush kelibsiz ekranga nusxalashni ko'rsatadigan konfiguratsiya faylini ko'rsatadigan "control intl.cpl,, /f:" buyrug'ini bajarishingiz kerak. Konfiguratsiya faylining mazmuni shunday ko'rinadi.

<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend">
      <gs:UserList>
        <gs:User UserID="Current" CopySettingsToSystemAcct="true"/> 
    </gs:UserList>
</gs:GlobalizationServices>

Chunki joriy foydalanuvchining sozlamalarini ko'chiradi, keyin foydalanuvchi tizimga kirgandan so'ng buyruq bajarilishi kerak, ya'ni bizga kerak bo'ladi. Bitta kichik "lekin" bor, ijro administrator huquqiga ega foydalanuvchi tizimga kirgandan so'ng amalga oshiriladi. Va men buyruq muvaffaqiyatli ishlashi uchun zarur bo'lgan qo'shimcha fayl yaratishni xohlamayman. Butun yechimni bitta faylda - “Unattend.xml”da amalga oshirish yaxshiroqdir. Buni amalga oshirish uchun siz shunchaki konfiguratsiya faylini yaratadigan buyruqni ishga tushirishingiz kerak bo'ladi. Men "cmd" muhitida "echo" buyrug'i yordamida konfiguratsiya faylini yarataman deb o'ylayman, lekin u burchakli qavslardan sirkumfleks bilan qochishi kerak. Bular. Konfiguratsiya faylini yaratish uchun quyidagi buyruq olinadi.

echo ^<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend"^>^<gs:UserList^>^<gs:User UserID="Current" CopySettingsToSystemAcct="true"/^>^</gs:UserList^>^</gs:GlobalizationServices^>>Config.xml

Ammo biz ushbu buyruqni XML-ga joylashtirishimiz kerak, bu maxsus belgilardan foydalanish uchun o'z talablariga ega:

Maxsus xarakter
O'zgartirish qiymati

>
&gt;

<
&lt;

&
&amp;

"
&apos;

"
&quot;

Natijada, konfiguratsiya faylini yaratish uchun biz "FirstLogonCommands" uchun quyidagi buyruqni oldik.

cmd.exe /c echo ^&lt;gs:GlobalizationServices xmlns:gs=&quot;urn:longhornGlobalizationUnattend&quot;^&gt;^&lt;gs:UserList^&gt;^&lt;gs:User UserID=&quot;Current&quot; CopySettingsToSystemAcct=&quot;true&quot;/^&gt;^&lt;/gs:UserList^&gt;^&lt;/gs:GlobalizationServices^&gt;&gt;&quot;%TMP%Config.xml&quot;

Keyinchalik, konfiguratsiya fayli yordamida buyruqni bajaramiz.

control intl.cpl,,/f:&quot;%TMP%Config.xml&quot;

Keyinchalik, avval yaratilgan faylni o'chiring va tizimni qayta yoqing. o'zgarishlar qayta ishga tushirilgandan so'ng kuchga kiradi.

cmd.exe /c del &quot;%TMP%Config.xml&quot; /q&amp;shutdown /r /f /t 00

Natijada, men sysprep uchun quyidagi javob fayli bilan yakunlandim.

Unattend.xml

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
    <settings pass="specialize">
        <component name="Microsoft-Windows-Deployment" 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">
            <RunSynchronous>
                <RunSynchronousCommand wcm:action="add">
                    <Path>reg add HKLMSoftwareMicrosoftWindowsCurrentVersionSetupOOBE /v SetupDisplayedProductKey /t REG_DWORD /d 1 /f</Path>
                    <Order>1</Order>
                    <Description>Dont show key page</Description>
                </RunSynchronousCommand>
                <RunSynchronousCommand wcm:action="add">
                    <Path>reg add HKLMSoftwareMicrosoftWindowsCurrentVersionSetupOOBE /v UnattendCreatedUser /t REG_DWORD /d 1 /f</Path>
                    <Order>2</Order>
                    <Description>Dont make account</Description>
                </RunSynchronousCommand>
                <RunSynchronousCommand wcm:action="add">
                    <Path>cmd.exe /c rd %systemdrive%Sysprep /s /q</Path>
                    <Order>3</Order>
                    <Description>Del Folder</Description>
                </RunSynchronousCommand>
            </RunSynchronous>
        </component>
        <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">
            <AutoLogon>
                <Enabled>true</Enabled>
                <Username>Admin</Username>
            </AutoLogon>
        </component>
    </settings>
    <settings pass="oobeSystem">
        <component name="Microsoft-Windows-International-Core" 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">
            <InputLocale>en-US; ru-RU</InputLocale>
            <SystemLocale>ru-RU</SystemLocale>
            <UILanguage>en-US</UILanguage>
            <UILanguageFallback></UILanguageFallback>
            <UserLocale>ru-RU</UserLocale>
        </component>
        <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">
            <OOBE>
                <HideEULAPage>true</HideEULAPage>
                <HideLocalAccountScreen>true</HideLocalAccountScreen>
                <HideOEMRegistrationScreen>true</HideOEMRegistrationScreen>
                <HideOnlineAccountScreens>true</HideOnlineAccountScreens>
                <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
                <ProtectYourPC>1</ProtectYourPC>
            </OOBE>
            <FirstLogonCommands>
                <SynchronousCommand wcm:action="add">
                    <CommandLine>cmd.exe /c echo ^&lt;gs:GlobalizationServices xmlns:gs=&quot;urn:longhornGlobalizationUnattend&quot;^&gt;^&lt;gs:UserList^&gt;^&lt;gs:User UserID=&quot;Current&quot; CopySettingsToSystemAcct=&quot;true&quot;/^&gt;^&lt;/gs:UserList^&gt;^&lt;/gs:GlobalizationServices^&gt;&gt;&quot;%TMP%Config.xml&quot;</CommandLine>
                    <Description>CreateConfig</Description>
                    <Order>1</Order>
                </SynchronousCommand>
                <SynchronousCommand wcm:action="add">
                    <CommandLine>control intl.cpl,,/f:&quot;%TMP%Config.xml&quot;</CommandLine>
                    <Description>UseConfig</Description>
                    <Order>2</Order>
                </SynchronousCommand>
                <SynchronousCommand wcm:action="add">
                    <CommandLine>cmd.exe /c del &quot;%TMP%Config.xml&quot; /q&amp;shutdown /r /f /t 00</CommandLine>
                    <Description>DelConfig</Description>
                    <Order>3</Order>
                </SynchronousCommand>
            </FirstLogonCommands>
        </component>
    </settings>

Keling, tekshiramiz...

Biz tizim tasvirini yuklaymiz - audit rejimida ruslashtirilgan.

Biz Unattend.xml faylini yangisiga o'zgartiramiz, "Sysprep.bat" ni ishga tushiramiz, 2-bandni tanlang va nima olganimizni ko'ring. Birinchi marta yuklaganingizda, xush kelibsiz ekran ingliz tilida bo'ladi va tizim qayta ishga tushadi. Xush kelibsiz ekran rus tilida, multikiosk ishlaydi.

Windows 10 IoT Enterprise’ni sozlash va litsenziyalash bo‘yicha savollaringiz bo‘lsa, quyidagi manzilga murojaat qiling: [elektron pochta bilan himoyalangan] yoki veb-saytga qurta-embedded.ru.
Ba'zi savollarga javobni bo'limda topishingiz mumkin bizning wiki yoki bizning YouTube kanali

Maqola muallifi: Vladimir Borisenkov, Quarta Technologies texnik eksperti.

Manba: www.habr.com