Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Windows [игнор отключен] [закрыт для гостей] / В расшаренной папке запуск exe через bat / 25 сообщений из 53, страница 1 из 3
27.08.2014, 12:39
    #38730082
prgmdelphi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
Добрый день. Есть компьютеры в сети (comp1, comp2...compN). На comp1 расшарена папка, в которой есть load.bat и myprog.exe.
Стоит задача, пользователям этих компьютеров запускать с параметром myproj.exe -X. Это собственно делает load.bat:
CollapsedWrap disabledLine numbers off
Код: sql
1.
start "Запуск MyProg" "%~dp0\MyProg.exe" -X


Все вроде бы замечательно - прога стартует, но как выяснилось, если запускать прогу через load.bat ее поведение не тоже самое как если бы ее запускать через командную строку MyProg.exe -X в каталоге расшаренной папки.
В чем именно отличается поведение, а вот в чем - дело в том что MyProg.exe использует в своей работе СУБД Firebird, который запущен как сервис на comp1.
Так вот если запускать через load.bat, то не удается подключиться даже к security2.fdb (база, идущая с поставкой firebird), если напрямую ч/з командную строку, то все ок.

Что нужно написать в load.bat, чтобы запуск myprog.exe был аналогичен запуску в командной строке?
...
Рейтинг: 0 / 0
27.08.2014, 12:58
    #38730114
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
prgmdelphi,

Строку соединения с базой FB в студию.
...
Рейтинг: 0 / 0
27.08.2014, 12:58
    #38730115
bazile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
prgmdelphi, попробуй без start
Код: sql
1.
"%~dp0\MyProg.exe" -X
...
Рейтинг: 0 / 0
27.08.2014, 13:01
    #38730123
prgmdelphi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
bazileprgmdelphi, попробуй без start
Не помогло
...
Рейтинг: 0 / 0
27.08.2014, 13:06
    #38730129
prgmdelphi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
DarkMasterСтроку соединения с базой FB в студию.

Код: sql
1.
2.
isc_attach_database(PISC_STATUS(@StVect), Length(cSecDB), PChar(cSecDB), @hDB, 0, nil);
//где cSecDB = 'security2.fdb';
...
Рейтинг: 0 / 0
27.08.2014, 13:15
    #38730145
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
prgmdelphi,

1) Протокол-то хоть какой?
2) Для FB25 тебе сервер и не даст соединится с security2.fdb - ибо нефиг.
...
Рейтинг: 0 / 0
27.08.2014, 13:16
    #38730148
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
prgmdelphi,

И сообщение об ошибке покажи.
...
Рейтинг: 0 / 0
27.08.2014, 13:23
    #38730165
prgmdelphi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
DarkMasterprgmdelphi,
2) Для FB25 тебе сервер и не даст соединится с security2.fdb - ибо нефиг.
[/quot]
Все он там дает, в топике я писал, что если из под командной строки то все ок.
DarkMasterprgmdelphi,
1) Протокол-то хоть какой?

Все настройки у FB 2.5 по умолчанию, протокол TCP/IP.

DarkMasterИ сообщение об ошибке покажи.
Ошибку я сам показываю (так нужно), если

Код: pascal
1.
2.
3.
4.
5.
if ((StVec[0] = 1) and (StVec[1] = isc_unavailable)) then 
begin {здесь true возникает если запуск происходит через load.bat, false в противном случае}
  ShowMsgErr;
  //other my code
end;
...
Рейтинг: 0 / 0
27.08.2014, 13:24
    #38730169
prgmdelphi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
кстати при запуске load.bat хоть с ключевым словом "start" хоть без него в консоли выводится сообщение:
"Указанный путь был использован при запуске CMD.EXE в качестве текущей папки. CMD.EXE не поддерживает пути UNC. По умолчанию выбрана системная папка Windows.
...
Рейтинг: 0 / 0
27.08.2014, 13:27
    #38730185
zirra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
prgmdelphi> кстати при запуске load.bat хоть с ключевым словом "start" хоть без него в консоли выводится сообщение:
> "Указанный путь был использован при запуске CMD.EXE в качестве текущей папки. CMD.EXE не поддерживает пути UNC. По умолчанию выбрана системная папка Windows.
Добавить cmd /c перед start ?..

--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
27.08.2014, 13:30
    #38730191
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
prgmdelphiЧто нужно написать в load.bat, чтобы запуск myprog.exe был аналогичен запуску в командной строке?Ничего.
UNC-имя не может быть текущим каталогом в cmd.exe. И он об этом пишет.
...
Рейтинг: 0 / 0
27.08.2014, 13:43
    #38730227
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
prgmdelphi,

Ну тогда ты подключаешься не к security2.fdb, бо сервер с ней работает эксклюзивно.
А сообщение об ошибке желательно увидеть здесь ;)
...
Рейтинг: 0 / 0
27.08.2014, 13:44
    #38730228
prgmdelphi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
Basil A. Sidorov,
Ну так как что поправить в load.bat чтобы он корректно отрабатывал?
...
Рейтинг: 0 / 0
27.08.2014, 13:59
    #38730278
prgmdelphi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
DarkMasterprgmdelphi,
Ну тогда ты подключаешься не к security2.fdb, бо сервер с ней работает эксклюзивно.

подключаюсь к ней родимой ибо isc_attach_database возвращается в StrVec все корректно.
Косяк возникает, если запуск производить через load.bat
...
Рейтинг: 0 / 0
27.08.2014, 14:25
    #38730343
Sergey Orlov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
prgmdelphiDarkMasterprgmdelphi,
Ну тогда ты подключаешься не к security2.fdb, бо сервер с ней работает эксклюзивно.

подключаюсь к ней родимой ибо isc_attach_database возвращается в StrVec все корректно.
Косяк возникает, если запуск производить через load.bat
Может сначала тупо перейти в каталог, где ваша прога типа cd /D %~dp0, а второй строчкой запустить MyProg.exe -X
...
Рейтинг: 0 / 0
27.08.2014, 15:07
    #38730451
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
prgmdelphiНу так как что поправить в load.bat чтобы он корректно отрабатывал?/me потёр янтарный шар шерстяной тряпочкой ...
Нифига у вас не TCP/IP, поэтому пробуйте указывать в строке подключения полный путь к базе.
...
Рейтинг: 0 / 0
27.08.2014, 15:16
    #38730472
prgmdelphi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
[quot Sergey Orlov]prgmdelphiпропущено...
Может сначала тупо перейти в каталог, где ваша прога типа cd /D %~dp0, а второй строчкой запустить MyProg.exe -X
Не помогло
...
Рейтинг: 0 / 0
27.08.2014, 16:48
    #38730696
zirra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
prgmdelphi> Не помогло
Как именно не помогло-то?..
На cd /D %~dp0 матом ругалось, наверное?..
Или на MyProg.exe -X уже?..

--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
27.08.2014, 21:52
    #38730974
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
zirra,

А ТС принципиально не показывает сообщения об ошибках. Тренер наших телепатометров, не?
...
Рейтинг: 0 / 0
28.08.2014, 13:02
    #38731499
prgmdelphi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
zirraprgmdelphi> Не помогло
Как именно не помогло-то?..
На cd /D %~dp0 матом ругалось, наверное?..
Или на MyProg.exe -X уже?..

MyProg запускается, но коннект к security2.fdb не проходит (как писал в начале топика об этом),
если же MyProg просто запускать через командную строку, то все ок.
...
Рейтинг: 0 / 0
28.08.2014, 13:14
    #38731527
zirra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
prgmdelphi> MyProg запускается, но коннект к security2.fdb не проходит (как писал в начале топика об этом),
Таки и с какой конкретно ошибкой-то валится при непроходящем коннекте?..

--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
28.08.2014, 13:26
    #38731546
prgmdelphi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
zirra Таки и с какой конкретно ошибкой-то валится при непроходящем коннекте?..

Так я же уже писал:

prgmdelphiОшибку я сам показываю (так нужно), если

if ((StVec[0] = 1) and (StVec[1] = isc_unavailable)) then
begin {здесь true возникает если запуск происходит через load.bat, false в противном случае}
ShowMsgErr;
//other my code
end;
...
Рейтинг: 0 / 0
28.08.2014, 13:30
    #38731551
zirra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
prgmdelphi> if ((StVec[0] = 1) and (StVec[1] = isc_unavailable)) then
> begin {здесь true возникает если запуск происходит через load.bat, false в противном случае}
> ShowMsgErr;
> //other my code
> end;
Т.е. isc_unavailable чтоль?..
Тогда так: как ты обращаешься к базе-то?.. server:security2.fdb или таки \\server\share\path\security2.fdb ?..

--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
28.08.2014, 14:17
    #38731632
prgmdelphi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
zirraprgmdelphi> if ((StVec[0] = 1) and (StVec[1] = isc_unavailable)) then
> begin {здесь true возникает если запуск происходит через load.bat, false в противном случае}
> ShowMsgErr;
> //other my code
> end;
Т.е. isc_unavailable чтоль?..
Тогда так: как ты обращаешься к базе-то?.. server:security2.fdb или таки \\server\share\path\security2.fdb ?..

--
Vladimir A.Bakhvaloff

MyProg смотрит реестр и по нему вычисляет путь до security2.fdb, но т.к. на клиентской машине Firebird вообще не установлен, то на клиенте в isc_attach_database передастся просто "security2.fdb", но вот почему при простом запуске из под командной строки isc_attach_database отрабатывает все ок, а из под load.bat получается StVec[1] = isc_unavailable
А вот почему так, пока не понятно
...
Рейтинг: 0 / 0
28.08.2014, 14:46
    #38731681
zirra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В расшаренной папке запуск exe через bat
prgmdelphi> то на клиенте в isc_attach_database передастся просто "security2.fdb", но
Отличная трава!..
Попробуй (просто так, ради хохмы) если имя сервера не определяется, добавить перед именем базы ещё и имя заведомо рабочего сервера...

--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Форумы / Windows [игнор отключен] [закрыт для гостей] / В расшаренной папке запуск exe через bat / 25 сообщений из 53, страница 1 из 3
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]