PDA

Показать полную графическую версию : [решено] Запуск программы с виртуального диска


4zz
01-05-2015, 23:57
Уважаемые знатоки!
Помогите написать батник по следующим условиям:
1.На флеш находится оговариваемый сейчас бат файл и папки с программой
2. Нужно чтобы этот бат файл запустил программу из папки на этой же флеш..

Я рассуждал так - в связи с тем, что на разных компах флеш может быть с разной буквой, значит для настройки программы надо сделать букву постоянной, поэтому создаю виртуальный диск "Х" и второй командой запускаю с него нужную программу, которая настроена так, что базы находятся именно на диске "Х" - вот что получилось:

@echo off
chcp 1251
subst X: %~d0\
ping -n 1 -w 10000 192.168.254.254 >nul
start "X:\8.3.6.1977_Windows_Portable\1C Предприятие.exe"
pause

В итоге виртуальный диск образуется(и диск со старой буквой тоже присутствует), а пауза и вторая команда не выполняются...((
Помогите..)

Iska
02-05-2015, 00:12
Я рассуждал так - в связи с тем, что на разных компах флеш может быть с разной буквой, значит для настройки программы надо сделать букву постоянной, »
Неправильно рассуждаете. Я бы остановился именно на том факте, что приложение расположено на том же устройстве, что и сам пакетный файл. Зачем Вам ещё и виртуальный диск из папки?! Зачем «chcp 1251» вместо сохранения пакетного файла в кодировке OEM/866?!

а пауза и вторая команда не выполняются...(( »
Выполняются ;). Но начните с исправления:
start "" "X:\8.3.6.1977_Windows_Portable\1C Предприятие.exe"

4zz
02-05-2015, 01:05
Iska,
Спасибо огромное, все работает))
Виртуальный диск нужен затем, чтобы при настройке программы указать путь к базам одинаковый для всех компьютеров куда будет воткнута флеш. По «chcp 1251» я видимо заблуждался считая, что это нужно если в пути присутствуют русские буквы)
Спасибо!!!

Iska
02-05-2015, 02:18
Виртуальный диск нужен затем, чтобы при настройке программы указать путь к базам одинаковый для всех компьютеров куда будет воткнута флеш. »
И седьмая, и восьмая версии 1С:Предприятие, насколько я помню, позволяют просто указать путь к базе в командной строке приложения. Так что я по-прежнему за указание пути относительно месторасположения пакетного файла.

По «chcp 1251» я видимо заблуждался считая, что это нужно если в пути присутствуют русские буквы) »
Правильным будет именно сохранение пакетного файла в кодировке OEM/866.




© OSzone.net 2001-2012