Вопрос № 71430: Здравствуйте, уважаемые эксперты. Тут у меня возник следующий вопрос: где будет хранится параметр в моей программе, если с помощью ее был открыт какой-либо файл. ТО ЕСТь: пусть моя программа - это текстовый редактор(к примеру), на диске С: хранится ...
Вопрос № 71.430
Здравствуйте, уважаемые эксперты. Тут у меня возник следующий вопрос: где будет хранится параметр в моей программе, если с помощью ее был открыт какой-либо файл. ТО ЕСТь: пусть моя программа - это текстовый редактор(к примеру), на диске С: хранится текстовый документ(1.txt). Щелкнув по этому файлу откроется моя программа с параметром "С:1.txt". Так как мне узнать этот параметр во время работы программы или, вообще, вызывается ли моя программа в данный момент или нет?
И еще вопрос: как сделать чтобы у моя программа не повторялась в процессах при ее многократном вызове(например в Winamp'е так сделано).
Отправлен: 17.01.2007, 22:10
Вопрос задал: Bingo (статус: 1-ый класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 7)
Отвечает: Coupler
Здравствуйте, Bingo!
1) Еще со времен Паскаля есть функция ParamCount, отвечающая за количество параметров, и функция ParamStr(i), которая возвращает значения i-го параметра в командной строке (они разделяются пробелами).
if ParamCount > 0 then
if ParamStr(1)<>'' then
begin
edit1.text:=ParamStr(1);
end;
В примере в edit1 поместится значение первого параметра.
2) В DelphiWorld есть порядочное количество статей, посвященных этой теме (Как не допустить запуск второй копии программы). В приложении одно из решений. Остальные лежат на http://delphiworld.narod.ru/dw.html в разделе Программа и интерфейс-Приложение свое.
Приложение:
Ответ отправил: Coupler (статус: Студент)
Ответ отправлен: 18.01.2007, 05:36 Оценка за ответ: 5 Комментарий оценки: Огромное Вам спасибо. Вот только ссылка не работает. Ну да ладно,
фиг с ней...