Windows 10 IoT Enterprise 2019 — vairāku kiosku režīms

Ievads

Windows 10 IoT Enterprise 2019 ir mārketinga nosaukums nākamajam Windows 10 laidienam. Šīs versijas izlaišana tika paziņota attiecīgi 2018. gada septembrī, tai ir versija 1809, 18 ir gads, 09 — mēnesis. Par jauno Windows 10 1809 izlaidumu ir rakstīti daudzi raksti, taču lielākā daļa no tiem ir veltīti dažādiem “lociņiem”, “skaistumiem” un dažādām funkcionalitātēm, kas ir pieprasītas mājās.
Šajā rakstā tiks apspriesta tikai funkcionalitāte, kas var būt pieprasīta fiksēta lietojuma ierīču ražotāju vidū. Proti, par “Kiosk” režīma jaunajām iespējām. Tiks skarta arī tēma par pakalpojumu shēmu nosaukumu maiņu uzņēmumu segmenta Windows izdevumiem.

Старая схема обслуживания с новым названием

Ļaujiet man sākt ar īsu skaidrojumu: korporatīvajā Windows izdevumu segmentā ir divas pakalpojumu shēmas, saskaņā ar kurām Windows saņem atjauninājumus. Servisa shēmām ir burtu apzīmējums. Šobrīd pakalpojumu filiāles sauc LTSC un SAC.

LTSC apzīmē Ilgtermiņa apkalpošanas kanāls (ar ilgstošu apkopi). Iepriekš šāds kanāls saucās LTSB - Long Term Servicing Branch Microsoft vienkārši nomainīja servisa kanāla nosaukumu, pats serviss palika nemainīgs.

Microsoft mainīja arī servisa filiāles nosaukumu CBB - Current Branch for Business, tagad šo pakalpojumu filiāli sauc par SAC - Pusgada kanāls. Atkal ir mainījies tikai nosaukums.

Taču jāpiemin, ka LTSC un SAC apkalpojošās filiāles izmanto dažādus Windows izplatījumus.

Mazliet par jauno kioska režīmu SAC

Kā jau teicu, LTSC un SAC ir dažādi sadalījumi. LTSC nav standarta universālo lietotņu vai lietotņu veikala, bet SAC ir. Attiecīgi LTSC nav Edge pārlūkprogrammas, bet SAC ir. Ja, iestatot kiosku, atlasāt pārlūkprogrammu Edge, tagad ir pieejami divi režīmi:

  1. Kā digitālā zīme vai interaktīvs displejs
  2. Tāpat kā publiska pārlūkprogramma

Nekavēšos pie šo režīmu iestatīšanas, jo... Iestatīšana ir ļoti vienkārša un tiek veikta grafiskā interfeisā. Vienkārši izveidojiet lietotāju, kas nav administratoru grupas dalībnieks, iespējojiet viņam kioska režīmu, izmantojot EDGE, un skatiet, kā šie režīmi darbojas.

Kiosks ar daudzām lietojumprogrammām

Daži cilvēki domā, ka licencēta lietošana Windows 10 IoT Enterprise подразумевает работу только одного приложения на устройстве, на самом деле это не так. Устройство должно быть предназначено для выполнения одной бизнес-задачи и у пользователя не должно быть доступа к рабочему столу. Теперь Майкрософт сам дал инструмент для использования множества приложений. Данный режим называется «multi-app kiosk», далее для краткости я буду называть его «мультикиоск». В данной статье мы рассмотрим настройку данного режима с помощью пакета обеспечения и некоторые особенности данного режима.

Mazliet par Multikioska režīmu

При входе в учетную запись пользователя для которой настроен режим мультикиоска система будет работать в режиме планшета. Меню «Пуск» будет развернуто на весь экран, в котором будут отображаться плитки приложений.

Pamatiestatījumu un režīma iespēju saraksts:

  1. Iestatīšana vairākiem lietotājiem vai grupām
  2. Katram lietotājam vai grupai var piešķirt individuālus iestatījumus
  3. Spēja izmantot universālas un klasiskas aplikācijas
  4. Iespēja automātiski palaist kādu no lietojumprogrammām, kad lietotājs piesakās
  5. Baltajā sarakstā iekļautās lietojumprogrammas
  6. Piekļuve mapēm, izmantojot balto sarakstu

Vērts pievērst uzmanību 5. punktam. Pēc noklusējuma būs atļauts darboties tikai tām aplikācijām, kuras ir nepieciešamas sistēmas darbībai, citas aplikācijas ir jāpievieno atļauto sarakstam. Tie. Tagad jums nav atsevišķi jākonfigurē AppLocker. Starp citu, lai izvairītos no konfliktiem ar AppLocker iestatījumiem, vairāku kiosku režīmā visi konfigurētie AppLocker noteikumi netiks piemēroti.

6. punkts norāda uz labu variantu, taču šobrīd ir iespējams dot tikai rakstīšanas atļauju mapei “Lejupielādes”. Režīms ļauj izmantot universālas un klasiskas lietojumprogrammas. Visi režīma iestatījumi ir norādīti XML failā, kurā varat norādīt arī vienas lietojumprogrammas kioska iestatījumus.

Tagad mēģināsim to visu iestatīt...

Ko mums vajag...

  1. Pirmkārt, mums ir nepieciešama pati sistēma, kas atbalsta multikioska režīmu. Šeit jūs varat lejupielādēt demo versija
  2. Norādījumi multikioska iestatīšanai
  3. Jebkurš XML redaktors
  4. Lai lietotu multikioska iestatījumus:
    1. Metodei Nr.1 ​​- ICD, kas ir daļa no ADK. ADK ir iespējama Lejupielādēt šeit
    2. 2. metodei — utilīta PsExec. Lietderība var būt Lejupielādēt šeit

Viņš teica - "Ejam!"

Es veiksu visus eksperimentus ar Windows 10 IoT Enterprise 1809 LTSC x32 komerciālo versiju, nevis demonstrācijas versiju. Sistēma netiks aktivizēta, jo aktivizācijas trūkums neietekmē sistēmas funkcionalitāti. Es paņēmu 32 bitus tikai tāpēc, ka tas aizņem mazāk vietas un būs ātrāk strādāt ar sistēmas attēliem.

1. solis – uzstādīšana

Win 10 IoT Enterprise instalēšana ne ar ko neatšķiras no Win 10 Enterprise instalēšanas, tāpēc neaprakstīšu visu instalēšanas procesu, runāšu tikai par dažām niansēm.

Katram gadījumam atgādināšu, neinstalējiet sistēmu virs instalētās. Kad instalētājs jautā par sistēmas instalēšanas vietu, izdzēsiet visas nākamā sistēmas diska nodalījumus un norādiet nesadalītu disku.

Sistēmu uzstādām bez interneta pieslēguma, lai sistēma neuzvilktu neko lieku.

Jo Mēs izveidosim sistēmas rezerves attēlus un šim nolūkam to aizzīmogosim audita režīmā, tad jūs varat ietaupīt laiku, ielādējot sistēmu audita režīmā uzreiz pēc uzstādīšanas. Lai to izdarītu, kad sistēma lūdz atlasīt reģionu “Sāksim ar reģionu. Vai tas ir pareizi, vienkārši nospiediet taustiņu kombināciju Ctrl+Shift+F3.

2. darbība - izveidojiet sistēmas attēlu

Т.к. мы будем издеваться над системой пробовать различные новые настройки, то не исключено что что-то пойдет не так и нужно будет вернуть систему в исходное состояние. А для быстрого возврата в исходное состояние нужно создать образ системы. Единственное что я сделаю, это скопирую «джентльменский набор» – скрипт и файл ответов. Все файлы у меня находятся на в папке «Sysprep», которую я скопирую в корень системного диска. И естественно, я поделюсь с Вами данным «джентльменским набором».

Sysprep.bat – lai noslēgtu sistēmu.

@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

Palaižot, skripts pārbaudīs, vai ir pieejams administratora konts, un izveidos to, ja tā trūkst. Konts tiks pievienots administratoru grupai.

Unattend.xml — sysprep atbildes fails.

<?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>

Aizzīmogojot audita režīmā, skripts pievienos reģistram komandu, lai beigtu “sysprep.exe” procesu, lai katru reizi netiktu aizvērts sysprep logs manuāli. Kad tas ir aizzīmogots hello režīmā, skripts noņems komandu aizvērt logu no reģistra un pats mainīs arhitektūras vērtību atbildes failā uz pašreizējo. Atbildes failā ir parametri sistēmas palaišanai bez lietotāja iejaukšanās un komanda sistēmas diska saknes mapes “Sysprep” dzēšanai.

Теперь я запечатаю систему в режиме аудита с помощью «Sysprep.bat» и сниму образ системы. Снимать образ системы я буду с помощью DISM’а и буду снимать образ только системного тома. Если Вы будете снимать образ только системного тома, а не всего диска, то не забывайте копировать содержимое каталога «WindowsSystem32Recovery» на первый том в папку «RecoveryWindowsRE» после разворачивания системы. Это нужно будет сделать до загрузки ОС т.к. после загрузки ОС каталог «WindowsSystem32Recovery» уже будет пустым.

3. solis – sistēmas rusifikācija

Valodas pakotni var instalēt bez interneta savienojuma, ja jums ir šī pakotne. Ja nē, sistēma pati to lejupielādēs no interneta, kad iestatījumos pievienosit valodu. Vienkārši nav nepieciešams izmantot valodu pakotni no iepriekšējām OS versijām. Operētājsistēmai Windows 10 1809 ir jābūt valodas pakotnei, kas īpaši paredzēta operētājsistēmai Windows 10 1809.

Microsoft ievēro savu plānu pakāpeniski pārnest iestatījumus no klasiskās izvēlnes uz jauno, tāpēc klasiskajā vadības panelī vairs neatradīsiet iestatījumus valodas maiņai un valodas pakotnes instalēšanai. Šie iestatījumi tagad ir tikai sistēmas parametros.

Audita režīmā var rasties problēma, atverot sistēmas iestatījumus no izvēlnes Sākt; lai atvērtu sistēmas iestatījumus, palaidiet komandu - "ms-settings:", komandas beigās pievērsiet uzmanību kolam, bez tā komanda tiks izpildīta. nestrādāt. Pēc vienreizējas sistēmas parametru atvēršanas, izmantojot šo komandu, to var atvērt, izmantojot grafisko izvēlni.

Bet sistēmas iestatījumos var instalēt valodas pakotni, ja sistēma ir savienota ar internetu, nav iespējas izvēlēties instalēt valodas pakotni no lokālā faila.

Sistēmas lokalizācijas procesu neaprakstīšu, jo... tas ievērojami sarežģīs rakstu, jo īpaši tāpēc, ka lokalizācijas process ir detalizēts šeit aprakstīts. Bet es vēlos vērst jūsu uzmanību uz sistēmas valodas maiņas īpatnībām pēc valodas pakotnes instalēšanas, izmantojot konsoli. Šī funkcija ir aprakstīta tajā pašā wiki apakšsadaļā, uz kuru es iepriekš sniedzu saiti "Valodas pievienošana valodu sarakstam".

Es instalēšu valodu pakotni bez interneta savienojuma.

Pēc pilnīgas sistēmas lokalizācijas noteikti izveidojiet sistēmas attēlu.

4. darbība – instalējiet nepieciešamās lietojumprogrammas

Jo Tā kā LTSB un LTSC sistēmām nav aplikāciju veikala, lietojumprogrammu instalēšana no Microsoft veikala rada zināmas grūtības, proti, aplikācijas lejupielāde. Lai lejupielādētu lietojumprogrammas, uzņēmums Adguard ir izveidojis ļoti ērtu pakalpojumu - "Adguard veikals", ar kuru jūs varat iegūt pagaidu lejupielādes saites lietojumprogrammām un to komponentiem.

Lai instalētu lietojumprogrammu, jums būs nepieciešami faili ar paplašinājumiem “Appx” un “AppxBundle”. Pirms pašas lietojumprogrammas instalēšanas ir jāinstalē tās komponenti. Parasti lietojumprogrammas komponentus var intuitīvi atšķirt pēc faila nosaukuma.

Lai raksts nebūtu pārāk garš, es detalizēti neaprakstīšu lietojumprogrammu instalēšanas procesu, jo īpaši tāpēc, ka ir informācija par instalēšanu detalizētas instrukcijas. Taču es pievienošu vēl vienu veidu, kā instalēt lietojumprogrammas jūsu pašreizējā kontā. Lietojumprogrammas var instalēt, izmantojot programmu "Lietotņu instalētājs", bet aplikāciju instalēšanai būs nepieciešams interneta pieslēgums, bet aplikācijas var instalēt ar dubultklikšķi un nebūs vajadzīgas tās sastāvdaļas, visas nepieciešamās sastāvdaļas tiks lejupielādētas un instalētas "Lietotņu instalētājs".

Un neliels atgādinājums, ka, instalējot aplikāciju norēķinu kontā, sistēmu aizzīmogot nevarēsi. Kā instalēt lietojumprogrammas, lai varētu aizzīmogot sistēmu, skatiet iepriekš sniegtos norādījumus. Un, lai pārbaudītu multikioska darbību, pietiek ar esošajām lietojumprogrammām.

5. darbība – multikioska konfigurācijas faila izveide

Tagad mēs nonākam pie visinteresantākās daļas - kioska režīma iestatīšanas. Apskatīsim instrukcija atbilstoši mūsu redzamajiem iestatījumiem. Vispirms mums būs jāizveido XML konfigurācijas fails, kura pilnu piemēru var atrast šeit. paskaties šeit.

Sāksim ar flīžu izkārtojuma iestatīšanu. Vienkāršākais veids, kā izveidot XML elementu pielāgošanas konfigurāciju, ir eksportēt to pašreizējo stāvokli.

Vispirms izvēlnē Sākt pievienosim nepieciešamo lietojumprogrammu flīzes. Atveriet meklēšanu “Win+s”, atrodiet vajadzīgo lietojumprogrammu, ar peles labo pogu noklikšķiniet uz tās un atlasiet “Piespraust sākuma ekrānam”.

Esmu piespraudis šādas lietotnes:

  • Notepad
  • Kalkulators
  • Internet Explorer
  • Krāsot
  • WordPad
  • Parametrus
  • Windows drošība

Pēdējie divi pieteikumi tika piesprausti, jo... Standarta LTSC pakotnē citu universālu lietojumu vienkārši nav. Ņemiet vērā, ka darbvirsmas flīzes ir saistītas ar īsinājumtaustiņiem. Tagad, pārvietojot flīzes tieši izvēlnē Sākt, es sadalīšu piespraustās flīzes divās grupās. Lai izveidotu jaunu flīžu grupu, velciet elementu ievērojami augstāk vai zemāk nekā citas flīzes, kas iezīmēs intuitīvu sadalītāju. Grupas var nosaukt pēc saviem ieskatiem, lai to izdarītu, novietojiet peles kursoru virs grupas un, kad parādās uzraksts “Nosaukt grupu”, noklikšķiniet ar peles kreiso pogu. Pirmo grupu es saukšu par “Iestatījumi”, tajā būs “Iestatījumi” un “Windows drošība”. Otro grupu saukšu par “Biroja aplikācijām”, kurā būs visas pārējās flīzes. Starp citu, jūs varat pārvietot visas flīžu grupas, velkot tās, izmantojot divas joslas, kas atrodas grupas nosaukuma augšējā labajā stūrī.

Jo Flīzē “Windows drošība” nosaukums pilnībā neiederas, es nomainīšu tā izmēru uz “Wide”. Lai mainītu flīzes izmēru, ar peles labo pogu noklikšķiniet uz flīzes un atlasiet “Mainīt izmērus”.

Pēc konfigurācijas mēs eksportējam pašreizējo stāvokli un izpildām komandu PowerShell vidē - ​​“Export-StartLayout – ceļš C:SysprepStartLayout.xml”.

Tālāk vienkāršākais veids ir nevis pašam izveidot iestatījumu failu, bet gan ņemiet parauga failu no šejienes iestatījumi – noklikšķiniet uz pogas “Kopēt”, ielīmējiet saturu piezīmju grāmatiņā un saglabājiet kā “MultiAppKiosk.xml”. Tagad mēs mainām iestatījumus uz saviem. Lai mainītu pievienoto elementu iestatījumus, kopējiet visu bloku “StartLayoutCollection” no “StartLayout.xml” uz “MultiAppKiosk.xml”. Lai pievienotu lietojumprogrammas atļautajām, sadaļā “AllowedApps” ir jāievieto universālie lietojumprogrammu identifikatori un tajā pašā blokā jāpievieno pilns ceļš uz klasisko lietojumprogrammu izpildāmajiem failiem, kas norādīts to saīsņu rekvizītos, kuriem flīzes atsaucas. Lai ātri piekļūtu saīsnei, ar peles labo pogu noklikšķiniet uz piespraustas flīzes un dodieties uz Vairāk > Doties uz faila atrašanās vietu. Ņemiet vērā, ka parametrs "AppUserModelId" tiek izmantots, lai norādītu universālo lietotnes ID, un parametrs "DesktopAppPath" tiek izmantots, lai norādītu pilnu ceļu uz darbvirsmas lietojumprogrammu. Un vēl viena neliela nianse, ja plānojat izmantot IE x64 sistēmā, tad atļauto lietojumprogrammu sarakstā ir jānorāda divi izpildāmā faila ceļi “Program FilesInternet Exploreriexplore.exe” un “Program Files (x86)Internet Exploreriexplore. exe”.

Es nesniegšu piekļuvi mapēm, tāpēc izdzēšu sadaļu “FileExplorerNamespaceRestrictions”.

Uzdevumjoslas parādīšana mani netraucē, tāpēc sadaļā “Uzdevumjosla” atstāju visu, kā tas ir.

Piemērā ir norādīti divi profili, bet man būs tikai viens profils, tāpēc sadaļu ar otro profilu var izdzēst. Pirms atinstalēšanas pievērsiet uzmanību lietojumprogrammas automātiskas palaišanas piemēram ar argumentiem.

Sadaļā “Konfigurācijas” konti ir saistīti ar profiliem; lūdzu, ņemiet vērā, ka vienam profilam var saistīt vairākus kontus. Bet tāpēc Mani interesē tikai viens konts, tad izdzēsīšu visus saistījumus, izņemot pirmo - “Config” blokus. Atlikušajā saitē es ierakstīšu lietotājvārdu “Lietotājs”.

Es saņēmu šo failu ar parametriem

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>

Veidojot XML konfigurācijas failus, neaizmirstiet, ka katram profilam ir jābūt unikālam ID, turklāt ne tikai vienā XML failā, bet arī vienā operētājsistēmā. Tie. Ideālā gadījumā, lai izvairītos no neskaidrībām, katru reizi varat izveidot jaunu identifikatoru; to var izdarīt PowerShell vidē, izmantojot komandu “[guid]::NewGuid()”. Un noteikti saglabājiet failu “UTF-8” kodējumā; ja fails ir saglabāts “ANSI” kodējumā, tad, veidojot sagatavošanas pakotni, tiks parādīta kļūda, ja XML failā ir kirilica.

6. darbība – multikioska iestatījumu piemērošana

Apskatīsim divus veidus, kā piemērot konfigurācijas failā aprakstītos iestatījumus. Pirmais ir, izmantojot nodrošinājuma pakotni, kas jāizveido ICD. Dažiem, iespējams, šī metode būs pazīstamāka. Otrais izmanto “MDM Bridge WMI Provider”, šī metode man šķita ērtāka.

Metode # 1

Kuram nav ICD? lejupielādēt ADK un instalēt. ADK instalēšana ir ļoti vienkārša; komponentu kopu var atstāt kā noklusējumu.

Palaidiet ICD, noklikšķiniet uz flīzes “Papildu sagatavošana”, norādiet projekta nosaukumu un mapi un noklikšķiniet uz “Tālāk”. Nākamajā logā atlasiet “Visi Windows darbvirsmas izdevumi” un noklikšķiniet uz “Tālāk”. Jūs varat izlaist sagatavošanas pakotnes importēšanu; noklikšķiniet uz "Pabeigt".

Izvērsiet nolaižamo izvēlni “Runtime Settings”, pēc tam izvērsiet apakšizvēlni “AssignedAccess” un atlasiet “MultiAppAssignedAccessSettings”. ICD loga vidējās sadaļas augšdaļā noklikšķiniet uz pogas "Pārlūkot" un norādiet XML faila atrašanās vietu ar iestatījumiem. Katram gadījumam projektu var saglabāt, nospiežot “Ctrl+s”. ICD augšējā kreisajā daļā atlasiet “Eksportēt” un nolaižamajā izvēlnē atlasiet “Provisioning Package”. Kā īpašnieks izvēlieties "IT administrators"; visus pārējos jautājumus var izlaist, noklikšķinot uz "Tālāk" un beigās noklikšķiniet uz "Build" un "Finish".

Instalētajā sistēmā neaizmirstiet izveidot lietotāju “Lietotājs”, viņu nevar pievienot grupai “Administratori”, pretējā gadījumā multikiosks nedarbosies. Es izveidoju lietotāju datoru pārvaldībā ar paroli, kuras derīguma termiņš nekad nebeidzas.

Tagad mēs palaižam sagatavošanas pakotni iepriekš instalētajā sistēmā. Pēc sagatavošanas pakotnes uzlikšanas mainīsies izvēlne Sākt un administratora izvēlne. Kreisajā sākuma kolonnā jāpazūd pogām: “Dokumenti”, “Attēls”, “Opcijas”. Ja sākuma izvēlne nav mainījusies, tad kaut kas ir nogājis greizi. Instalētu pakotni var noņemt, atverot logu Iestatījumi > Konti > Darba vai skolas konta piekļuve > Pievienot vai noņemt nodrošinājuma pakotnes logu.

Ja sākuma izvēlne ir mainījusies, tad iestatījumi tiek piemēroti sistēmai, piesakieties kā lietotājs, kuram ir konfigurēts multikiosks, un apskatiet rezultātu.

Metode # 2

Iestatījumu piemērošana, izmantojot "MDM Bridge WMI Provider" šeit aprakstīts. Šīs metodes ērtība ir tās izmantošanas elastība un iespēja atbrīvoties no daudzām manuālām darbībām, kas nepieciešamas, lai izveidotu sagatavošanas paketi. Šeit katrs var pieņemt lēmumu, kas viņam būs ērts. Uztaisīju sev pāris scenārijus.

MiltiKiosk.bat – palaišanas skripts

@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 – galvenais skripts

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

Ja vēlaties izmantot manu risinājumu, saglabājiet iepriekš minētos skriptus ar to oriģinālajiem nosaukumiem vienā mapē un ievietojiet failu “PsExec.exe” tajā pašā mapē. Tajā pašā mapē izveidojiet XML mapi un kopējiet XML failus, lai tajā konfigurētu multikiosku. Es izmantošu to pašu failu kā pirmajā metodē.

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>

Mazliet par skripta iezīmēm. Skripts ir paredzēts XML failu izmantošanai ar “UTF8” kodējumu; ja vēlaties izmantot “ANSI” kodējumu, no faila lasīšanas opcijas noņemiet parametru “encoding UTF8”. XML faili jāievieto mapē “XML”, neaizstājot rakstzīmes; pats skripts aizstās speciālās rakstzīmes ar atbilstošiem apzīmējumiem. Lai nemulsinātu lietotāju saistīšanas ar profiliem GUID, varat vienkārši norādīt lietotāja numuru vai vārdu krokainajās iekavās; viss iekavās esošais saturs tiks aizstāts ar GUID.

Skripta lietošana ir ļoti vienkārša, vienkārši palaidiet to un atlasiet vajadzīgo vienumu. Lai mainītu pašreizējo konfigurāciju uz jaunu, pašreizējā konfigurācija nav jādzēš, tā tiks pārrakstīta. Neaizmirstiet izveidot lietotājus, kas norādīti konfigurācijas failā.

Skatot pašreizējo multikioska konfigurāciju tajā pašā sesijā, kurā tā tika lietota, speciālo rakstzīmju vietā tiks parādītas aizstājēju rakstzīmju kombinācijas. Pēc sesijas maiņas (skripta restartēšanas) visas īpašās rakstzīmes tiks parādītas to sākotnējā formā.

7. solis – sistēmas aizzīmogošana

Multikiosks darbojas, nu, tas arī viss, šķiet...

Ja viss notiek pēc plāna, tad jūs kaut ko nepamanāt.

Neaizmirstiet, ka mums joprojām ir jāpārslēdz sistēma no audita režīma uz sveiciena režīmu. Nu, mēs esam tam gatavi, palaižam “Sysprep.bat”, atlasiet punktu 2, sistēma ir noslēgta. Mēs ieslēdzam ierīci, sistēma sāk darboties, mēs piesakāmies lietotāja kontā, kuram ir konfigurēts multikiosks, bet nevaram pieteikties. Pēc ziņojuma “Laipni lūdzam”, tiek parādīts ziņojums “Atteikties”.

Sākumā vēlējos aprakstīt tikai problēmas risinājumu, bet vēlāk nolēmu aprakstīt darbības, lai identificētu problēmu un atrastu vienkāršāko risinājumu, jo... Noteikti daudzus lasītājus mocīs neskaidras šaubas - “Ja nu tas ir šādi...”. Es domāju, ka, aprakstot dažādus eksperimentus, jūs ievērojami ietaupīsiet laiku, ja vēlaties atrast citu risinājumu. Lai informācija būtu pēc iespējas precīzāka un vēlreiz pārliecinātos, ka tajā nav kļūdu, eksperimentus aprakstīšu “izdarīts un ierakstīts” formātā. Tie. Aprakstītos eksperimentus izdarīšu vēlreiz.

Eksperimenti

Ko mēs darījām? Sistēmā ir divi konti:

“Administrators” – grupā “Administratori”.
“Lietotājs” – grupā “Lietotāji”.
Audita režīmā multikiosks darbojās, bet aizzīmogots tas nedarbojās.

1. eksperiments

Mēs izdzēšam instalēto sagatavošanas pakotni, pievienojumprogrammā “Datoru pārvaldība” izdzēšam lietotāju “Lietotājs” un izveidojam jaunu lietotāju ar vārdu “Lietotājs”, pielietojam sagatavošanas pakotni, dodamies uz “Lietotāja” kontu - tas notiek nestrādāt. Mēs ejam ar nosaukumu “Administrators”, noņemam lietotāju “Lietotājs” no grupas “Lietotāji”, pievienojam to grupai “Administratori”, dodamies ar nosaukumu “Lietotājs” - tas nedarbojas. Mēs piesakāmies ar vārdu “Admin”, izdzēšam sagatavošanas pakotni ar multikiosku, piesakāmies ar vārdu “Lietotājs” - mums izdevās pieteikties, bet, protams, multikioska režīms nedarbojas, jo Nodrošinājuma pakotne ir noņemta.

2. eksperiments

Mēs augšupielādējam sistēmas attēlu - rusificēts audita režīmā.

OS ir ielādēts, nospiediet “Win+r”, jo Mūsu sysprep logs ir aizvērts automātiski, palaidiet komandu “sysprep” un atvērtajā logā palaidiet “sysprep”. Sysprep iestatījumi logā: “Doties uz sistēmas sveiciena logu (OOBE)”, “Sagatavošanās lietošanai”, “Atsāknēšana”. Noklikšķiniet uz "OK" un gaidiet OS sveicienu. Mēs atbildam uz jautājumiem, kad sistēma tiek sāknēta pirmo reizi: “Turpināt izvēlētajā valodā?” - "krievu"; reģions – Krievija; tastatūras izkārtojums – krievu valoda; pievienot otru tastatūras izkārtojumu - izlaist; “Pievienosim jūs ar tīklu” – “Pagaidām izlaist”; izveidot savienojumu ar internetu - nē; licences līgums - pieņemt; “Kas izmantos šo datoru” – “Tests”; izveidojot paroli – atstājiet lauku tukšu; Ērta darbība dažādās ierīcēs – nē; Privātuma iestatījumi — pieņemt. OS ir ielādēts, pievienojumprogrammā “Datorvadība” izveidojam lietotāju ar vārdu “Lietotājs”, pievienojam sagatavošanas paketi. Rezultāts ir tāds, ka tas nedarbojas.

3. eksperiments

Mēs augšupielādējam sistēmas attēlu - rusificēts audita režīmā.

OS ir ielādēts, pievienojiet sistēmu internetam, palaidiet komandu “gpedit.msc” un sadaļā “Windows Update” iespējojiet opciju “Iespējot ieteicamos atjauninājumus, izmantojot automātiskos atjauninājumus”, katram gadījumam atsāknējiet. Atjaunināšanas centrā noklikšķiniet uz “Pārbaudīt atjauninājumus” un restartējiet, līdz visi atjauninājumi ir instalēti. Atvienojiet sistēmu no interneta. Mēs palaižam “sysprep” grafiskā režīmā un atkārtojam visas iepriekšējā solī aprakstītās darbības, sākot no utilīta “sysprep” palaišanas līdz sagatavošanas pakotnes pievienošanai. Rezultāts ir tāds, ka tas nedarbojas.

4. eksperiments

Mēs augšupielādējam sistēmas attēlu - angļu valodā audita režīmā.

Mēs palaižam “sysprep” grafiskā režīmā, aizzīmogojam operētājsistēmu ar tādiem pašiem parametriem kā 2. eksperimenta laikā. Kad sistēma pirmo reizi sāk sāknēties, mēs atlasām tos pašus parametrus kā 2. eksperimentā, izņemot reģionālos un valodas parametrus, jo Krievu valodas nav. Tādā pašā veidā izveidojiet lietotāju “Lietotājs” un pievienojiet nodrošinājuma pakotni. Rezultāts ir tāds, ka tas darbojas. Tie. Problēma ir saistīta ar lokalizāciju.

5. eksperiments

Mēs augšupielādējam sistēmas attēlu - rusificēts audita režīmā.

Papildprogrammā “Datorvadība” izveidojiet lietotāju “Lietotājs”, pievienojiet sagatavošanas paketi, dodieties uz kontu “Lietotājs”, multikiosks darbojas.

Izrakstieties no sava konta un piesakieties sadaļā “Administrators”. Mēs palaižam PowerShell ar administratora tiesībām, izpildām komandu “Dism /online /Get-Intl” un skatām “Noklusējuma lietotāja interfeisa valoda: en-US”.

Mēs bootējam no zibatmiņas diska uz WinPE, izvietotā OS atrodas manā E diskā. Izpildam komandu “Dism /image:E: /Set-UILang:ru-ru”. Mēs skatāmies uz rezultātu, izpildām “Dism /image:E: /Get-Intl” un redzam “Noklusējuma sistēmas lietotāja interfeisa valoda: ru-RU”.

Mēs sāknējam sistēmu, piesakāmies kontā “Lietotājs”, multikiosks nedarbojas.

Lai skaidri noteiktu problēmas cēloņu un seku saistību, mēģināsim vēlreiz iestatīt, lai vairāku kiosks darbotos un nedarbotos.

Mēs bootējam no zibatmiņas diska uz WinPE, izvietotā OS atrodas manā E diskā. Izpildam komandu “Dism /image:E: /Set-UIlang:en-us”. Mēs skatāmies uz rezultātu, izpildām “Dism /image:E: /Get-Intl” un redzam “Noklusējuma sistēmas lietotāja interfeisa valoda: en-US”.

Mēs sāknējam sistēmu, piesakāmies kontā “Lietotājs”, multikiosks darbojas.

Mēs bootējam no zibatmiņas diska uz WinPE, izvietotā OS atrodas manā E diskā. Izpildam komandu “Dism /image:E: /Set-UILang:ru-ru”. Mēs skatāmies uz rezultātu, izpildām “Dism /image:E: /Get-Intl” un redzam “Noklusējuma sistēmas lietotāja interfeisa valoda: ru-RU”.

Mēs sāknējam sistēmu, piesakāmies kontā “Lietotājs”, multikiosks nedarbojas.

Tie. jūs varat redzēt skaidru kioska veiktspējas atkarību no noklusējuma lietotāja interfeisa valodas. Varbūt ir kādi citi faktori, kas ietekmē multikioska darbību?

6. eksperiments

Eksperimenta tīrības labad mēs uzpildām sistēmu. Mēs augšupielādējam sistēmas attēlu - rusificēts audita režīmā.

