224 / 45 / 11
Регистрация: 24.02.2015
Сообщений: 197
1

Application.FileDialog и bat-файл, некорректная работа

30.05.2016, 08:40. Показов 1091. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброе утро! Из VBA вызываю выполнение bat-файла с параметром (параметр - путь к папке, в которой батник должен выполнить некие действия). Все работает. Но.....!!!! Если перед вызовом bat-файла используется Application.FileDialog для выбора файла, то почему то bat-файл перестает обращать внимание на передаваемый параметр и выполняет свои действия в той папке, из которой ранее выбирался файл. Параметр передаю напрямую, не через переменную
Visual Basic
1
2
Set wsh = CreateObject("WScript.Shell")
wsh.Run "C:\apuvwin\mail_out.bat  C:\apuvwin\mail", 1, True
Что сделать, чтоб действия выполнялись в нужной мне папке?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.05.2016, 08:40
Ответы с готовыми решениями:

Некорректная работа bat файла
Доброго времени суток! Подскажите, пожалуйста, программа работает через ini, так же при работе...

Access 2013 + Application.FileDialog(1) перестает работать после компиляции (accde)
Не могу понять в чем дело. Сразу после компиляции и при первом автоматическом открытии accde форма...

Bat-файл и работа с ним
У меня есть три файла: --- 111.bat --- @echo off start "" "222.bat" --- 222.bat --- @echo...

bat файл работа с архивами
Есть архивы: PLC_REESTR_225U_90.RAR, PLC_REESTR_225U_210.RAR, PLC_REESTR_225U_*.RAR Всего их 9....

6
Эксперт MS Access
26805 / 14484 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
30.05.2016, 08:59 2
Перед выполнением бат-файла сделайте нужную папку текущей:
Visual Basic
1
shell "cmd.exe cd " & путь
2
224 / 45 / 11
Регистрация: 24.02.2015
Сообщений: 197
30.05.2016, 09:48  [ТС] 3
mobile, что-то у меня не срабатывает, задаю
Visual Basic
1
Shell "cmd.exe cd C:\apuvwin\mail"
, в окне командной строки получаю "E:\ОМС\ИмпортДТП\май_травмпункт>", где E:\ОМС\ИмпортДТП\май_травмпункт - папка в которой ранее выбирала файл
0
784 / 466 / 79
Регистрация: 18.05.2016
Сообщений: 1,244
Записей в блоге: 4
30.05.2016, 10:15 4
ещё ключ /D нужен для смены диска
0
224 / 45 / 11
Регистрация: 24.02.2015
Сообщений: 197
30.05.2016, 10:16  [ТС] 5
Вообще как-то странно, если после вызова Shell я вручную в открывшемся окне командной строки пытаюсь использовать команду cd, то она не срабатывает
0
Эксперт MS Access
26805 / 14484 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
30.05.2016, 10:48 6
Лучший ответ Сообщение было отмечено zenana как решение

Решение

Ну попробуйте в самом бат-файле менять текущую папку. Запишите в бат-файле строку изменения текущей папки на путь из переданного параметра
Visual Basic
1
cd /D %1
Добавлено через 28 минут
Или в VBA перед вызовом бат-файла, поменять текущий диск и папку
Visual Basic
1
2
chdrive "D"
chdir "D:\путь"
0
224 / 45 / 11
Регистрация: 24.02.2015
Сообщений: 197
30.05.2016, 10:55  [ТС] 7
В моем бат-файле есть такая строка, но папка не меняется. Пробовала даже отдельный бат-файл для смены папки запускать, но он тоже не меняет папку. А вот если не пользоваться Application.FileDialog до вызова батников, то усё работает ((

Добавлено через 5 минут
Цитата Сообщение от mobile Посмотреть сообщение
Или в VBA перед вызовом бат-файла, поменять текущий диск и папку
Visual Basic
1
2
chdrive "D"
chdir "D:\путь"
О, вот это сработало!!!
0
30.05.2016, 10:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.05.2016, 10:55
Помогаю со студенческими работами здесь

Bat-файл, запускающий другой bat-файл в нужной кодировке (дубль 2)
Здраствуйте! Суть вопроса в следующем. У меня есть батник который генерируется при формировании...

Bat-файл, запускающий другой bat-файл в нужной кодировке
Здраствуйте! Суть вопроса в следующем. У меня есть батник который генерируется при формировании...

Запуск bat файла в console application
Привет, как в console application в делф 7 запустить файл 1.bat =)

Один bat-файл запускает по очереди два других bat-файла
Имеются две папки в одной драйвера в второй программы решил сделать установку этого хозяйства с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru