Войти

Показать полную графическую версию : Установка языкового пакета в Windows 7 Professional


torisazu
15-11-2018, 17:25
Здравствуйте. Пытался изменить язык на Windows 7 Professional с помощью Vistalizator и вручную http://www.oszone.net/10368/install_lp_manually

Через Vistalizator выдает ошибки
Error creating registry key
Error writing registry string value
Запустил и от имени администратора и по обычному


А для способа который описан у вас на сайте нужен файл lp.cab но я не могу его заполучить. Нашел на одном сайте что нужно скачать exe файл для установки нужного языка и запускаешь файл и в папке где exe должен появится файл lp.cab на пару секунд и быстро надо его скопировать в другое место, но дело в том что он так быстро исчезает что при копировании выдает ошибку Этот файл уже не существует.

Пытаюсь сделать из русской Windows английскую

mwz
15-11-2018, 21:29
torisazu
Применимо к: Windows 7 Enterprise, Windows 7 Ultimate (https://support.microsoft.com/ru-ru/help/2483139/windows-7-service-pack-1-language-packs-are-available-for-computers-th)Профессиональная в этот перечень не входит.

Iska
16-11-2018, 19:16
А для способа который описан у вас на сайте нужен файл lp.cab но я не могу его заполучить. Нашел на одном сайте что нужно скачать exe файл для установки нужного языка и запускаешь файл и в папке где exe должен появится файл lp.cab на пару секунд и быстро надо его скопировать в другое место, но дело в том что он так быстро исчезает что при копировании выдает ошибку Этот файл уже не существует. »
Код на PowerShell, который позволит получить cab-файл из sfx-cab-архива, коим является инсталляция указанного языкового пакета:
$sSourceFile = 'C:\Мои проекты\0217\windows6.1-kb2483139-x64-ru-ru_0587eb296a2f04e0d3699650d39b53ee18b97a79.exe'
$sDestFile = 'lp.cab'

if([System.IO.File]::Exists($sSourceFile)) {
$aSourceBytes = [System.IO.File]::ReadAllBytes($sSourceFile)

$bFound = $false

for([int]$i = $aSourceBytes.GetLowerBound(0); $i -le $aSourceBytes.GetUpperBound(0) - 3; $i++) {
if($aSourceBytes[$i] -eq 0x4D -and $aSourceBytes[$i + 1] -eq 0x53 -and $aSourceBytes[$i + 2] -eq 0x43 -and $aSourceBytes[$i + 3] -eq 0x46) {
$aDestBytes = [byte[]]::new($aSourceBytes.Length - $i)
[System.Array]::Copy($aSourceBytes, $i, [byte[]]$aDestBytes, 0, $aSourceBytes.GetUpperBound(0) - $i)
[System.IO.File]::WriteAllBytes([System.IO.Path]::Combine([System.IO.Path]::GetDirectoryName($sSourceFile), $sDestFile), $aDestBytes)

$bFound = $true
break
}
}

if($bFound) {
Write-Host "Cab signature found in source file [$sSourceFile]. Cab archive extracted as [lp.cab]." -ForegroundColor Green
} else {
Write-Host "Can't find cab signature in source file [$sSourceFile]." -ForegroundColor Red
}
} else {
Write-Host "Can't find source file [$sSourceFile]." -ForegroundColor Red
}

Поскольку sfx-cab представляет собой банальное бинарное совмещение двух файлов (Microsoft Cabinet Format (https://msdn.microsoft.com/en-us/library/bb417343.aspx#case3)):
copy /b extract.exe+self1.cab self.exe ; self.exe is self-extracting
— читаем содержимое исполняемого файла в байтовый массив и тупо ищем в нём сигнатуру cab-архива. Если находим — определяем смещение, копируем остаток байтового массива в новый массив, сохраняем этот новый массив в файл под именем lp.cab.

Я не стал выпендриваться, посему просто подставьте вместо выделенного свой путь к загруженному файлу инсталляции языкового пакета.

torisazu
19-11-2018, 09:29
Профессиональная в этот перечень не входит. »
В самом низу есть для Professional

Такая ошибка вылазит

Microsoft Windows [Version 6.1.7601]
(c) Корпорация Майкрософт (Microsoft Corp.), 2009. Все права защищены.
C:\Windows\system32>DISM /Online /Add-Package /PackagePath:C:\lp.cab

Cистема DISM
Версия: 6.1.7600.16385

Версия образа: 6.1.7601.23403

Обрабатывается 1 из 1 - Добавление пакета Microsoft-Windows-Client-Refresh-Langu
agePack-Package~31bf3856ad364e35~amd64~en-US~6.1.7601.17514
[ 1.4% ]
Произошла ошибка - "Microsoft-Windows-Client-Refresh-LanguagePack-Package" Ошибк
а: 0x80073701

Ошибка: 14081

Не найдена сборка, на которую имеется ссылка.

Файл журнала DISM находится по адресу C:\Windows\Logs\DISM\dism.log

C:\Windows\system32>

mwz
19-11-2018, 11:02
В самом низу есть для Professional »

Не вижу этого слова на странице по ссылке.

А в оригинале (заменить в ссылке группу /ru-ru/ на /en-US/) стоит фраза:
Windows 7 Service Pack 1 language packs are available for computers that are running Windows 7 Ultimate Service Pack 1 (SP1) or Windows 7 Enterprise Service Pack 1 (SP1).

torisazu
19-11-2018, 13:38
Не вижу этого слова на странице по ссылке. »
там есть
Установка языкового пакета в Windows 7 Professional

Поскольку такая функция как в Ultimate и Enterprise в данном случае недоступна, придётся поступать иначе.


У меня ошибки при применении самой первой команды
DISM /Online /Add-Package /PackagePath:C:\lp.cab

Iska
19-11-2018, 17:49
Может, lp.cab, полученный описанным мною выше способом, не вполне корректным выходит?!

torisazu
19-11-2018, 18:37
Может, lp.cab, полученный описанным мною выше способом, не вполне корректным выходит?! »
Коректным выходит, я пробовал еще через одну программу которую нашел.

Мне нужна Windows 7 чтобы поставить ее в Virtualbox. Мне нужна сборка которая весит очень мало (Lite) и не имеет ошибки, я нашел сборки от некого xalex, но у него последняя сборка Windows 7 была в 2011. Сейчас он делает только Windows 10, после установки если сжать диск она будет весить чуть больше 3GB и это меня устраивает, но в Virtualbox-е баг который нельзя исправить, в Windows 10 нету звука. Я пытался найти Windows 7 Lite, мне желательно нужно с последними обновлениями, но все что нахожу это облегченные версии Windows 7 Professional на русском и нельзя сменить язык на английском. Мне нужна Windows 7 Lite на английским желательно с последними обновлениями безопасности, может вы знаете какие то сборки и можете посоветовать ?

mwz
19-11-2018, 19:44
может вы знаете какие то сборки и можете посоветовать ? »

Не думаю что кто-то будет советовать сборки, в нарушение п.3.18 (http://forum.oszone.net/rules.html)...




© OSzone.net 2001-2012