Перейти к содержимому

Фотография

Запуск .cmd файла с параметрами.


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 5

#1 DmitryGos

DmitryGos

    Новый участник

  • Members
  • Pip
  • 37 сообщений

Отправлено 15 февраля 2005 - 16:12

Есть 2 .cmd файла (допустим):
C:\Scripts\Install.cmd и C:\Scripts\copy.cmd
Лежат они в одной папке.

Install.cmd создает необходимые каталоги, которые передаются в качестве параметров (Install.cmd "C:\Bin" "C:\Install_Dir")
copy.cmd копирует необходимые файлы в созданный каталог (C:\Install_Dir) из существующего (C:\Bin)

В Install.cmd прописан вызов: Call copy.cmd
В copy.cmd прописан переход в каталог C:\Bin (pushd C:\Bin) и дальнейшее копирование файлов из этого каталога в созданный (C:\Install_Dir)

Пробовал запустить Install.cmd через StartApplication
Результат - файл copy.cmd не найден
Проблема судя по всему из-за того, что рабочий каталог не C:\Scripts

Попробовал запустить через SQAShellExecute
Если параметр directory$ не указан, то эффект тот же, что и с использованием StartApplication (т.е. файл copy.cmd не найден)
Если параметр directory$ указан как C:\Scripts, то файл copy.cmd находится и вызывается, но команда pushd не срабатывает и copy.cmd пытается скопировать необходимые файлы из каталога C:\Scripts.

Как быть? :(

Изменить .cmd файлы не предлагать - их содержимое зависит не от меня и менять их никто не будет.
Есть ли способ сделать этот финт ушами через робота или нужно искать выход на стороне?

Заранее благодарен
  • 0

#2 Pet[EG]

Pet[EG]

    Активный участник

  • Members
  • PipPip
  • 86 сообщений
  • ФИО:Петраш А.Ю.
  • Город:Харьков, Укр

Отправлено 15 февраля 2005 - 17:29

Как быть? :(

финт ушами: А если создать свой cmd, который будет запускать тот что вам нужен, но уже с параметрами?
  • 0

#3 STRAY

STRAY

    Новый участник

  • Members
  • Pip
  • 59 сообщений
  • Город:Минск

Отправлено 01 марта 2005 - 13:56

Ну не знаю... Если ты хо4ешь запускать из скрипта, то в Java есть нормальный метод запуска файлов (программ) при помощи соответствующих им "испольнителей":
Можешь проверить по JDK, но если мне не изменяет память, то это:
Runtime.getRuntime().Exec(<имя приложения (или твоего *.cmd)>)
Если влом, то могу и я посмотреть, если такое решение подходит... B)

Опять же... на 4ем скрипт вызовов !?
:unsure:
  • 0

#4 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 872 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 01 марта 2005 - 14:04

Насколько я понял, речь шла о запуске скриптов из SQA, а не из Java.
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#5 STRAY

STRAY

    Новый участник

  • Members
  • Pip
  • 59 сообщений
  • Город:Минск

Отправлено 01 марта 2005 - 14:18

:(
Я в Роботе вапс4е не работаю...
Но есть вариант 4ерез то самое место:
Написать экзешник (ну или как предлагали свой *.cmd) для запуска этих командеров... и запускать свой откуда хо4ешь...
:rolleyes:
  • 0

#6 dlg99

dlg99

    Специалист

  • Members
  • PipPipPipPipPip
  • 609 сообщений
  • ФИО:Andrey Yegorov
  • Город:Redmond, WA

Отправлено 01 марта 2005 - 15:25

Есть 2 .cmd файла (допустим):
C:\Scripts\Install.cmd и C:\Scripts\copy.cmd
Лежат они в одной папке.

Install.cmd создает необходимые каталоги, которые передаются в качестве параметров (Install.cmd "C:\Bin" "C:\Install_Dir")
copy.cmd копирует необходимые файлы в созданный каталог (C:\Install_Dir) из существующего (C:\Bin)

В Install.cmd прописан вызов: Call copy.cmd
В copy.cmd прописан переход в каталог C:\Bin (pushd C:\Bin) и дальнейшее копирование файлов из этого каталога в созданный (C:\Install_Dir)

Пробовал запустить Install.cmd через StartApplication
Результат - файл copy.cmd не найден
Проблема судя по всему из-за того, что рабочий каталог не C:\Scripts

....

Изменить .cmd файлы не предлагать - их содержимое зависит не от меня и менять их никто не будет.
Есть ли способ сделать этот финт ушами через робота или нужно искать выход на стороне?



i would ask developers to modify cmd :)

call "%~dp0[B]{name of the second cmd file here}[/B]"

OR

pushd
cd "%~dp0"
call [B]{name of the second cmd file here}[/B]
popd

  • 0
Andrey Yegorov. Изображение


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных