Windows 10 IoT Enterprise 2019 - modaliteti me shumë kioskë

Paraqitje

Windows 10 IoT Enterprise 2019 është emri i marketingut për versionin e radhës të Windows 10. Lëshimi i këtij versioni është paralajmëruar në shtator 2018, përkatësisht ka versionin 1809, 18 është viti, 09 është muaji. Shumë artikuj janë shkruar për versionin e ri të Windows 10 1809, por shumica e tyre i kushtohen "harqeve", "bukurive" dhe funksionaliteteve të ndryshme që kërkohen në shtëpi.
Ky artikull do të diskutojë vetëm funksionalitetin që mund të kërkohet nga prodhuesit e pajisjeve me qëllime fikse. Gjegjësisht, në lidhje me aftësitë e reja të modalitetit "Kiosk". Do të preket gjithashtu tema e ndryshimit të emrave të skemave të shërbimit për botimet Windows të segmentit të ndërmarrjes.

Skema e vjetër e shërbimit me emër të ri

Më lejoni të filloj me një shpjegim të shkurtër: në segmentin e korporatave të botimeve të Windows ekzistojnë dy skema shërbimi sipas të cilave Windows merr përditësime. Diagramet e shërbimit kanë një përcaktim shkronjash. Aktualisht degët e shërbimit quhen LTSC dhe SAC.

LTSC qëndron për Kanali i servisimit afatgjatë (me mirëmbajtje afatgjatë). Më parë, një kanal i tillë quhej LTSB - Long Term Servicing Branch. Microsoft thjesht ndryshoi emrin e kanalit të shërbimit, vetë shërbimi mbeti i njëjtë.

Microsoft ndryshoi gjithashtu emrin e degës së shërbimit CBB - Dega aktuale për Biznes, tani kjo degë shërbimi quhet SAC - Semi-vjetor Channel. Përsëri, vetëm emri ka ndryshuar.

Por duhet përmendur se degët e servisit LTSC dhe SAC përdorin shpërndarje të ndryshme të Windows.

Pak për modalitetin e ri të kioskës në SAC

Siç thashë tashmë, LTSC dhe SAC kanë shpërndarje të ndryshme. LTSC nuk ka aplikacione standarde universale ose një dyqan aplikacionesh, por SAC ka. Prandaj, LTSC nuk ka një shfletues Edge, por SAC ka. Nëse zgjidhni shfletuesin Edge kur konfiguroni një kioskë, atëherë dy mënyra janë tani të disponueshme:

  1. Si shenjë dixhitale ose ekran interaktiv
  2. Si një shfletues publik

Nuk do të ndalem në vendosjen e këtyre mënyrave, sepse... Konfigurimi është shumë i thjeshtë dhe bëhet në një ndërfaqe grafike. Thjesht krijoni një përdorues që nuk është anëtar i grupit të Administratorëve, aktivizoni modalitetin kiosk për të duke përdorur EDGE dhe shikoni se si funksionojnë këto mënyra.

Kioska me shumë aplikacione

Disa njerëz mendojnë se përdorimi i licencuar Windows 10 IoT Enterprise nënkupton funksionimin e vetëm një aplikacioni në pajisje, në fakt nuk është kështu. Pajisja duhet të projektohet për të kryer një detyrë të vetme biznesi dhe përdoruesi nuk duhet të ketë akses në një desktop. Tani vetë Microsoft ka dhënë mjetin për të përdorur shumë aplikacione. Kjo mënyrë quhet "kioskë me shumë aplikacione"; në vijim, për shkurtësi, unë do ta quaj "multikiosk". Në këtë artikull do të shikojmë konfigurimin e këtij modaliteti duke përdorur paketën e softuerit dhe disa nga veçoritë e këtij modaliteti.

Pak për modalitetin Multikiosk

Kur hyni në një llogari përdoruesi për të cilën është konfiguruar modaliteti me shumë kioskë, sistemi do të funksionojë në modalitetin e tabletit. Menyja Start do të zgjerohet në ekran të plotë, duke shfaqur pllakat e aplikacionit.

Lista e cilësimeve bazë dhe aftësive të modalitetit:

  1. Konfigurimi për shumë përdorues ose grupe
  2. Secilit përdorues ose grup mund t'i caktohen cilësime individuale
  3. Aftësia për të përdorur aplikacione universale dhe klasike
  4. Mundësia për të nisur automatikisht një nga aplikacionet kur përdoruesi regjistrohet
  5. Aplikacionet në listën e bardhë
  6. Qasja në dosje duke përdorur një listë të bardhë

Vlen t'i kushtohet vëmendje pikës 5. Si parazgjedhje, vetëm ato aplikacione që janë të nevojshme për funksionimin e sistemit do të lejohen të funksionojnë; aplikacionet e tjera duhet të shtohen në listën e atyre të lejuara. Ato. Tani nuk keni nevojë të konfiguroni AppLocker veçmas. Nga rruga, për të shmangur konfliktet me cilësimet e AppLocker, në modalitetin me shumë kioskë, të gjitha rregullat e konfiguruara të AppLocker nuk do të zbatohen.

Pika 6 tregon një opsion të mirë, por për momentin është e mundur të jepet vetëm leja e shkrimit në dosjen "Shkarkime". Modaliteti ju lejon të përdorni aplikacione universale dhe klasike. Të gjitha cilësimet e modalitetit janë të specifikuara në një skedar XML, në të cilin mund të specifikoni gjithashtu cilësimet për një kiosk të vetëm aplikacioni.

Tani le të përpiqemi t'i rregullojmë të gjitha ...

Çfarë na duhet...

  1. Para së gjithash, na duhet vetë sistemi, i cili mbështet modalitetin multikiosk. Këtu mund të shkarkoni version demo
  2. Udhëzime për vendosjen e një multikioske
  3. Çdo redaktues XML
  4. Për të aplikuar cilësimet e multikioskëve:
    1. Për metodën nr. 1 - ICD, e cila është pjesë e ADK. ADK është e mundur shkarko këtu
    2. Për metodën nr. 2 - mjeti PsExec. Shërbimi mund të jetë shkarko këtu

Ai tha - "Le të shkojmë!"

Unë do të kryej të gjitha eksperimentet në versionin komercial Windows 10 IoT Enterprise 1809 LTSC x32, jo një version demo. Sistemi nuk do të aktivizohet sepse mungesa e aktivizimit nuk ndikon në funksionalitetin e sistemit. Kam marrë 32 bit vetëm sepse merr më pak hapësirë ​​dhe do të jetë më e shpejtë për të punuar me imazhet e sistemit.

Hapi 1 - instalimi

Instalimi i Win 10 IoT Enterprise nuk ndryshon nga instalimi i Win 10 Enterprise, kështu që nuk do ta përshkruaj të gjithë procesin e instalimit, do të flas vetëm për disa nga nuancat.

Për çdo rast, më lejoni t'ju kujtoj, mos e instaloni sistemin në krye të atij të instaluar. Kur instaluesi pyet për vendndodhjen e instalimit të sistemit, fshini të gjitha ndarjet në diskun e ardhshëm të sistemit dhe specifikoni një disk të pandarë.

Ne e instalojmë sistemin pa lidhje interneti në mënyrë që sistemi të mos tërheqë asgjë të panevojshme.

Sepse Ne do të krijojmë imazhe rezervë të sistemit dhe për këtë do ta mbyllim atë në modalitetin e auditimit, më pas mund të kurseni pak kohë duke e ngarkuar sistemin në modalitetin e auditimit menjëherë pas instalimit. Për ta bërë këtë, kur sistemi ju kërkon të zgjidhni një rajon “Le të fillojmë me rajonin. A është e drejtë" thjesht shtypni "Ctrl+Shift+F3".

Hapi 2 - krijoni një imazh të sistemit

Sepse ne do të tallemi me sistemin dhe do të provojmë cilësime të ndryshme të reja, është e mundur që diçka të shkojë keq dhe do të na duhet ta kthejmë sistemin në gjendjen e tij origjinale. Dhe për t'u kthyer shpejt në gjendjen e tij origjinale, duhet të krijoni një imazh të sistemit. E vetmja gjë që do të bëj është të kopjoj "çantën e zotërinjve" - ​​skenarin dhe skedarin e përgjigjeve. Të gjithë skedarët e mi ndodhen në dosjen "Sysprep", të cilën e kopjoj në rrënjën e diskut të sistemit. Dhe natyrisht, unë do ta ndaj me ju këtë "set të zotërinjve".

Sysprep.bat - për të vulosur sistemin.

@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

Kur të hapet, skripti do të kontrollojë praninë e llogarisë "Admin" dhe do të krijojë një nëse mungon. Llogaria do të shtohet në grupin e Administratorëve.

Unattend.xml – skedari i përgjigjes për sysprep.

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

Kur vuloset në modalitetin e auditimit, skripti do të shtojë një komandë në regjistër për të përfunduar procesin "sysprep.exe" në mënyrë që të mos mbyllet manualisht dritarja sysprep çdo herë. Kur vuloset në modalitetin hello, skripti do të heqë komandën për të mbyllur dritaren nga regjistri dhe vetë do të ndryshojë vlerën e arkitekturës në skedarin e përgjigjeve në atë aktuale. Skedari i përgjigjeve përmban parametra për nisjen e sistemit pa ndërveprim të përdoruesit dhe një komandë për fshirjen e dosjes "Sysprep" në rrënjën e diskut të sistemit.

Tani do ta vulos sistemin në modalitetin e auditimit duke përdorur "Sysprep.bat" dhe do të kap një imazh të sistemit. Unë do të imazhoj sistemin duke përdorur DISM dhe do të imazhoj vetëm vëllimin e sistemit. Nëse do të imazhoni vetëm vëllimin e sistemit dhe jo të gjithë diskun, atëherë mos harroni të kopjoni përmbajtjen e drejtorisë "WindowsSystem32Recovery" në vëllimin e parë në dosjen "RecoveryWindowsRE" pas vendosjes së sistemit. Kjo do të duhet të bëhet përpara se të ngarkoni OS. pas ngarkimit të sistemit operativ, drejtoria "WindowsSystem32Recovery" do të jetë tashmë bosh.

Hapi 3 – Rusifikimi i sistemit

Paketa gjuhësore mund të instalohet pa lidhje interneti nëse e keni këtë paketë. Nëse jo, vetë sistemi do ta shkarkojë atë nga Interneti kur të shtoni gjuhën në cilësimet. Thjesht nuk keni nevojë të merrni paketën e gjuhës nga versionet e mëparshme të OS. Për Windows 10 1809 duhet të ketë një paketë gjuhësore posaçërisht për Windows 10 1809.

Microsoft po ndjek planin e tij për të transferuar gradualisht cilësimet nga menyja klasike në atë të re, kështu që në panelin e kontrollit klasik nuk do të gjeni më cilësime për ndryshimin e gjuhës dhe instalimin e një pakete gjuhësore. Këto cilësime tani janë vetëm në parametrat e sistemit.

Në modalitetin e auditimit, mund të hasni një problem me hapjen e cilësimeve të sistemit nga menyja Start; për të hapur cilësimet e sistemit, ekzekutoni komandën - "ms-settings:", kushtojini vëmendje pikës në fund të komandës, pa të komanda do të nuk punojnë. Pas hapjes së parametrave të sistemit një herë duke përdorur këtë komandë, ai mund të hapet duke përdorur menynë grafike.

Por në cilësimet e sistemit mund të instaloni një paketë gjuhësore nëse sistemi është i lidhur me internetin, nuk ka asnjë mundësi për të zgjedhur të instaloni një paketë gjuhësore nga një skedar lokal.

Nuk do ta përshkruaj procesin e lokalizimit të sistemit sepse... kjo do ta komplikojë ndjeshëm artikullin, veçanërisht pasi procesi i lokalizimit është i detajuar përshkruar këtu. Por unë do të doja të tërhiqja vëmendjen tuaj për veçantinë e ndryshimit të gjuhës së sistemit pas instalimit të një pakete gjuhësore duke përdorur tastierën. Kjo veçori përshkruhet në të njëjtën wiki për të cilën kam dhënë një lidhje më parë, në nënseksion "Shtimi i një gjuhe në listën e gjuhëve".

Do të instaloj paketën e gjuhës pa lidhje interneti.

Pas lokalizimit të plotë të sistemit, sigurohuni që të krijoni një imazh të sistemit.

Hapi 4 - Instaloni aplikacionet e nevojshme

Sepse Meqenëse sistemet LTSB dhe LTSC nuk kanë një dyqan aplikacionesh, instalimi i aplikacioneve nga Microsoft Store shkakton disa vështirësi, përkatësisht shkarkimin e aplikacionit. Për të shkarkuar aplikacione, kompania Adguard ka bërë një shërbim shumë të përshtatshëm - "Dyqani Adguard", me të cilin mund të merrni lidhje të përkohshme shkarkimi për aplikacionet dhe përbërësit e tyre.

Për të instaluar aplikacionin, do t'ju nevojiten skedarë me shtesat "Appx" dhe "AppxBundle". Para se të instaloni vetë aplikacionin, duhet të instaloni komponentët e tij. Si rregull, komponentët nga një aplikacion mund të dallohen në mënyrë intuitive nga emri i skedarit.

Për të mos e zgjatur shumë artikullin, nuk do të përshkruaj në detaje procesin e instalimit të aplikacioneve, veçanërisht pasi ka informacione për instalimin udhëzime të hollësishme. Por unë do të shtoj një mënyrë tjetër për të instaluar aplikacione në llogarinë tuaj aktuale. Aplikacionet mund të instalohen duke përdorur programin "Instaluesi i aplikacionit", por për të instaluar aplikacionet do t'ju duhet një lidhje interneti, por aplikacionet mund të instalohen me një klik të dyfishtë dhe nuk do t'ju nevojiten komponentët e tij, të gjithë komponentët e nevojshëm do të shkarkohen dhe instalohen "Instaluesi i aplikacionit".

Dhe një kujtesë e vogël, kur instaloni aplikacionin në llogarinë rrjedhëse, nuk do të jeni në gjendje të vulosni sistemin. Si të instaloni aplikacione në mënyrë që të vulosni sistemin, shihni udhëzimet e mësipërme. Dhe për të kontrolluar funksionimin e multikioskut, aplikacionet ekzistuese janë mjaft të mjaftueshme.

Hapi 5 – krijimi i një skedari konfigurimi për multikiosk

Tani arrijmë te pjesa më interesante - konfigurimi i modalitetit të kioskës. Le të shohim udhëzimet sipas cilësimeve që shohim. Para së gjithash, do të na duhet të krijojmë një skedar konfigurimi XML, një shembull i plotë i të cilit mund të gjendet këtu. shikoni këtu.

Le të fillojmë duke vendosur paraqitjen e pllakave. Mënyra më e lehtë për të krijuar një konfigurim të personalizimit të pllakave XML është eksportojnë gjendjen e tyre aktuale.

Para së gjithash, le të shtojmë pllakat e aplikacioneve që na duhen në menynë Start. Thirrni kërkimin "Win+s", gjeni aplikacionin e dëshiruar, klikoni me të djathtën mbi të dhe zgjidhni "Godosni në ekranin e fillimit".

Kam gozhduar aplikacionet e mëposhtme:

  • fletore shënimesh
  • kalkulatriçe
  • Internet Explorer
  • Pikturoj
  • WordPad
  • Parameters
  • Windows Security

Dy aplikacionet e fundit u fiksuan sepse... Thjesht nuk ka aplikacione të tjera universale në paketën standarde LTSC. Vini re se pllakat e desktopit lidhen me shkurtoret. Tani, duke lëvizur pllakat drejtpërdrejt në menynë Start, unë do t'i ndaj pllakat e ngjitura në dy grupe. Për të krijuar një grup të ri pllakash, tërhiqni një pllakë dukshëm më të lartë ose më të ulët se pllakat e tjera, gjë që do të nxjerrë në pah një ndarës intuitiv. Ju mund t'i emërtoni grupet sipas gjykimit tuaj; për ta bërë këtë, vendosni kursorin e miut sipër grupit dhe kur të shfaqet mbishkrimi "Emërtoni grupin", klikoni butonin e majtë të miut. Unë do ta quaj grupin e parë "Cilësimet", ai do të përfshijë pllakat "Cilësimet" dhe "Windows Security". Grupin e dytë do ta quaja “Aplikacione Zyre”, i cili do të përfshijë të gjitha pllakat e tjera. Nga rruga, ju mund të lëvizni grupe të tëra pllakash duke i tërhequr zvarrë duke përdorur dy shiritat që ndodhen në pjesën e sipërme djathtas të emrit të grupit.

Sepse Në pllakën "Windows Security" emri nuk përshtatet plotësisht, unë do ta ndryshoj madhësinë e tij në "E gjerë". Për të ndryshuar madhësinë e një pllake, klikoni me të djathtën mbi pllakë dhe zgjidhni "Ndrysho madhësinë".

Pas konfigurimit, ne eksportojmë gjendjen aktuale dhe ekzekutojmë komandën në mjedisin PowerShell - "Export-StartLayout - rruga C: SysprepStartLayout.xml".

Tjetra, mënyra më e lehtë nuk është të krijoni vetë skedarin e cilësimeve, por merrni një skedar shembull nga këtu cilësimet - klikoni në butonin "Kopjo", ngjisni përmbajtjen në bllokun e shënimeve dhe ruajeni si "MultiAppKiosk.xml". Tani ne i ndryshojmë cilësimet në tonat. Për të ndryshuar cilësimet e pllakave të bashkangjitura, kopjoni të gjithë bllokun "StartLayoutCollection" nga "StartLayout.xml" në "MultiAppKiosk.xml". Për të shtuar aplikacione në ato të lejuara, duhet të futni identifikuesit universalë të aplikacioneve në seksionin "Aplikacionet e lejuara" dhe në të njëjtin bllok shtoni shtegun e plotë për skedarët e ekzekutueshëm të aplikacioneve klasike, e cila specifikohet në vetitë e shkurtoreve në të cilat pllaka referohen. Për të arritur shpejt te një shkurtore, kliko me të djathtën mbi një pllakë të gozhduar dhe shko te Më shumë > Shko te Vendndodhja e skedarit. Vini re se parametri "AppUserModelId" përdoret për të specifikuar ID-në e aplikacionit universal dhe parametri "DesktopAppPath" përdoret për të specifikuar shtegun e plotë për në aplikacionin desktop. Dhe një nuancë tjetër e vogël, nëse planifikoni të përdorni IE në një sistem x64, atëherë në listën e aplikacioneve të lejuara duhet të specifikoni dy shtigje për skedarin e ekzekutueshëm "Program FilesInternet Exploreriexplore.exe" dhe "Program Files (x86)Internet Exploreriexplore. exe”.

Unë nuk do të jap akses në dosje, kështu që po fshij seksionin "FileExplorerNamespaceRestrictions".

Shfaqja e shiritit të detyrave nuk më shqetëson, kështu që lë gjithçka ashtu siç është në seksionin "Taskbar".

Në shembull, janë specifikuar dy profile, por unë do të kem vetëm një profil, kështu që seksioni me profilin e dytë mund të fshihet. Para se të çinstaloni, kushtojini vëmendje shembullit të fillimit automatik të një aplikacioni me argumente.

Në seksionin "Konfigurimet", llogaritë janë të lidhura me profile; ju lutemi vini re se llogari të shumta mund të lidhen me një profil. Por sepse Unë jam i interesuar vetëm për një llogari, atëherë do të fshij të gjitha lidhjet, përveç të parës - blloqet "Config". Në lidhjen e mbetur do të shkruaj emrin e përdoruesit "Përdorues".

Kam marrë këtë skedar me parametra

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>

Kur krijoni skedarët tuaj të konfigurimit XML, mos harroni se çdo profil duhet të ketë një ID unike, dhe jo vetëm brenda një skedari XML, por brenda një OS. Ato. Në mënyrë ideale, për të shmangur konfuzionin, mund të krijoni një identifikues të ri çdo herë; kjo mund të bëhet në mjedisin PowerShell duke përdorur komandën "[guid]::NewGuid()". Dhe sigurohuni që ta ruani skedarin në kodimin "UTF-8"; nëse skedari ruhet në kodimin "ANSI", atëherë kur ndërtoni paketën e përgatitjes do të merrni një gabim nëse skedari XML përmban cirilik.

Hapi 6 - aplikimi i cilësimeve të multikioskëve

Le të shohim dy mënyra për të aplikuar cilësimet e përshkruara në skedarin e konfigurimit. E para është përmes një pakete sigurimi, e cila duhet të krijohet në ICD. Për disa, ndoshta kjo metodë do të jetë më e njohur. E dyta është përdorimi i "MDM Bridge WMI Provider", kjo metodë më dukej më e përshtatshme.

Metoda # 1

Kush nuk ka një ICD? shkarko ADK dhe instaloni. Instalimi i ADK është shumë i thjeshtë; grupi i komponentëve mund të lihet si parazgjedhje.

Hapni ICD, klikoni në pllakën "Përgatitja e avancuar", specifikoni emrin dhe dosjen e projektit dhe klikoni "Next". Në dritaren tjetër, zgjidhni "Të gjitha botimet e desktopit të Windows" dhe klikoni "Next". Mund të anashkaloni importimin e paketës së përgatitjes; klikoni "Finish".

Zgjeroni menynë rënëse "Runtime Settings", më pas zgjeroni nënmenynë "AssignedAccess" dhe zgjidhni "MultiAppAssignedAccessSettings". Në krye të seksionit të mesëm të dritares ICD, klikoni butonin "Shfleto" dhe tregoni vendndodhjen e skedarit XML me cilësimet. Për çdo rast, mund ta ruani projektin duke shtypur "Ctrl+s". Në pjesën e sipërme të majtë të ICD, zgjidhni "Export" dhe zgjidhni "Provisioning Package" nga menyja rënëse. Si zotërues, zgjidhni “administrator IT”; të gjitha pyetjet e tjera mund të anashkalohen duke klikuar “Next” dhe në fund klikoni “Build” dhe “Finish”.

Në sistemin e instaluar, mos harroni të krijoni një përdorues "Përdorues", ai nuk mund të shtohet në grupin "Administrat", përndryshe multikiosku nuk do të funksionojë. Kam krijuar një përdorues në Menaxhimin e Kompjuterit me një fjalëkalim që nuk skadon kurrë.

Tani ne ekzekutojmë paketën e përgatitjes në sistemin e instaluar më parë. Pas aplikimit të paketës së përgatitjes, menyja Start dhe menyja e administratorit do të ndryshojnë. Në kolonën e majtë të fillimit, butonat duhet të zhduken: "Dokumentet", "Imazhi", "Opsionet". Nëse menyja e fillimit nuk ka ndryshuar, atëherë diçka ka shkuar keq. Një paketë e instaluar mund të hiqet duke hapur Cilësimet > Llogaritë > Qasja në llogarinë e punës ose të shkollës > Shto ose hiq dritaren e furnizimit të paketës.

Nëse menyja e fillimit ka ndryshuar, atëherë cilësimet aplikohen në sistem, identifikohuni si përdoruesi për të cilin është konfiguruar multikiosku dhe shikoni rezultatin.

Metoda # 2

Aplikimi i cilësimeve duke përdorur "MDM Bridge WMI Provider" përshkruar këtu. Komoditeti i kësaj metode është fleksibiliteti i saj i përdorimit dhe aftësia për të hequr qafe shumë operacione manuale që nevojiten për të krijuar një paketë përgatitore. Këtu të gjithë mund të marrin një vendim për veten e tyre që do të jetë i përshtatshëm për ta. Kam bërë disa skenarë për veten time.

MiltiKiosk.bat – skript i nisjes

@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 – skenari kryesor

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

Nëse dëshironi të përdorni zgjidhjen time, atëherë ruani skriptet e mësipërme me emrat e tyre origjinalë në një dosje dhe vendosni skedarin "PsExec.exe" në të njëjtën dosje. Në të njëjtën dosje, krijoni një dosje "XML" dhe kopjoni skedarët XML për të konfiguruar multikiosk në të. Do të përdor të njëjtin skedar si në metodën e parë.

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>

Pak për veçoritë e skenarit. Skripti është krijuar për të përdorur skedarë XML me kodim "UTF8"; nëse dëshironi të përdorni kodimin "ANSI", atëherë hiqni parametrin "encoding UTF8" nga opsioni i leximit të skedarit. Ju duhet të vendosni skedarët XML në dosjen "XML" pa zëvendësuar karaktere; vetë skripti do të zëvendësojë karaktere speciale me përcaktimet e duhura. Për të mos u ngatërruar në GUID-të e lidhjes së përdoruesve me profilet, thjesht mund të tregoni numrin ose emrin e përdoruesit në mbajtëset kaçurrelë; të gjitha përmbajtjet në mbajtëset kaçurrelë do të zëvendësohen me GUID.

Përdorimi i skriptit është shumë i thjeshtë, thjesht ekzekutoni atë dhe zgjidhni artikullin e kërkuar. Për të ndryshuar konfigurimin aktual në një të ri, nuk është e nevojshme të fshini konfigurimin aktual; ai do të mbishkruhet. Mos harroni të krijoni përdorues që janë të specifikuar në skedarin e konfigurimit.

Kur shikoni konfigurimin aktual të multikioskut në të njëjtin sesion në të cilin është aplikuar, në vend të karaktereve speciale, do të shfaqen kombinime të karaktereve zëvendësuese. Pas ndryshimit të seancës (rifillimi i skriptit), të gjithë karakteret speciale do të shfaqen në formën e tyre origjinale.

Hapi 7 - Vulosja e sistemit

Multikiosku funksionon, mirë, kjo është e gjitha, duket ...

Nëse gjithçka shkon sipas planit, atëherë nuk po vini re diçka.

Mos harroni se ne ende duhet ta kalojmë sistemin nga modaliteti i auditimit në modalitetin e mirëseardhjes. Epo, ne jemi gati për këtë, ne nisim "Sysprep.bat", zgjidhni pikën 2, sistemi është i vulosur. Ne ndezim pajisjen, sistemi niset, ne hyjmë në llogarinë e përdoruesit për të cilën është konfiguruar multikiosk, por nuk mund të regjistrohemi. Pas mesazhit "Mirësevini", shfaqet mesazhi "Dalje".

Në fillim doja të përshkruaja vetëm zgjidhjen e problemit, por më vonë vendosa të përshkruaj hapat për të identifikuar problemin dhe për të gjetur zgjidhjen më të thjeshtë sepse... Me siguri shumë lexues do të mundohen nga dyshime të paqarta - "Po sikur të jetë kështu ...". Mendoj se përshkrimi i eksperimenteve të ndryshme do t'ju kursejë një sasi të konsiderueshme kohe nëse doni të gjeni një zgjidhje tjetër. Për ta bërë informacionin sa më të saktë dhe për t'u siguruar edhe një herë që nuk ka gabime, unë do t'i përshkruaj eksperimentet në formatin "të kryera dhe të regjistruara". Ato. Unë do të bëj përsëri eksperimentet e përshkruara.

eksperimente

çfarë bëmë? Ekzistojnë dy llogari në sistem:

"Admin" - në grupin "Administrat".
"Përdoruesi" - në grupin "Përdoruesit".
Në modalitetin e auditimit, multikiosku funksionoi, por kur u vulos, nuk funksionoi.

Eksperimenti 1

Ne fshijmë paketën përgatitore të instaluar, në skedarin "Menaxhimi i Kompjuterit" fshijmë përdoruesin "Përdorues" dhe krijojmë një përdorues të ri me emrin "Përdorues", aplikojmë paketën e përgatitjes, shkojmë te llogaria "Përdoruesi" - po nuk punojnë. Ne shkojmë nën emrin "Admin", heqim përdoruesin "Përdorues" nga grupi "Përdoruesit", e shtojmë atë në grupin "Administruesit", shkojmë nën emrin "Përdorues" - nuk funksionon. Ne regjistrohemi me emrin "Admin", fshijmë paketën e përgatitjes me multikiosk, identifikohemi me emrin "Përdorues" - arritëm të identifikoheshim, por sigurisht që modaliteti multikiosk nuk funksionon sepse Paketa siguruese është hequr.

Eksperimenti 2

Ne ngarkojmë imazhin e sistemit - Rusifikuar në modalitetin e auditimit.

Sistemi operativ është ngarkuar, shtypni "Win+r", sepse Dritarja jonë sysprep është mbyllur automatikisht, ekzekutoni komandën "sysprep" dhe ekzekutoni "sysprep" në dritaren që hapet. Cilësimet e Sysprep në dritare: "Shkoni te dritarja e mirëseardhjes së sistemit (OOBE)", "Përgatitja për përdorim", "Rinisni". Klikoni "OK" dhe prisni përshëndetjen e OS. Ne i përgjigjemi pyetjeve kur sistemi niset për herë të parë: "Të vazhdosh në gjuhën e zgjedhur?" - "rusisht"; rajoni - Rusia; faqosja e tastierës - rusisht; shtoni një paraqitje të dytë të tastierës - kaloni; "Le t'ju lidhim me rrjetin" - "Kalo për tani"; lidheni me internetin - jo; marrëveshja e licencës - pranoni; “Kush do ta përdorë këtë kompjuter” – “Test”; krijimi i një fjalëkalimi - lini fushën bosh; Funksionim i përshtatshëm në pajisje të ndryshme - jo; Cilësimet e privatësisë – pranoni. Sistemi operativ është ngarkuar, në snap-in "Menaxhimi i Kompjuterit" krijojmë një përdorues me emrin "Përdorues", shtojmë paketën e përgatitjes. Rezultati është se nuk funksionon.

Eksperimenti 3

Ne ngarkojmë imazhin e sistemit - Rusifikuar në modalitetin e auditimit.

Sistemi operativ është ngarkuar, lidhni sistemin me internetin, ekzekutoni komandën "gpedit.msc" dhe në seksionin "Windows Update" aktivizoni opsionin "Aktivizo përditësimet e rekomanduara përmes përditësimeve automatike", rindizni për çdo rast. Në qendrën e përditësimeve, klikoni "Kontrollo për përditësime" dhe rindizni derisa të instalohen të gjitha përditësimet. Shkëputeni sistemin nga Interneti. Ne hapim "sysprep" në modalitetin grafik dhe përsërisim të gjithë hapat e përshkruar në hapin e mëparshëm nga ekzekutimi i programit "sysprep" deri te shtimi i paketës së përgatitjes. Rezultati është se nuk funksionon.

Eksperimenti 4

Ne ngarkojmë imazhin e sistemit - Anglisht në modalitetin e auditimit.

Ne lëshojmë "sysprep" në modalitetin grafik, vulosim OS me të njëjtat parametra si gjatë eksperimentit 2. Kur sistemi fillon fillimisht, ne zgjedhim të njëjtat parametra si në eksperimentin 2, me përjashtim të parametrave rajonalë dhe gjuhësorë sepse Nuk ka gjuhë ruse. Në të njëjtën mënyrë, krijoni një përdorues "Përdorues" dhe shtoni një paketë sigurimi. Rezultati është se funksionon. Ato. Problemi lidhet me lokalizimin.

Eksperimenti 5

Ne ngarkojmë imazhin e sistemit - Rusifikuar në modalitetin e auditimit.

Në skedarin "Menaxhimi i Kompjuterit", krijoni një "Përdorues" të përdoruesit, shtoni një paketë përgatitore, shkoni te llogaria "Përdoruesi", multi-kioska funksionon.

Dilni nga llogaria juaj dhe identifikohuni nën llogarinë "Admin". Ne lëshojmë PowerShell me të drejtat e administratorit, ekzekutojmë komandën "Dism /online /Get-Intl" dhe shohim "Gjuha e parazgjedhur e ndërfaqes së përdoruesit: en-US".

Ne nisim nga flash drive në WinPE, sistemi operativ i vendosur është në diskun tim E. Ne ekzekutojmë komandën "Dism /image:E: /Set-UILang:ru-ru". Ne shikojmë rezultatin, ekzekutojmë "Dism /image:E: /Get-Intl" dhe shikojmë "Gjuha e parazgjedhur e sistemit UI: ru-RU".

Ne nisemi në sistem, hyjmë në llogarinë "Përdoruesi", multikiosku nuk funksionon.

Për të vendosur qartë marrëdhënien shkak-pasojë të problemit, le të përpiqemi përsëri ta bëjmë kioskën me shumë funksione dhe jofunksionale.

Ne nisim nga flash drive në WinPE, OS i vendosur është në diskun tim E. Ne ekzekutojmë komandën "Dism /image:E: /Set-UILang:en-us". Ne shikojmë rezultatin, ekzekutojmë "Dism /image:E: /Get-Intl" dhe shohim "Gjuha e parazgjedhur e UI-së së sistemit: en-US".

Ne nisemi në sistem, hyjmë në llogarinë "Përdoruesi", multikiosk funksionon.

Ne nisim nga flash drive në WinPE, sistemi operativ i vendosur është në diskun tim E. Ne ekzekutojmë komandën "Dism /image:E: /Set-UILang:ru-ru". Ne shikojmë rezultatin, ekzekutojmë "Dism /image:E: /Get-Intl" dhe shikojmë "Gjuha e parazgjedhur e sistemit UI: ru-RU".

Ne nisemi në sistem, hyjmë në llogarinë "Përdoruesi", multikiosku nuk funksionon.

Ato. mund të shihni një varësi të qartë të performancës së kioskës nga gjuha e parazgjedhur e ndërfaqes së përdoruesit. Ndoshta ka disa faktorë të tjerë që ndikojnë në performancën e multikioskut?

Eksperimenti 6

Për pastërtinë e eksperimentit, ne rimbushim sistemin. Ne ngarkojmë imazhin e sistemit - Rusifikuar në modalitetin e auditimit.

Ne lançojmë "sysprep" në modalitetin grafik, vulosim OS me të njëjtat parametra si gjatë eksperimentit 2. Presim që OS të na përshëndesë dhe t'i përgjigjet pyetjeve: "Të vazhdosh në gjuhën e zgjedhur?" – “Anglisht (Shtetet e Bashkuara)”; rajoni - Rusia; Paraqitja e tastierës - Ruse. Më tej, të gjithë parametrat u zgjodhën si në eksperimentin 2.

Le të shohim cilësimet e parazgjedhura të gjuhës së ndërfaqes së përdoruesit. Ne ekzekutojmë komandën "Dism /online /Get-Intl" dhe shohim "Gjuha e parazgjedhur e ndërfaqes së sistemit të përdoruesit: en-US". Në skedarin "Menaxhimi i Kompjuterit", krijoni një përdorues "Përdorues", shtoni një paketë përgatitore, shkoni te llogaria "Përdoruesi", multi-kioska funksionon.

Ne po përpiqemi të thyejmë kioskën duke ndryshuar gjuhën e parazgjedhur të ndërfaqes së përdoruesit. Ne hyjmë në përdoruesin "Test", i cili u krijua kur sistemi u nis për herë të parë dhe aktivizojmë hyrjen automatike për të në mënyrë që sistemi të mos niset menjëherë në llogarinë "Përdoruesi". Ekzekutoni "netplwiz", zgjidhni përdoruesin "Test", zgjidhni kutinë "Kërkoni emrin e përdoruesit dhe fjalëkalimin" dhe aplikoni parametrat.

Boot nga një flash drive në WinPE. Ekzekutoni komandën "Dism /image:E: /Set-UILang:ru-ru". Ne shikojmë rezultatin, ekzekutojmë "Dism /image:E: /Get-Intl" dhe shikojmë "Gjuha e parazgjedhur e sistemit UI: ru-RU".

Ne nisemi në sistem, përpiqemi të identifikohemi në llogarinë "Përdoruesi", multikiosk funksionon. Ato. nuk mund të prishet. A është e mundur që të funksionojë në këtë mënyrë?

Eksperimenti 7

Ne ngarkojmë imazhin e sistemit - Rusifikuar në modalitetin e auditimit.

Hapim "Sysprep.bat", zgjedhim pikën 2. Nisemi në sistem, krijojmë përdoruesin "Përdorues" në skedarin "Menaxhimi i Kompjuterit", shtojmë paketën e përgatitjes, shkojmë te llogaria "Përdoruesi", multi- kioska nuk funksionon.

Boot nga një flash drive në WinPE. Ekzekutoni komandën “Dism /image:E: /Set-UILang:en-us”. Ne shikojmë rezultatin, ekzekutojmë "Dism /image:E: /Get-Intl" dhe shohim "Gjuha e parazgjedhur e UI-së së sistemit: en-US".

Ne nisemi në sistem, përpiqemi të identifikohemi në llogarinë "Përdoruesi", multikiosku nuk funksionon.

Rezulton se duke ndryshuar cilësimin e parazgjedhur të gjuhës së ndërfaqes së përdoruesit, mund të ndikoni në performancën e multikioskut vetëm kur sistemi është në modalitetin e auditimit ose në fillimin e parë pas mbylljes së sistemit. Kjo do të thotë që do të duhet të vulosni sistemin me një skedar përgjigjeje në të cilin gjuha e sistemit do të zgjidhet në anglisht, dhe më pas të ndryshoni cilësimet e sistemit në mënyrë që ndërfaqja të jetë ruse. Një zgjidhje jo shumë e mirë. Ndoshta problemi mund të zgjidhet duke instaluar një paketë gjuhësore ose duke instaluar paketa gjuhësore shtesë?

Eksperimenti 8

Ne ngarkojmë imazhin e sistemit - Anglisht në modalitetin e auditimit.

Ne lidhemi me internetin, në parametrat e sistemit shkoni te seksioni "Gjuha", zgjidhni "Shto gjuhën", zgjidhni gjuhën "Rusisht", kliko "Next", lëmë parametrat e instalimit si parazgjedhje, kliko "Instalo", pas instalimit paketën e gjuhës ne rinisim sistemin, tani në Russified. Shkëputni sistemin nga Interneti, ekzekutoni "Sysprep.bat", zgjidhni pikën 2.

Pas ngarkimit të sistemit, në skedarin "Menaxhimi i Kompjuterit", krijoni përdoruesin "Përdoruesi", shtoni paketën e përgatitjes, shkoni te llogaria "Përdoruesi", multi-kioska nuk funksionon.

Eksperimenti 9

Le të përpiqemi të rusifikuar sistemin para instalimit, në modalitetin offline. Në të njëjtën kohë do të ketë një program të shkurtër arsimor për lokalizimin e shpërndarjes.

Unë marr një flash drive me një shpërndarje të pastër origjinale - X21-96381. Do të jetë me makinë "E". Për të montuar imazhe, unë krijoj dosje: "c:MountInstall", "c:MountWinre", "c:MountBoot". Unë marr një grup paketash lokalizimi - X21-87814. Dhe në dosjen "c:Mount" kopjoj paketat prej saj: "Microsoft-Windows-Client-Language-Pack_x86_ru-ru.cab", "lp.cab", "WinPE-Setup_ru-ru.cab". Unë nis tastierën me të drejtat e administratorit. Unë mendoj se komandat e mëtejshme do të jenë të qarta pa koment.

Komandat e lokalizimit

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

Ne nisim nga flash drive, zgjedhim gjuhën ruse dhe instalojmë sistemin në një disk bosh. Kur sistemi ju kërkon të zgjidhni një rajon, shtypni "Ctrl+Shift+F3". Në skedarin "Menaxhimi i kompjuterit", krijoni një përdorues "Përdorues", shtoni një paketë përgatitore, shkoni te llogaria "Përdoruesi", kioska e shumëfishtë nuk funksionon.

Boot nga një flash drive në WinPE. Ekzekutoni komandën “Dism /image:E: /Set-UILang:en-us”.

Ne nisemi në sistem, përpiqemi të identifikohemi në llogarinë "Përdoruesi", multikiosk funksionon.

Me sa duket problemi nuk është në metodat e shtimit të një pakete, le të provojmë të shtojmë paketa shtesë.

Eksperimenti 10

Ne marrim flash drive-in që përgatitëm në hapin e mëparshëm.

Ne marrim paketën "Feat on Demand" - X21-87815. I kopjoj paketat prej tij në dosjen "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».

Nisni tastierën me të drejtat e administratorit dhe ekzekutoni komandat:

komandat

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

Ne nisim nga flash drive, zgjedhim gjuhën ruse dhe instalojmë sistemin në një disk bosh. Kur sistemi ju kërkon të zgjidhni një rajon, shtypni "Ctrl+Shift+F3". Në skedarin "Menaxhimi i Kompjuterit", krijoni përdoruesin "Përdoruesi", shtoni paketën e furnizimit dhe hyni në llogarinë "Përdoruesi". Mora një ekran të zi që varej për një kohë të gjatë, kështu që e nisa sistemin.

Ne fshijmë paketën e përgatitjes, hyjmë si "Përdorues", rindisim sistemin, shtojmë paketën e përgatitjes, multikiosku nuk funksionon.

Boot nga një flash drive në WinPE. Ekzekutoni komandën “Dism /image:E: /Set-UILang:en-us”.

Ne nisemi në sistem, përpiqemi të identifikohemi në llogarinë "Përdoruesi", multikiosk funksionon.

Zgjidhje

Heronjtë normalë. Ata gjithmonë marrin një rrugë të tërthortë!

Metodat e ndryshme të instalimit të paketave të lokalizimit nuk e zgjidhën problemin, që do të thotë se do të duhet të instaloni gjuhën "en-us" në nisjen e parë pas vulosjes dhe të ndryshoni cilësimet e gjuhës pas nisjes së parë.

Ne ngarkojmë imazhin e sistemit - Rusifikuar në modalitetin e auditimit.

Në skedarin "Unattend.xml", futni "en-US" në parametrin, ekzekutoni "Sysprep.bat", zgjidhni pikën 2 dhe shikoni se çfarë kemi marrë. Ekrani i mirëseardhjes është në anglisht, multi-kioska funksionon. Kjo do të thotë që ju duhet të shtoni një komandë në "Unattend.xml" për të ndryshuar gjuhën e përshëndetjes. Dhe për ta bërë këtë, duhet të ekzekutoni komandën "control intl.cpl,, /f:" që tregon skedarin e konfigurimit, i cili do të specifikojë kopjimin e parametrave aktualë në ekranin e mirëseardhjes. Përmbajtja e skedarit të konfigurimit do të duket kështu.

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

Sepse do të kopjojë cilësimet e përdoruesit aktual, atëherë komanda duhet të ekzekutohet pasi përdoruesi të ketë hyrë, që do të thotë se do të na duhet. Ekziston një "por" e vogël, ekzekutimi do të bëhet pasi një përdorues me të drejta administratori të regjistrohet. Dhe nuk do të doja të krijoja një skedar shtesë që do të duhej që komanda të ekzekutohej me sukses. Shtë më mirë të zbatoni të gjithë zgjidhjen në një skedar të vetëm - "Unattend.xml". Për ta bërë këtë, thjesht do t'ju duhet të ekzekutoni një komandë që krijon një skedar konfigurimi. Mendoj se do të krijoj një skedar konfigurimi duke përdorur komandën "echo" në mjedisin "cmd", por ai duhet të shpëtojë nga kllapat e këndit me një circumflex. Ato. Për të krijuar një skedar konfigurimi, merret komanda e mëposhtme.

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

Por ne duhet ta vendosim këtë komandë në XML, e cila ka kërkesat e veta për përdorimin e karaktereve speciale:

Karakter i veçantë
Vlera e zëvendësimit

>
&gt;

<
&lt;

&
&amp;

'
&apos;

"
&quot;

Si rezultat, për të krijuar një skedar konfigurimi, morëm komandën e mëposhtme për "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;

Më pas, ne ekzekutojmë komandën duke përdorur skedarin e konfigurimit.

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

Tjetra, fshini skedarin e krijuar më parë dhe rindizni sistemin. ndryshimet do të hyjnë në fuqi pas një rindezjeje.

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

Si rezultat, përfundova me skedarin e mëposhtëm të përgjigjeve për 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>

Le të kontrollojmë ...

Ne ngarkojmë imazhin e sistemit - Rusifikuar në modalitetin e auditimit.

Ne e ndryshojmë skedarin Unattend.xml në një të ri, ekzekutojmë "Sysprep.bat", zgjedhim pikën 2 dhe shohim se çfarë kemi marrë. Kur nisni për herë të parë, ekrani i mirëseardhjes është në anglisht dhe sistemi riniset. Ekrani i mirëseardhjes është në Rusisht, multikiosku funksionon.

Nëse keni ndonjë pyetje në lidhje me konfigurimin dhe licencimin e Windows 10 IoT Enterprise, ju lutemi kontaktoni: [email mbrojtur] ose në faqen e internetit quarta-embedded.ru.
Ju mund të gjeni përgjigje për disa pyetje në wiki-n tonë ose mbi tonat YouTube-kanale

Autori i artikullit: Vladimir Borisenkov, ekspert teknik në Quarta Technologies.

Burimi: www.habr.com