30 июля 2008

Ответ от morph

"Проблема решается двумя способами.
1. Длинные имена в батниках прописываются в укороченном виде (DOS 8+3): C:\Progra~1\foobar~1\foobar~1.exe
2. В бат файле указываешь только start foobar2000.exe, но тогда в переменной окружения PATH нужно указать полный путь к программе C:\Program Files\foobar2000

Чтобы добавить или изменить значение переменной среды
Откройте компонент панели управления Система.
Нажмите кнопку Переменные среды на вкладке Дополнительно, выберите имя пользовательской или системной переменной, которую необходимо изменить, и нажмите одну из следующих кнопок:
Создать для добавления новой переменной и ее значения;
Изменить для изменения имени текущей переменной и ее значения;
Удалить длл удаления имени переменной и ее значения.

Примечания

Если вход в систему на локальном компьютере был выполнен с учетной записью пользователя, отличной от учетной записи администратора, то разрешается изменять только переменные среды пользователя.
Чтобы открыть компонент «Система», нажмите кнопку Пуск, выберите команду Панель управления, затем дважды щелкните значок Система.
Изменения, внесенные в переменные, Windows сохраняет в системном реестре, и при следующей загрузке новые значения становятся доступными автоматически.
Чтобы изменения вступили в силу, возможно, потребуется закрыть выполняющиеся программы и затем открыть их снова.

pathУстанавливает путь поиска в переменной среды PATH, которая является набором каталогов, используемых для поиска исполняемых файлов. Вызванная без параметров, команда path выводит текущий путь поиска.

Синтаксис
path [[%path%] [диск:]путь [;...]]

Параметры
[диск:]путь
Задает диск и каталог для установки пути поиска.
;
Разделяет каталоги в пути поиска.
%path%
Задает Windows XP для добавления пути поиска к уже существующему в списке переменной среды PATH набору каталогов.
/?
Выводит справку в командной строке.
Примечания
Использование значения ;
Если ; используется в качестве самостоятельного параметра, то происходит удаление существующего пути поиска, найденного в переменной PATH.

Использование %path%
Если параметр %path% включен в синтаксис, то командный интерпретатор Cmd.exe заменяет его на значение пути поиска, найденное в переменной PATH, устраняя тем самым необходимость ручного ввода этих значений в командной строке. Сведения о замене значений переменных среды см.в разделе «Командная оболочка: обзор» в «См.Также».

Текущий каталог
Операционная система всегда начинает поиск с текущего каталога, а затем продолжает его в каталогах, заданных в пути поиска.

Файлы с одинаковыми именами и разными расширениями
В некоторых случаях в одном каталоге могут содержаться файлы с одинаковыми именами, но с разными расширениями. Например, файл Accnt.com, запускающий бухгалтерскую программу, и файл Accnt.bat, выполняющий подключение к бухгалтерской сети.

Поиск файлов происходит с учетом их расширений в следующем порядке:.exe, .com, .bat и .cmd. Чтобы запустить файл Accnt.bat (при наличии в том же каталоге файла Accnt.com), необходимо в командной строке указать его расширение (.bat).

Два или более одинаковых имен файлов в пути поиска
Если в пути поиска указаны два или более файлов с одинаковыми именами и расширением, то Windows XP сначала осуществляет поиск указанного имени в текущем каталоге, а затем уже в каталогах пути поиска в том же порядке, в котором они перечислены в PATH.

Поиск подсистемы MS-DOS
Если команда path включена в файл Autoexec.nt, то при каждом входе в систему она будет автоматически добавлять заданный путь поиска подсистемы MS-DOS к пути поиска Windows XP. Интерпретатор команд Cmd.exe не использует файл Autoexec.nt. При запуске из ярлыка Cmd.exe наследует набор переменных среды из My Computer/Properties/Advanced/Environment.

Примеры
Приведенная ниже команда задает использование Windows XP для поиска трех каталогов для нахождения внешних команд. Пути для этих трех каталогов следующие: C:\User\Taxes, B:\User\Invest и B:\Bin:

path c:\user\taxes;b:\user\invest;b:\bin"

Это ответ от пользователя morph на вопрос: Запуск программ из bat-файла

Оцените, пожалуйста, этот ответ
Отказаться от рассылки ответов на этот вопрос