Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

Как узнать путь к bat файлу запускающий exe   Найти похожие ветки 

 
ixen ©   (2010-05-21 13:12) [0]

Здравствуйте! Если exe программы лежит на сервере в расшаренной папке, а пользователи в сети запускают ее через bat файл коммандой start \\server\prog\prog.exe , то как узнать программе путь откуда был запущен bat файл?


 
Омлет ©   (2010-05-21 13:19) [1]

Пусть батник передает свой путь в параметрах запуска, а программа эти параметры читает.


 
ixen ©   (2010-05-21 13:29) [2]

не
> Пусть батник передает свой путь в параметрах запуска, а
> программа эти параметры читает.

а есть другой способ?


 
ixen ©   (2010-05-21 13:34) [3]

у меня на работе используется такая программа, и в батнике нет параметров, я хочу сделать так же... суть в том что у клиентов могут быть разные настройки программы, которые хранятся в settings.ini , и что бы считать эти настройки нужно знать путь откуда был запущен bat файл.


 
ixen ©   (2010-05-21 13:38) [4]

до меня дошло... мне кажется путь к клиентскому батнику статически прописан в программе...

а вообще такое возможно сделать?


 
Омлет ©   (2010-05-21 13:49) [5]

Пусть батник сразу передает путь до файла настроек - это самый простой путь.


 
ixen ©   (2010-05-21 14:06) [6]


> Пусть батник сразу передает путь до файла настроек - это
> самый простой путь.
>

тогда уж просто ярлычок на рабочий стол вывести и в нем прописать как параметр путь к файлу настроек


 
Омлет ©   (2010-05-21 14:51) [7]

Батником удобнее, особенно если есть варианты расположения конфига. Батник может проверить наличие файла и, в случае его отсутствия, выдать вменяемое сообщение.


 
han_malign   (2010-05-21 15:39) [8]

Microsoft рекомендует HKCU, или SHGetSpecialFolderPath(например CSIDL_LOCAL_APPDATA).
(не зависимо от того откуда загружается образ, процесс выполняется в локальном контексте)

ну либо .bat
start \\server\prog\prog.exe "%~dp0settings.ini"
либо
@rem на случая запуска батника по длинному пути или из под ярлыка
@rem смена диска
%~d0
@rem смена папки
cd "%~p0"
start \\server\prog\prog.exe
+ GetCurrentDirectory()
либо просто
start /D"%~dp0" \\server\prog\prog.exe
+ GetCurrentDirectory()


 
Leonid Troyanovsky ©   (2010-05-22 11:12) [9]


> ixen ©   (21.05.10 13:34) [3]

> хранятся в settings.ini , и что бы считать эти настройки
> нужно знать путь откуда был запущен bat файл.

start \\server\prog\prog.exe %0

--
Regards, LVT.


 
antonn ©   (2010-05-23 15:04) [10]


> Leonid Troyanovsky ©   (22.05.10 11:12) [9]

там кавычки случаем не нужны?


 
Демо ©   (2010-05-23 15:24) [11]


> > Leonid Troyanovsky ©   (22.05.10 11:12) [9]там кавычки
> случаем не нужны?


В каком месте?


 
antonn ©   (2010-05-23 15:47) [12]

в том, где пути могут содержать пробельчеги


 
Омлет ©   (2010-05-23 17:37) [13]

В данном случае не обязательны, т.к. пробелов нет )


 
Игорь Шевченко ©   (2010-05-23 17:41) [14]

Омлет ©   (23.05.10 17:37) [13]

Точно ? ты всегда знаешь, где лежит батник автора ? Я обзавидовался твоему телепатору, поделись, где достал ?


 
Leonid Troyanovsky ©   (2010-05-23 18:13) [15]


> Игорь Шевченко ©   (23.05.10 17:41) [14]

Без кавычек это %~0.

--
Regards, LVT.


 
Игорь Шевченко ©   (2010-05-23 19:13) [16]

Leonid Troyanovsky ©   (23.05.10 18:13) [15]

Да. Век живи, век учись


 
Омлет ©   (2010-05-23 19:14) [17]

> Игорь Шевченко ©   (23.05.10 17:41) [14]

%0 возвращает строку, уже заключенную в кавычки.
А в пути \\server\prog\prog.exe пробелов нет. Так что кавычки можно не ставить.


 
Игорь Шевченко ©   (2010-05-23 21:54) [18]

Омлет ©   (23.05.10 19:14) [17]


> А в пути \\server\prog\prog.exe пробелов нет


но интересует же не этот путь, верно ?



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.083 c
2-1265977153
fford
2010-02-12 15:19
2010.08.27
получить узел по номеру в TVirtualStringTree


6-1217592758
user
2008-08-01 16:12
2010.08.27
Как перебрать все файлы с FTP ?


2-1265983724
Unior
2010-02-12 17:08
2010.08.27
Как узнать дату понедельника на этой неделе?


2-1274176896
St.Anger
2010-05-18 14:01
2010.08.27
Двумерный динамический массив


15-1264673292
Vigi
2010-01-28 13:08
2010.08.27
Часы с разными часовыми поясами





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский