![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Запуск программы [D7]
ppcumax © (2007-05-02 21:40:00)Доброго времени суток мастера!
Тут такая задачка, есть 2 программы, 2-ая должна запускаться через первую(WinExec или ShellExecute) если запустить ее попростому, она должна выдать ошибку и закрыться. Вот такая не обычная проблемма...
Зюзя (2007-05-03 21:22:00) [1]и если [8]-ой тоже мне
Не радуйся ты так. Не тебе. Автору.
Зюзя (2007-05-03 21:21:00) [2]Это не GUIDом ли часом называется?
Я не знаю, как можно сгенерировать одинаковые GUIDы в двух разных программах. То есть, я знаю, что этого сделать нельзя. Есть идеи?
Я вообще писал о частном алгоритме генерации некоего идентификатора "на лету", чтобы просмотром исходников нельзя было найти этот идентификатор, и чтобы он на разных компьютерах был разный. А уж как автор это реализует - его дело.
{RASkov} (2007-05-03 17:49:00) [3]> [3] ppcumax © (02.05.07 23:06)
Вот посмотри пример, может что и пригодится...
http://slil.ru/24325684(400Kb)
clickmaker (2007-05-03 13:33:00) [4]
> А идентификатор мьютекса генерить "на лету", на основе железа
> или каких-то системных параметров, чтобы просмотром исходников
> не найти и чтобы на отдельно взятом компьютере были разные,
> а еще лучше - использовать какой-то алгоритм с временнОй
> меткой, действительной, например, в течение ближайших 10-20
> сек., чтобы каждый раз идентификатор был разный
Это не GUIDом ли часом называется?
{RASkov} (2007-05-03 13:32:00) [5]> [7] Зюзя (03.05.07 02:47)
> {RASkov} © (03.05.07 01:41) [5]
и если [8]-ой тоже мне, то Спасибо. Мне это не нужно:) И вообще я ничего не понял, :( что ты имел ввиду.....
Зюзя (2007-05-03 09:09:00) [6]А лучше - компильнуть это все в один бинарник, и не парить мозги себе и форуму!
:-)
Зюзя (2007-05-03 02:47:00) [7]{RASkov} © (03.05.07 01:41) [5]
Пишем:
for i := 0 to ParamCount - 1 do
ShowMessage('Param ' + IntToStr(i) + ': >' + ParamStr(i) + '<');
Сохраняем проект как "Program2", компилируем.
Копируем в папку с "Program2.exe", запускаем "Program1.exe"
Полученные значения используем в своих целях.
То есть, я бы мьютексом воспользовался. А идентификатор мьютекса генерить "на лету", на основе железа или каких-то системных параметров, чтобы просмотром исходников не найти и чтобы на отдельно взятом компьютере были разные, а еще лучше - использовать какой-то алгоритм с временнОй меткой, действительной, например, в течение ближайших 10-20 сек., чтобы каждый раз идентификатор был разный. Тогда вообще полный кул...
{RASkov} (2007-05-03 01:50:00) [8]> [2] Virgo_Style © (02.05.07 23:00)
> Нигде не было сказано, что хотя бы одна из этих программ
> самописная и-или есть ее исходный код :0)
Если это так, то автор ошибся форумом ;)
{RASkov} (2007-05-03 01:41:00) [9]> [3] ppcumax © (02.05.07 23:06)
> можно пример?
if ParamStr(1)<>'Start' then Close;)
Германн (2007-05-03 01:30:00) [10]
> ppcumax © (02.05.07 21:40)
>
> Доброго времени суток мастера!
>
> Тут такая задачка, есть 2 программы, 2-ая должна запускаться
> через первую(WinExec или ShellExecute) если запустить ее
> попростому, она должна выдать ошибку и закрыться. Вот такая
> не обычная проблемма...
>
А что будет, если 2-ю запустят через третью(WinExec или ShellExecute)?
ppcumax (2007-05-02 23:06:00) [11]>нам бы ваши проблеммы...
>Почему бы не передавать ей в WinExec или ShellExecute некое секретное >слово в командной строке? Которого не будет при "попростому"
можно пример?
Virgo_Style (2007-05-02 23:00:00) [12]clickmaker © (02.05.07 22:31) [1]
нам бы ваши проблеммы...
Нигде не было сказано, что хотя бы одна из этих программ самописная и-или есть ее исходный код :0)
clickmaker (2007-05-02 22:31:00) [13]нам бы ваши проблеммы...
Почему бы не передавать ей в WinExec или ShellExecute некое секретное слово в командной строке? Которого не будет при "попростому"