Grafiskā režīmā palaižam “sysprep”, aizzīmogojam operētājsistēmu ar tādiem pašiem parametriem kā 2. eksperimenta laikā. Gaidām, kad OS mūs sveicinās un atbildēs uz jautājumiem: “Turpināt izvēlētajā valodā?” – “angļu valoda (Amerikas Savienotās Valstis)”; reģions – Krievija; Tastatūras izkārtojums – krievu. Turklāt visi parametri tika atlasīti tāpat kā 2. eksperimentā.

Apskatīsim lietotāja interfeisa noklusējuma valodas iestatījumus. Mēs izpildām komandu “Dism /online /Get-Intl” un redzam “Noklusējuma sistēmas lietotāja interfeisa valoda: en-US”. Papildprogrammā “Datorvadība” izveidojiet lietotāju “Lietotājs”, pievienojiet sagatavošanas paketi, dodieties uz kontu “Lietotājs”, multikiosks darbojas.

Mēs cenšamies izjaukt kiosku, mainot noklusējuma lietotāja interfeisa valodu. Mēs pārejam uz lietotāju “Test”, kas tika izveidots, kad sistēma pirmo reizi tika sāknēta, un iespējojam tam automātisku pieteikšanos, lai sistēma uzreiz netiktu sāknēta “Lietotāja” kontā. Izpildiet “netplwiz”, atlasiet lietotāju “Pārbaudīt”, noņemiet atzīmi no izvēles rūtiņas “Pieprasīt lietotājvārdu un paroli” un lietojiet parametrus.

Sāknējiet no zibatmiņas diska programmā WinPE. Izpildiet komandu “Dism /image:E: /Set-UILang:ru-ru”. Mēs skatāmies uz rezultātu, izpildām “Dism /image:E: /Get-Intl” un redzam “Noklusējuma sistēmas lietotāja interfeisa valoda: ru-RU”.

Mēs sāknējam sistēmu, mēģinām pieteikties kontā “Lietotājs”, multikiosks darbojas. Tie. to nevar salauzt. Vai ir iespējams to panākt šādā veidā?

7. eksperiments

Mēs augšupielādējam sistēmas attēlu - rusificēts audita režīmā.

Mēs palaižam “Sysprep.bat”, atlasām punktu 2. Ielādējam sistēmu, “Datorvadības” papildprogrammā izveidojam lietotāju “Lietotājs”, pievienojam sagatavošanas pakotni, dodamies uz “Lietotāja” kontu, multi- kiosks nedarbojas.

Sāknējiet no zibatmiņas diska programmā WinPE. Izpildiet komandu “Dism /image:E: /Set-UIlang:en-us”. Mēs skatāmies uz rezultātu, izpildām “Dism /image:E: /Get-Intl” un redzam “Noklusējuma sistēmas lietotāja interfeisa valoda: en-US”.

Mēs sāknējam sistēmu, mēģinām pieteikties “Lietotāja” kontā, multikiosks nedarbojas.

Izrādās, ka, mainot lietotāja interfeisa noklusējuma valodas iestatījumu, multikioska veiktspēju var ietekmēt tikai tad, kad sistēma ir audita režīmā vai pirmajā sāknēšanas reizē pēc sistēmas aizzīmogošanas. Tas nozīmē, ka jums būs jāaizzīmogo sistēma ar atbildes failu, kurā sistēmas valoda tiks atlasīta angļu valodā, un pēc tam jāmaina sistēmas iestatījumi, lai interfeiss būtu krievu valodā. Ne pārāk labs risinājums. Varbūt problēmu var atrisināt, instalējot valodas pakotni vai instalējot papildu valodu pakotnes?

8. eksperiments

Mēs augšupielādējam sistēmas attēlu - angļu valodā audita režīmā.

Mēs izveidojam savienojumu ar internetu, sistēmas parametros dodieties uz sadaļu “Valoda”, atlasiet “Pievienot valodu”, atlasiet valodu “Krievu”, noklikšķiniet uz “Tālāk”, atstājam instalācijas parametrus kā noklusējuma, noklikšķiniet uz “Instalēt”, pēc instalēšanas. valodas pakotni mēs pārstartējam sistēmu, tagad Russified. Atvienojiet sistēmu no interneta, palaidiet “Sysprep.bat”, atlasiet punktu 2.

Pēc sistēmas ielādes pievienojumprogrammā “Datorvadība” izveidojiet lietotāju “Lietotājs”, pievienojiet sagatavošanas paketi, dodieties uz kontu “Lietotājs”, multikiosks nedarbojas.

9. eksperiments

Mēģināsim rusificēt sistēmu pirms instalēšanas, bezsaistes režīmā. Paralēli būs arī īsa izglītojoša programma par izplatīšanas lokalizāciju.

Es ņemu zibatmiņas disku ar tīru oriģinālo izplatīšanu - X21-96381. Tas būs brauciens "E". Lai uzstādītu attēlus, es izveidoju mapes: "c:MountInstall", "c:MountWinre", "c:MountBoot". Paņemu lokalizācijas pakotņu komplektu - X21-87814. Un mapē “c:Mount” es nokopēju pakotnes no tās: “Microsoft-Windows-Client-Language-Pack_x86_ru-ru.cab”, “lp.cab”, “WinPE-Setup_ru-ru.cab”. Palaižu konsoli ar administratora tiesībām. Domāju, ka turpmākās komandas būs skaidras bez komentāriem.

Lokalizācijas komandas

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

Mēs sāknējam no zibatmiņas diska, atlasiet krievu valodu un instalējam sistēmu tukšā diskā. Kad sistēma lūdz atlasīt reģionu, nospiediet taustiņu kombināciju Ctrl+Shift+F3. Papildprogrammā “Datorvadība” izveidojiet lietotāju “Lietotājs”, pievienojiet sagatavošanas paketi, dodieties uz kontu “Lietotājs”, vairāku kiosks nedarbojas.

Sāknējiet no zibatmiņas diska programmā WinPE. Izpildiet komandu “Dism /image:E: /Set-UIlang:en-us”.

Mēs sāknējam sistēmu, mēģinām pieteikties kontā “Lietotājs”, multikiosks darbojas.

Acīmredzot problēma nav pakotnes pievienošanas metodēs, mēģināsim pievienot papildu pakotnes.

10. eksperiments

Mēs paņemam zibatmiņas disku, kuru sagatavojām iepriekšējā darbībā.

Mēs ņemam paketi “Feat on Demand” - X21-87815. Es kopēju pakotnes no tā uz mapi “c:Mount”: «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».

Palaidiet konsoli ar administratora tiesībām un izpildiet komandas:

Komandas

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

Mēs sāknējam no zibatmiņas diska, atlasiet krievu valodu un instalējam sistēmu tukšā diskā. Kad sistēma lūdz atlasīt reģionu, nospiediet taustiņu kombināciju Ctrl+Shift+F3. Papildprogrammā “Datoru pārvaldība” izveidojiet lietotāju “Lietotājs”, pievienojiet nodrošinājuma pakotni un piesakieties kontā “Lietotājs”. Man bija melns ekrāns, kas ilgu laiku karājās, tāpēc es karsti sāku sistēmu.

Izdzēšam sagatavošanas paketi, piesakāmies kā “Lietotājs”, restartējam sistēmu, pievienojam sagatavošanas paketi, multikiosks nedarbojas.

Sāknējiet no zibatmiņas diska programmā WinPE. Izpildiet komandu “Dism /image:E: /Set-UIlang:en-us”.

Mēs sāknējam sistēmu, mēģinām pieteikties kontā “Lietotājs”, multikiosks darbojas.

Apiet

Normāli varoņi. Viņi vienmēr izbrauc apkārtceļu!

Dažādas lokalizācijas pakotņu instalēšanas metodes problēmu neatrisināja, kas nozīmē, ka pēc aizzīmogošanas pirmajā sāknēšanas reizē būs jāinstalē “en-us” valoda un pēc pirmās sāknēšanas jāmaina valodas iestatījumi.

Mēs augšupielādējam sistēmas attēlu - rusificēts audita režīmā.

Failā “Unattend.xml” ierakstiet parametrā “en-US”, palaidiet “Sysprep.bat”, atlasiet 2. punktu un skatiet, ko mēs saņēmām. Sveiciena ekrāns ir angļu valodā, darbojas multikiosks. Tas nozīmē, ka failam Unattend.xml ir jāpievieno komanda, lai mainītu sveiciena valodu. Un, lai to izdarītu, jums ir jāpalaiž komanda “control intl.cpl,, /f:”, kas norāda konfigurācijas failu, kas norādīs pašreizējo parametru kopēšanu sveiciena ekrānā. Konfigurācijas faila saturs izskatīsies šādi.

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

Jo kopēs pašreizējā lietotāja iestatījumus, tad komanda ir jāizpilda pēc lietotāja pieteikšanās, kas nozīmē, ka mums būs nepieciešams. Ir viens mazs “bet”, izpilde notiks pēc tam, kad būs pieteicies lietotājs ar administratora tiesībām. Un es negribētu izveidot papildu failu, kas būtu nepieciešams, lai komanda veiksmīgi darbotos. Labāk ir ieviest visu risinājumu vienā failā - “Unattend.xml”. Lai to izdarītu, jums vienkārši būs jāpalaiž komanda, kas izveido konfigurācijas failu. Es domāju, ka es izveidošu konfigurācijas failu, izmantojot komandu "echo" vidē "cmd", bet tai ir jāatbrīvojas no leņķa iekavām ar cirkumfleksu. Tie. Lai izveidotu konfigurācijas failu, tiek iegūta šāda komanda.

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

Bet mums šī komanda jāievieto XML, kam ir savas prasības speciālo rakstzīmju lietošanai:

Īpašs raksturs
Aizstāšanas vērtība

>
&gt;

<
&lt;

&
&amp;

"
&apos;

"
&quot;

Rezultātā, lai izveidotu konfigurācijas failu, mēs saņēmām šādu komandu “FirstLogonCommands”.

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;

Tālāk mēs izpildām komandu, izmantojot konfigurācijas failu.

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

Pēc tam izdzēsiet iepriekš izveidoto failu un restartējiet sistēmu. izmaiņas stāsies spēkā pēc pārstartēšanas.

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

Rezultātā es saņēmu šādu atbildes failu sysprep.

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>

Pārbaudīsim...

Mēs augšupielādējam sistēmas attēlu - rusificēts audita režīmā.

Mēs mainām failu Unattend.xml uz jaunu, palaižam “Sysprep.bat”, atlasām 2. punktu un skatāmies, kas mums ir. Pirmoreiz palaižot, sveiciena ekrāns ir angļu valodā, un sistēma tiek atsāknēta. Sveiciena ekrāns ir krievu valodā, multikiosks darbojas.

Ja jums ir kādi jautājumi par Windows 10 IoT Enterprise iestatīšanu un licencēšanu, lūdzu, sazinieties ar: [e-pasts aizsargāts] vai uz vietni quarta-embedded.ru.
Jūs varat atrast atbildes uz dažiem jautājumiem mūsu wiki vai uz mūsu YouTube kanāls

Raksta autors: Vladimirs Borisenkovs, Quarta Technologies tehniskais eksperts.

Avots: www.habr.com