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

Вниз

Путь, откуда был вызван exe   Найти похожие ветки 

 
DimonNew   (2004-08-26 12:16) [0]

Привет, подскажите пож-та. Один exe файл вызвает второй. Как можно в исходном коде второго экзешнике узнать путь, откуда был вызван первый?


 
clickmaker ©   (2004-08-26 12:21) [1]

Если в виде параметра не передашь, то не узнаешь


 
SPy ©   (2004-08-26 12:21) [2]

:) Во закрутил-то :) Ты сам понял что написал?
Это что значит:
"откуда был вызван первый"? :) Сформулирую ТОЛКОВО!


 
Digitman ©   (2004-08-26 12:21) [3]

Самый простой вариант - передать 2-му ехе при его запуске строковый параметр, отражающий путь запуска 1-го ехе .. 2-й ехе после запуска получает этот параметр обращением к ф-ции ParamStr(1)


 
DimonNew   (2004-08-26 12:30) [4]

Я то понял, извини Spy, что ввел тебя в замешательство.
Одна программа вызывает кучу разных программ, и передает им параметры, но пути там нет. Исходные коды этой "кучи" программ есть, а у главной нет. Но эта главная программа может быть в разных каталогах, а "куча" программ толко в одном. Вот я и хотел спросить, что спросил.


 
Rule ©   (2004-08-26 12:30) [5]

этого он никогда не узнает
тебе надо при вызове второго приложения первым после его открытия передать как хочешь параметр пути первого, как это узнать я думаю знаешь, если нет то extractfilepath(Application.ExeName)


 
clickmaker ©   (2004-08-26 12:36) [6]


> [4] DimonNew   (26.08.04 12:30)
> Но эта главная программа может быть в разных каталогах

Тогда при установки этой кучи на каждую машину, где-нить в реестре прописать путь к главной, в исходники второй вставить чтение из реестра


 
Rule ©   (2004-08-26 12:45) [7]

можешь поискать в принципе решение через винапи, тоесть во втором приложении ищешь процесс и узнаешь путь запуска этого процесса, только вариант действителен если первых приложений только одно, а если запустить 2 с разных мест, то хуже


 
DimonNew   (2004-08-26 12:48) [8]

Спасибо большое за помощь!!!


 
Digitman ©   (2004-08-26 12:49) [9]


> DimonNew   (26.08.04 12:30) [4]


можно внедрить в АП 1-го ехе код, перехватывающий вызов CreateProcess

как только код перехвата обнаружит, что вызвана ф-ция CreateProcess, запустивший 2-й ехе, этот 2-й ехе немедленно извещается об интересующей его инфе через любой механизм интерпроцессной передачи инф-ции, например, MMF



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

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

Наверх





Память: 0.46 MB
Время: 0.035 c
4-1090998661
TUser
2004-07-28 11:11
2004.09.12
GetWindowPlacement


1-1093422580
happyandry
2004-08-25 12:29
2004.09.12
Дельфи - > Excel (свойства ячеек)


14-1093171832
Никола
2004-08-22 14:50
2004.09.12
BBSы Москвы


6-1089068198
RaPToR_1
2004-07-06 02:56
2004.09.12
сокет в компоненте


14-1092479913
YurikGL
2004-08-14 14:38
2004.09.12
Пользователи Active Directory





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский