CMD/BAT - [решено] Что не так в bat файле монтирования образа диска

Аватара пользователя
eus_deus

CMD/BAT - [решено] Что не так в bat файле монтирования образа диска

Сообщение eus_deus »

Здравствуйте!

Кто может подкорректировать код в bat файле? Он планируется использоваться в тотал коммандере для монтирования образа диска



Код:

Код: Выделить всё

@echo off  
cls    
if defined PROCESSOR_ARCHITEW6432 (goto LABEL_X64)   
if %PROCESSOR_ARCHITECTURE%==IA64 (goto LABEL_X64)   
if %PROCESSOR_ARCHITECTURE%==AMD64 (goto LABEL_X64)   
if %PROCESSOR_ARCHITECTURE%==x86 (goto LABEL_X86)     
:LABEL_X64   
cd 64   
start OSFMount.com -a -t file -f %P%N -m x:   
goto LABEL_END    
:LABEL_X86   
cd 32   
start OSFMount.com -a -t file -f %P%N -m x:   
goto LABEL_END    
:LABEL_END  
 exit

Идет проверка разрядности wndows и в зависимости от разрядности должен запускаться соответствующий драйвер и монтировать выбранный в панели образ. С такими параметрами (OSFMount.com -a -t file -f %P%N -m x: ) кнопка в тотале работает.Просто три компа в семье, хочется один универсальный тотал настроить. Что не так? Всем спасибо!
Аватара пользователя
eus_deus

Re: CMD/BAT - [решено] Что не так в bat файле монтирования образа диска

Сообщение eus_deus »

да,скорее всего он не заработает.не получится передать имя выбранного в панели файла
Аватара пользователя
eus_deus

Re: CMD/BAT - [решено] Что не так в bat файле монтирования образа диска

Сообщение eus_deus »

Вот я тупой! В коде же написано echo, как же он монтировать будет? Мне же написали ясно - для отладки



Итак, вариант такой ( на win7 x64 работает, 32 проверю позже)



Код:

Код: Выделить всё

@Echo Off  
Set Arch=32& If Defined PROCESSOR_ARCHITEW6432 (  Set Arch=64) Else If "%PROCESSOR_ARCHITECTURE%"=="AMD64" Set Arch=64  
START OSFMount%Arch%.com -a -t file -f "%~1%2" -m x:  
exit

и в параметры кнопки в панели тотал коммандера





Код:

Считаю вопрос закрытым, по крайней мере, если что не так, понятно где копать.

Всех благодарю за грамотные советы и помощь
Аватара пользователя
eus_deus

Re: CMD/BAT - [решено] Что не так в bat файле монтирования образа диска

Сообщение eus_deus »

El Sanchez, пробовал мудрить по другому. у меня теперь две версии в одной папке. osfmount32 и osfmount64
Аватара пользователя
El Sanchez

Re: CMD/BAT - [решено] Что не так в bat файле монтирования образа диска

Сообщение El Sanchez »

eus_deus,



Код:

Код: Выделить всё

@Echo Off
SetLocal
If "%PROCESSOR_ARCHITECTURE:86=%" == "%PROCESSOR_ARCHITECTURE%" (CD 64) Else (CD 32)
OSFMount.com -a -t file -f "%~1%2" -m x:

В поле Параметры: кнопки напишите:



Код:
Аватара пользователя
eus_deus

Re: CMD/BAT - [решено] Что не так в bat файле монтирования образа диска

Сообщение eus_deus »

вот такая структура каталога сейчас



OSFMount32.com

OSFMount32.exe

OSFMount32.sys

OSFMount64.com

OSFMount64.exe

OSFMount64.sys
Аватара пользователя
eus_deus

Re: CMD/BAT - [решено] Что не так в bat файле монтирования образа диска

Сообщение eus_deus »

Цитата eus_deus:



у меня теперь две версии в одной папке. osfmount32 и osfmount64
CMD/BAT - [решено] Что не так в bat файле монтирования образа диска




eus_deus, допустим батник лежит в одной директории с файлами программы:



Код:

Код: Выделить всё

@Echo Off
SetLocal
If "%PROCESSOR_ARCHITECTURE:86=%" == "%PROCESSOR_ARCHITECTURE%" (Set Arch=64) Else (Set Arch=32)
Echo OSFMount%Arch%.com -a -t file -f "%~1%2" -m x:
Pause

Выделенное красным - для отладки. Запускаете, смотрите в консольном окне верен ли синтаксис команды, особое внимание на путь, указанный в параметре -f.
Аватара пользователя
El Sanchez

Re: CMD/BAT - [решено] Что не так в bat файле монтирования образа диска

Сообщение El Sanchez »

El Sanchez, коллега, Вы видимо описались
Цитата El Sanchez:



(Set %Arch%=64) Else (Set %Arch%=32)
CMD/BAT - [решено] Что не так в bat файле монтирования образа диска




Проценты лишние
Аватара пользователя
gora

Re: CMD/BAT - [решено] Что не так в bat файле монтирования образа диска

Сообщение gora »

gora, вы правы, на проценты ругается



El Sanchez, в целом код без ошибок, и пути к образам правильные. только скрипт определяет мою win7 x64 как 32-х битную систему, и загружает не тот драйвер

Поменял местами переменные, в окне консоли пишет все верно, но монтирования не происходит
Аватара пользователя
eus_deus

Re: CMD/BAT - [решено] Что не так в bat файле монтирования образа диска

Сообщение eus_deus »

Цитата eus_deus:



скрипт определяет мою win7 x64 как 32-х битную систему
CMD/BAT - [решено] Что не так в bat файле монтирования образа диска




Попробуйте так:

Код:

Код: Выделить всё

Set Arch=32& If Defined PROCESSOR_ARCHITEW6432 (Set Arch=64) Else If "%PROCESSOR_ARCHITECTURE%"=="AMD64" Set Arch=64
Ответить

Вернуться в «Скриптовые языки администрирования Windows»