|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » [решено] Добавление OEM информации - все вопросы |
|
[решено] Добавление OEM информации - все вопросы
|
Ветеран Сообщения: 1007 |
|
|
Отправлено: 16:47, 18-05-2005 |
Новый участник Сообщения: 27
|
Профиль | Отправить PM | Цитировать _CatDog_
@echo off SET CDROM=%~d0 SET D=%SYSTEMROOT%\system32\ echo [General]> "%D%oeminfo.ini" echo Manufacturer=Автор сборки: arial>> "%D%oeminfo.ini" echo Model=Windows XP Corporate Edition>> "%D%oeminfo.ini" echo [OEMSpecific]>> "%D%oeminfo.ini" echo [Support Information]>> "%D%oeminfo.ini" echo Line1=Дата инсталяции: %date%>> "%D%oeminfo.ini" echo Line2=>> "%D%oeminfo.ini" echo Line3=Установленные обновления: >> "%D%oeminfo.ini" echo Line4= >> "%D%oeminfo.ini" SET i=5 For /F "usebackq TOKENS=1 delims=*.CA_" %%j in (`dir /B %CDROM%\I386\SVCPACK\KB*.CA_`) do ((set kbname=%%j) & (call :myprint)) GOTO :EOF :myprint echo Line%i%=%kbname%>> "%D%oeminfo.ini" SET /A i+=1 :EOF |
Отправлено: 23:47, 28-12-2005 | #31 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ищу Человека… Сообщения: 420
|
Профиль | Сайт | Отправить PM | Цитировать _CatDog_
Цитата:
_CatDog_ arial Цитата:
Цитата:
Также излишеством является метка :EOF в конце файла. Команда GOTO :EOF и без того передает управление в конец текущего файла. Если помните времена DOS-а, где для ввода файла с клавиатуры исп-сь команда copy con имя_файла.расширение и для завершения ввода нужно было нажать Ctrr+Z, то вот эта комбинация клавиш как раз и добавляла метку окончания файла. И дополнительная метка уже не нужна. |
|||
------- Отправлено: 01:18, 30-12-2005 | #32 |
Старожил Сообщения: 387
|
Профиль | Отправить PM | Цитировать Возможно ли изменить, убрать сведения о процессоре, частоте, памяти?
|
Отправлено: 15:01, 01-02-2006 | #33 |
Ветеран Сообщения: 1417
|
Профиль | Отправить PM | Цитировать |
Последний раз редактировалось YuriPet, 01-02-2006 в 21:32. Отправлено: 21:16, 01-02-2006 | #34 |
Ищу Человека… Сообщения: 420
|
Профиль | Сайт | Отправить PM | Цитировать |
------- Отправлено: 23:04, 01-02-2006 | #35 |
Ветеран Сообщения: 825
|
Профиль | Отправить PM | Цитировать Слегка доработал известный ( теперь уже и мне ) скрипт oemlogo.cmd. Доработан потупому (лень искать строковые функции) но работает.
После доработки каждая строка содержит по 6 наименований апдейтов. Столько окно вмещает по ширене по умолчанию. Собственно сам кусок доработки, мож кому надо. echo Line10= >> "%D%oeminfo.ini" set i=10 set j=0 set string0= set string1= set string2= set string3= set string4= set string5= FOR %%d IN (c d e f g h i j k l m n o p q r s t u v w x y z) DO IF EXIST %%d\WIN51IP SET CDROM=%%d For /F "TOKENS=1 delims=.exe" %%j in ('dir /B %CDROM%\I386\svcpack\KB*.exe') do ((set kbname=%%j) & (call :myprint)) if %j% == 1 echo Line%i%=%string0% >> "%D%oeminfo.ini" if %j% == 2 echo Line%i%=%string0% %string1%>> "%D%oeminfo.ini" if %j% == 3 echo Line%i%=%string0% %string1% %string2%>> "%D%oeminfo.ini" if %j% == 4 echo Line%i%=%string0% %string1% %string2% %string3%>> "%D%oeminfo.ini" if %j% == 5 echo Line%i%=%string0% %string1% %string2% %string3% %string4% >> "%D%oeminfo.ini" GOTO :EOF :myprint if %j% == 0 set string0=%kbname% if %j% == 1 set string1=%kbname% if %j% == 2 set string2=%kbname% if %j% == 3 set string3=%kbname% if %j% == 4 set string4=%kbname% if %j% == 5 set string5=%kbname% if %j% == 5 echo Line%i%=%string0% %string1% %string2% %string3% %string4% %string5%>> "%D%oeminfo.ini" if %j% == 5 set string0= if %j% == 5 set string1= if %j% == 5 set string2= if %j% == 5 set string3= if %j% == 5 set string4= if %j% == 5 set string5= if %j% == 5 set /A i=%i%+1 set /A j=%j%+1 if %j% == 6 set j=0 :EOF copy %d%oeminfo.ini C:\oeminfo.ini |
Отправлено: 11:56, 13-03-2006 | #36 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать NikLock,
Цитата:
Цитата:
![]() |
||
Отправлено: 04:51, 23-03-2006 | #37 |
Ветеран Сообщения: 825
|
Профиль | Отправить PM | Цитировать Olehen
Смотри сообщение 44. Он приведен полностью. Vadikan Спасибо. Мне стыдно, там я не додумался искать. ![]() |
Отправлено: 14:15, 23-03-2006 | #38 |
Пользователь Сообщения: 57
|
Профиль | Сайт | Отправить PM | Цитировать Ребят, объясните плиз, а зачем такие заморочки с oemlogo.bmp и oeminfo.ini? Ведь можно их просто положить в $OEM$\$$\System32\
и все. У меня так и сделано и все работает. |
Отправлено: 19:54, 01-05-2006 | #39 |
Ищу Человека… Сообщения: 420
|
Профиль | Сайт | Отправить PM | Цитировать Доработанный вариант файла oeminfo.cmd
@echo off rem <--- ОБЪЯВЛЕНИЕ ПЕРЕМЕННЫХ ---> rem полный путь и имя файла oeminfo set OEMFILE=%SYSTEMROOT%\system32\oeminfo.ini rem маркерный файл для определения cdrom-а set TAGFILE=WIN51 rem производитель set MANUFACTURER=Sanja Alone rem модель set MODEL=Unattended XP DVD rem кол-во апдейтов в одной строке set UPMAX=6 rem вписывать или нет серийник в файл oeminfo (1 - да; 0 - нет) set KEY=1 rem сделать ли видимым серийник в окне "Сведения о поддержке" (1 - да; 0 - нет) set KEYISVISIBLE=0 rem присвоение переменной CDROM буквы cdrom-а, определенной по маркерному файлу for %%d in (c d e f g h i j k l m n o p q r s t u v w x y z) do if exist %%d:\%TAGFILE% set CDROM=%%d: rem каталог с апдейтами set UPDATESDIR=%CDROM%\I386\SVCPACK rem маска для отбора файлов в каталоге апдейтов (*.* - все; *.cat - только каталоги безопасности; KB*.* - только начинающиеся с KB и т.п.) set UPDATESMASK=*.* rem Обеспечение правильности отработки мультизагрузочного CD/DVD if exist %CDROM%\i386\winn1.sif ( set WINNTSIF=%CDROM%\i386\winn1.sif ) else ( if exist %CDROM%\i386\winnt.sif ( set WINNTSIF=%CDROM%\i386\winnt.sif ) ) rem <--- ОКОНЧАНИЕ ОБЪЯВЛЕНИЯ ПЕРЕМЕННЫХ ---> rem Т.к. используется символ ">", то существующий файл oeminfo.ini будет перезаписан; rem т.о. нет нужды его предварительно удалять echo [General]> "%OEMFILE%" echo Manufacturer=%MANUFACTURER%>> "%OEMFILE%" echo Model=%MODEL%>> "%OEMFILE%" rem Достаем из winnt.sif (winn1.sif) серийный номер rem Это работает независимо от вида записи ProductKey=XXXX или ProductKey = XXXX (с пробелами) if defined WINNTSIF ( if %KEY% == 1 ( for /F "tokens=3 delims==] " %%j in ('find /I /N "ProductKey" %WINNTSIF%') do ( if %KEYISVISIBLE% == 1 ( echo [Support Information]>> "%OEMFILE%" echo Line1=ProductKey: %%j>> "%OEMFILE%" echo Line2=>> "%OEMFILE%" set i=3 ) else ( echo [OEMSpecific]>> "%OEMFILE%" echo SerialNo=%%j>>"%OEMFILE%" echo [Support Information]>> "%OEMFILE%" set i=1 )) ) else ( echo [Support Information]>> "%OEMFILE%" set i=1 ) ) else ( echo [Support Information]>> "%OEMFILE%" set i=1 ) rem Дата и время инсталляции ОС в формате DD.MM.YYYY (hh:mm), например 20.05.2005 (14:37) echo Line%i%=Installation Date and Time: %date% (%time:~0,-6%)>> "%OEMFILE%" set /A i+=1 echo Line%i%=>> "%OEMFILE%" set /A i+=1 echo Line%i%=Installed Components and Updates:>> "%OEMFILE%" set /A i+=1 echo Line%i%=>> "%OEMFILE%" set /A i+=1 rem Определение общего кол-ва файлов в каталоге апдейтов соотв-щих маске (для рус. и англ. Винды) for /F "usebackq tokens=1" %%m in (`dir %UPDATESDIR%\%UPDATESMASK% ^| find /i "file(s)"`) do (set numfiles=%%m) if not defined numfiles ( for /F "usebackq tokens=1" %%m in (`dir %UPDATESDIR%\%UPDATESMASK% ^| find /i "файлов"`) do (set numfiles=%%m) ) rem вспомогательные переменные set l=0 set c=0 rem Список апдейтов (имена всех файлов без расширений) rem (без ключевого слова usebackq команда dir будет воспринята как rem имя файла для подстановки в цикл FOR с последующей выдачей сообщения rem об отсутствии такого файла в текущем каталоге). for /F "usebackq tokens=1 delims=." %%j in (`dir /B %UPDATESDIR%\%UPDATESMASK%`) do ((set kbname=%%j) & (call :myprint)) rem Выход из этого пакетного файла. rem Команда GOTO принимает в качестве метки перехода строку :EOF, которая вызывает rem передачу управления в конец текущего пакетного файла. Это позволяет легко rem выйти из пакетного файла без определения каких-либо меток. (из справки по goto) goto :EOF :myprint if %c% == 0 ( set str=%kbname% ) else ( set str=%str% %kbname% ) set /A c+=1 if %c% == %UPMAX% ( echo Line%i%=%str%>> "%OEMFILE%" set /A i+=1 set /A l+=1 set str= set c=0 set /A tmp=numfiles-l*UPMAX ) else ( if %numfiles% LSS %UPMAX% ( if %c% == %numfiles% ( echo Line%i%=%str%>> "%OEMFILE%" ) ) if %tmp% LSS %UPMAX% ( if %c% == %tmp% ( echo Line%i%=%str%>> "%OEMFILE%" ) ) ) |
------- Последний раз редактировалось Sanja Alone, 12-07-2006 в 01:09. Причина: замечание Отправлено: 02:14, 04-07-2006 | #40 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[статья] Изменение OEM информации и логотипа Windows Vista | Vadikan | Автоматическая установка Windows 11 / 10 / 8 / 7 / Vista | 2 | 20-02-2014 23:53 | |
$OEM$ не копируется на HDD .:[все вопросы]:. | Sparrow | Автоматическая установка Windows 2000/XP/2003 | 104 | 26-10-2010 04:59 | |
Установка - [решено] Добавление OEM-предложений в win7 Welcome Center | borodatiy | Автоматическая установка Windows 11 / 10 / 8 / 7 / Vista | 3 | 06-11-2009 00:04 | |
Vista / 2008 - Добавление OEM логотипов, соглашений, обоев | САШOК | Автоматическая установка Windows 11 / 10 / 8 / 7 / Vista | 7 | 03-06-2009 12:46 | |
Добавление информации на сайт через вэб-интерфейс | Vopros | Вебмастеру | 1 | 26-06-2003 08:50 |
|