Если там имеется, например, " -fromHKLM", значит запуск был произведен из понятно-откуда.
Ага, он самый.Space писал(а):Ключ ты имел ввиду? Вроде С:\...\myprg.exe -r ?
Ты сам сказал, что реально правильного способа нет, так что лучше тут, имхо, не придумаешь. Хотя теоретически...Хакер писал(а):Так что этот вариант, как способ определить, откуда запущен процесс, не принимается.
Ты сам сказал, что реально правильного способа нет, так что лучше тут, имхо, не придумаешь.
Хакер писал(а):Уже теплее, но:
Как ты планируешь сравнивать то, что там есть, с собой?
А если оно было в RunOnce?
А если прав на чтение этого раздела реестра нет?
Space писал(а):Как это нет прав? Прога сама пишет ключ в реестр и сама читает.
Space писал(а):А сканировать ветку неверно, т.к. ветка может быть, а прога запущена повторно, например, кликом по иконке на рабочем столе, после того как закрыта была после автостарта
И сравниваем с именем своего EXE.
Space писал(а):Как это нет прав? Прога сама пишет ключ в реестр и сама читает.
А сканировать ветку неверно, т.к. ветка может быть, а прога запущена повторно, например, кликом по иконке на рабочем столе, после того как закрыта была после автостарта
Хакер писал(а):И сравниваем с именем своего EXE.
Вот об этом по подробнее. Как ты собрался сравнивать?
Хакер писал(а):Меня интересует способ сравнения.
Не знаю, что там у тя за глобальные атомы и останутся ли они после завершения проги, но тут уже не проще первого варианта
jangle писал(а):Сравнение двух текстовых строк? Может объяснишь, что ты на самом деле хочешь сказать.
If sFileNameFromRegistry = App.Path + "\" + App.ExeName + ".exe" Then
Хакер писал(а):jangle писал(а):Сравнение двух текстовых строк? Может объяснишь, что ты на самом деле хочешь сказать.
Это и хочу сказать.
Вот так будешь сравнивать?If sFileNameFromRegistry = App.Path + "\" + App.ExeName + ".exe" Then
Space писал(а):Хакер небось хочет подловить его на разных местах запуска проги![]()
Нет, их время жизни ограничено жизнью сеанса.Глобальные атомы живут до перезагрузки системы. Это вобщем азы WinApi
Ну этоже детский сад! Никакой проблемы не представляет
Space писал(а):давайте вернёмся к вопросу - должна ли программа восcтанавливать автозапуск при старте, если он был удалён из реестра извне (т.е. в проге установлен флаг Автозагрузка)?
Длинные пути/короткие пути
каталоги [.] и [..]
UNC-пути
DosDevice-овые диски, т.е. виртуальные тома, созданные с помощью subst.
Симлинки
Хакер писал(а):Для тебя это проблема, если ты собрался тупо сравнить две строки.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3