Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Как скопировать файл/ы из CD/DVD в папку Program Files ??? (http://forum.oszone.net/showthread.php?t=256191)

meGangstaWorld 13-03-2013 13:12 2110176

Как скопировать файл/ы из CD/DVD в папку Program Files ???
 
Доброго времени суток.

Подскажите пожалуйста как можно скопировать файл/ы посредством CMD/BAT c Дисковода в папку Program Files/*** ???

Суть...

Имеется на CD/DVD дистрибутив программы, но она англоязычная. Отдельно в сети нашел русификатор для этой программы если положить файл ***.lng в папку этой программы C:\Program Files (x86)\*** то при запуске она запускается с русским интерфейсом то-есть так как надо.

Имя/буква дисковода может быть разным так-же и разрядность ОС

gora 13-03-2013 14:13 2110243

Цитата:

Цитата meGangstaWorld
файл ***.lng »

Приведите полное название этого файла с полным путем к нему на CD (букву CD можете указать любую)
Цитата:

Цитата meGangstaWorld
папку этой программы C:\Program Files (x86)\*** »

Приведите полное название папки программы с полным путем к месту расположения в ней вышеупомянутого файла.

meGangstaWorld 13-03-2013 15:11 2110285

На CD: G:\SetupRes\lang\russian.lng

На PC: C:\Program Files (x86)\Programma\lang

gora 13-03-2013 15:37 2110303

На момент запуска папка C:\Program Files (x86)\Programma\lang должна существовать.
Файл (полный путь к нему) x:\SetupRes\lang\russian.lng не должен иметь дубликатов на других дисках
Код:

@Echo Off
Set xOS=x64
If "%PROCESSOR_ARCHITECTURE%"=="x86" If Not Defined PROCESSOR_ARCHITEW6432 Set xOS=x86
Set pf=%ProgramFiles%
If %xOS%==x64 Set pf=%ProgramFiles(x86)%
Echo %xOS%        %pf%
For %%z 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 "%%z:\SetupRes\lang\russian.lng" Copy "%%z:\SetupRes\lang\russian.lng" "%pf%\Programma\lang"
Pause


7ka 13-03-2013 15:40 2110305

meGangstaWorld
Код:

@Echo off

:: Находим диск
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:\SetupRes\lang\russian.lng set DiskDrive=%%d:

:: Определяем разрядность ОС и копируем файл russian.lng в нужную директорию
Set xOS=x64
If "%PROCESSOR_ARCHITECTURE%"=="x86" If Not Defined PROCESSOR_ARCHITEW6432 Set xOS=x86
If %xOS%==x86 (xcopy "%DiskDrive%\SetupRes\lang\russian.lng" /e "%programfiles(x86)%"\Programma\lang) Else (xcopy "%DiskDrive%\SetupRes\lang\russian.lng" /e "%programFiles%"\Programma\lang)

Exit

gora, упс... забыл страничку обновить)))))

gora 13-03-2013 16:00 2110320

Цитата:

Цитата 7ka
If %xOS%==x86 (xcopy "%DiskDrive%\SetupRes\lang\russian.lng" /e "%programfiles(x86)%" »

На x86 ОС такой переменной нет

Цитата:

Цитата 7ka
Else (xcopy "%DiskDrive%\SetupRes\lang\russian.lng" /e "%programFiles%" »

На x64 ОС, но при запуске батника из 64-х разрядного приложения эта переменная развернется в c:\Program Files, а не в c:\Program Files (x86)

meGangstaWorld 13-03-2013 22:31 2110662

Какой командой можно приостановить выполнение команды в .cmd файле после его запуска на секунд 30-60, подскажите пожалуйста!?

p.s Где-то видел вариант обходились командой ping на localhost то-ли на 127.0.0.1 точно не помню как правильно писать.

Iska 13-03-2013 22:49 2110680

Код:

>nul ping.exe -n 61 127.0.0.1


Время: 09:25.

Время: 09:25.
© OSzone.net 2001-