Если там имеется, например, " -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.
Симлинки
Хакер писал(а):Для тебя это проблема, если ты собрался тупо сравнить две строки.
Сейчас этот форум просматривают: Google-бот, Yandex-бот и гости: 37