Форум: "Прочее";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];
ВнизКто запустил программу? Найти похожие ветки
← →
RightD (2006-12-11 12:26) [0]Привет!
Необходимо запускать приложение только из другого приложения, исключая "ручной" запуск. Как это можно организовать?
← →
Сергей М. © (2006-12-11 12:32) [1]
> Как это можно организовать?
>
Никак.
← →
Elen © (2006-12-11 12:32) [2]
> Необходимо запускать приложение только из другого приложения,
Ну это наверное называется "пакером". или скажем запускаемое приложение пусть проверяет наличие МапФайла с определенным ключем, если его нет то не работать дальше, а запускающее приложение пусть создает этот Мап и запускает то приложение...
← →
Сергей М. © (2006-12-11 12:36) [3]
> Elen © (11.12.06 12:32) [2]
Опять двадцать пять за рыбу деньги ?)
← →
clickmaker © (2006-12-11 12:36) [4]ну для защиты от совсем уж чайника можно сменить расширение с exe на что-нить более экзотическое
← →
Игорь Шевченко © (2006-12-11 12:40) [5]
> Как это можно организовать?
передавать какой-нибудь параметр, имеющий смысл в запускающем приложении и проверяемый в запускаемом. Например, числовой идентификатор процесса или окна.
Но нафига такой изврат, я не понимаю.
← →
RightD (2006-12-11 12:41) [6]
> clickmaker © (11.12.06 12:36) [4]
ну не хотелось бы так =)
> Elen © (11.12.06 12:32) [2]
Понял , спасибо. Но эта фишка с уже готовым приложением не будет работать.
← →
RightD (2006-12-11 12:42) [7]
> Игорь Шевченко © (11.12.06 12:40) [5]
>
> > Как это можно организовать?
>
>
> передавать какой-нибудь параметр, имеющий смысл в запускающем
> приложении и проверяемый в запускаемом. Например, числовой
> идентификатор процесса или окна.
> Но нафига такой изврат, я не понимаю.
Смысл в подобии системы безопасности... ну как то так. Спасибо за совет.
← →
Elen © (2006-12-11 12:44) [8]
> Опять двадцать пять за рыбу деньги ?)
От несчастье, ну ладно исключить запуск впринципе невозможно, но работу дальнейшую можно прекратить. И все же пакеры как раз и запускают приложение из себя.
← →
Игорь Шевченко © (2006-12-11 12:45) [9]RightD (11.12.06 12:42) [7]
> Смысл в подобии системы безопасности...
Это неправильная система безопасности.
Впрочем, ты можешь сделать по образу и подобию инсталляторов - поместить вызываемый exeшник в ресурсы вызывающего, извлечь его из ресурсов во временный каталог, и запустить его из этого каталога.
← →
RightD (2006-12-11 12:47) [10]
> Игорь Шевченко © (11.12.06 12:45) [9]
> RightD (11.12.06 12:42) [7]
>
>
> > Смысл в подобии системы безопасности...
>
>
> Это неправильная система безопасности.
Подскажите более подходящий вариант
← →
Игорь Шевченко © (2006-12-11 12:49) [11]RightD (11.12.06 12:47) [10]
> Подскажите более подходящий вариант
Я не знаю, что тебе надо. Опиши проблему - может и найдется приемлемый без извратов вариант
← →
Elen © (2006-12-11 12:50) [12]
> RightD
А чего б не поставить доступа на папку с прогой, и тогда ее можно будет запускать только избранным?
← →
trubin © (2006-12-11 12:57) [13]Если тупо фоновой утилитой переодически перебирать процессы и запрещенные грохать? (не красиво конечно)
> Необходимо запускать приложение
В смысле любое приложение?
← →
RightD (2006-12-11 12:58) [14]Пишется приложение, выполняющее следующие функции:
1) Запрос атрибутов пользователя
2) Выборка из БД доступных проектов и их приложений
3) Запуск доступных приложений (не просто *.exe, возможно с доп. файлами)
4) Проверка наличия у IT-отдела обновленных версий и обновление в случае необходимости.
...
в общих чертах
← →
RightD (2006-12-11 12:59) [15]
> Игорь Шевченко © (11.12.06 12:49) [11]
> RightD (11.12.06 12:47) [10]
>
>
> > Подскажите более подходящий вариант
>
>
> Я не знаю, что тебе надо. Опиши проблему - может и найдется
> приемлемый без извратов вариант
выше это вам
← →
RightD (2006-12-11 13:00) [16]
> trubin © (11.12.06 12:57) [13]
> Если тупо фоновой утилитой переодически перебирать процессы
> и запрещенные грохать? (не красиво конечно)
>
>
> > Необходимо запускать приложение
>
>
> В смысле любое приложение?
Это может быть и самопис и AutoCad
← →
Игорь Шевченко © (2006-12-11 13:03) [17]RightD (11.12.06 13:00) [16]
> Это может быть и самопис и AutoCad
Это никак.
← →
Elen © (2006-12-11 13:04) [18]
> 1) Запрос атрибутов пользователя
У нас это заменили сетевой политикой. Каждый пользователь имеет свой аккаунт и входит в определенную группу, соответственно и на проектах и на некоторых прогах стоят разные доступа.
← →
Сергей М. © (2006-12-11 13:05) [19]
> Это может быть и самопис и AutoCad
>
А нафига AutoCad"у знать кто и как его запустил ?
Ему оно не надо)
← →
Elen © (2006-12-11 13:08) [20]
> А нафига AutoCad"у знать кто и как его запустил ?
Может автор хочет избавить предприятие от шабашников?
← →
Сергей М. © (2006-12-11 13:13) [21]
> Может автор хочет избавить предприятие от шабашников?
>
Этим админ должен заведовать, а не программист)
← →
Чапаев © (2006-12-11 13:43) [22]> [5] Игорь Шевченко © (11.12.06 12:40)
О. Сам так делаю (+[4]), приятно услышать от мастеров подтверждение кошерности метода. ;-) А нафига -- лично у меня как минимальная защита от дурака.
← →
RightD (2006-12-11 13:49) [23]Удалено модератором
Примечание: Жаргон меняем, не на удаве
← →
Elen © (2006-12-11 13:53) [24]Удалено модератором
Примечание: И не цитируем
← →
RightD (2006-12-11 13:55) [25]
> Что прямо во время работы? Сменид имя процесса?
Прошу прощения, на счет смены имени это я не подумал
← →
novill © (2006-12-11 14:05) [26]Тут недавно один товарищ писал прогу с подобным извращением (программная блокировка выполнения), посмотри в архивах.
Было сделано через замену команды на выполнение в реестре для исполнимых файлов и разрешение на запуск давалось через файл со списком.
← →
RightD (2006-12-11 14:57) [27]...не нашел
← →
novill © (2006-12-11 15:08) [28]> [27] RightD (11.12.06 14:57)
а если я найду?
← →
Elen © (2006-12-11 15:12) [29]
> Было сделано через замену команды на выполнение в реестре
> для исполнимых файлов
По-моему это не на каждой винде пройдет.
Автор скажи чем не устраивает настроить политику безопасности?
← →
Чапаев © (2006-12-11 15:16) [30]> По-моему это не на каждой винде пройдет.
> Автор скажи чем не устраивает настроить политику безопасности?
Это не на каждой винде пройдёт.
← →
RightD (2006-12-11 15:24) [31]
> novill © (11.12.06 15:08) [28]
> а если я найду?
м? =)
> Elen © (11.12.06 15:12) [29]
> Автор скажи чем не устраивает настроить политику безопасности?
>
Мне это в голову не приходило...
← →
RightD (2006-12-11 15:39) [32]Что вы скажете на это?:
Программа, которая отвечает за запуск имеет процедуру создания файла-ключа, зависящего от ... (1)
Программа, которую запускают имеет процедуру, анализирующую ключ, и принимающую решение о дальнейшей работе.
(1) посоветуйте основу ключа. Шифратор-дешифратор я напишу.
← →
Игорь Шевченко © (2006-12-11 15:40) [33]
> Программа, которую запускают имеет процедуру, анализирующую
> ключ, и принимающую решение о дальнейшей работе.
autocad тоже ?
← →
Сергей М. © (2006-12-11 15:42) [34]
> Программа, которую запускают имеет процедуру, анализирующую
> ключ, и принимающую решение о дальнейшей работе.
Угу.
Как раз в AutoCad"е такая процедура есть испокон веков.
← →
RightD (2006-12-11 15:42) [35]
> Игорь Шевченко © (11.12.06 15:40) [33]
> autocad тоже ?
Нет конечно =)
← →
Игорь Шевченко © (2006-12-11 15:47) [36]RightD (11.12.06 15:42) [35]
а зачем мучиться с ключами ? Передавай в параметрах или из поста [5] или непечатаемые символы.
← →
Чапаев © (2006-12-11 15:48) [37]Они все печатаемые, ежели умеючи... ;-)
← →
Игорь Шевченко © (2006-12-11 15:50) [38]Чапаев © (11.12.06 15:48) [37]
Но для этого их надо узнать...
← →
Elen © (2006-12-11 15:51) [39]
> Как раз в AutoCad"е такая процедура есть испокон веков.
Как раз в Акаде не проблема ее написать на лиспе или ВБА.
> посоветуйте основу ключа. Шифратор-дешифратор я напишу.
Нет смысла либо скоро взламают либо такая система долго не протянет. Такое впечатление что тебе надо написать собственную ОС
← →
Чапаев © (2006-12-11 15:54) [40]> [38] Игорь Шевченко © (11.12.06 15:50)
Кстати... Можно ведь получить (без выкрутасов) командную строку любого процесса? Или это не для средних умов?
← →
Elen © (2006-12-11 15:55) [41]
> RightD
Кстати Автор а какие проги будут входить в список разрешенных - спрашиваю к тому что например Акад ведь может запускаться и работать как COM объект из твоей проги.? Может и другие в твоем списке могут так, тогда никаких ключей не надо, сделай лоадер и запускай...
← →
Elen © (2006-12-11 15:56) [42]
> Или это не для средних умов?
Средние умы найдут более высших. Те напишут монитор и все тут - затея провалилась. (Если политика не настроена)
← →
Чапаев © (2006-12-11 15:57) [43]Вопрос не в наличии высших умов, вопрос в трудоёмкости. И мне бы хотелось узнать, насколько трудоёмко получение командной строки произвольного процесса.
← →
Elen © (2006-12-11 16:02) [44]
> И мне бы хотелось узнать, насколько трудоёмко получение
> командной строки произвольного процесса.
Легко с помошью FileMonitor :)
← →
Игорь Шевченко © (2006-12-11 16:05) [45]Чапаев © (11.12.06 15:54) [40]
Без выкрутасов нельзя.
← →
RightD (2006-12-11 16:10) [46]Приведите пример передачи параметра от приложения к приложению.
← →
Чапаев © (2006-12-11 16:12) [47]> [45] Игорь Шевченко © (11.12.06 16:05)
Это радует. :о)
← →
Elen © (2006-12-11 16:12) [48]
> Приведите пример передачи параметра от приложения к приложению.
Мап файлы, Мессаги от WM_USER, осторожно скажу DDE...
← →
Elen © (2006-12-11 16:13) [49]
> Это радует
Все выкрутасы уже написаны и доступны бесплатно на многих сайтах - это плохо.
← →
Игорь Шевченко © (2006-12-11 16:15) [50]Чапаев © (11.12.06 16:12) [47]
За ради интереса запусти с консоли
program ParamApp;
uses
Forms,
main in "main.pas" {Form1};
{$R *.res}
var
S: string;
begin
Application.Initialize;
if (ParamCount = 1) then begin
S := ParamStr(1);
if (Length(S) <> 4) or
((S[1] <> "A") or (S[2] <> #127) or (S[3] <> #8) or
(S[4] <> "B")) then
Exit;
end else
Exit;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
TForm1 - любая форма
И запускалка:
program Launcher;
{$APPTYPE CONSOLE}
uses
Windows,
SysUtils;
var
S: string;
begin
S := ""AABB"";
S[3] := #127;
S[4] := #8;
WinExec (PChar("ParamApp "+S), SW_SHOW);
end.
← →
Lamer@fools.ua © (2006-12-11 16:22) [51]>>Чапаев © (11.12.06 16:12) [47]
>Это радует. :о)
Ну пока все будут радоваться, я открою Process List в FAR"e :-)
← →
Lamer@fools.ua © (2006-12-11 16:25) [52]P.S. к [51]
http://i11.tinypic.com/40m2t61.png
← →
boriskb © (2006-12-11 16:26) [53]Я так и не уяснил, зачем такой изврат нужен.
Ясно что "чтоб не смог запускать кто ни поподя".
Но это одна из задач и доменных и локальных политик.
Чем они не угодили то?
← →
Чапаев © (2006-12-11 16:28) [54]> [50] Игорь Шевченко © (11.12.06 16:15)
Да... С #8 проблемы. :о) Без hexedit"а не обойтись.
← →
Eraser © (2006-12-11 16:54) [55]> [0] RightD (11.12.06 12:26)
> Привет!
> Необходимо запускать приложение только из другого приложения,
> исключая "ручной" запуск. Как это можно организовать?
ну отследить, кто запустил программу можно с пом. PROCESSENTRY32.th32ParentProcessID.
так вот если этот ProcessID не совпадает с текущем ID, то глушить процесс.
← →
Vga © (2006-12-11 20:24) [56]> [40] Чапаев © (11.12.06 15:54)
Process Explorer etc показывает.
Если сильно надо - можно написать ехе-криптор и продумать систему передачи ему ключа от запускающей программы. Или вообще оставить в раскриптовщике только запрос на раскриптовку в главную программу.
← →
Eraser © (2006-12-11 20:27) [57]> Чапаев ©
Оффтоп:
кстати насчет того, чтобы запускать процесс от имени системы. почему бы не использовать планировщик?
← →
Гарри Поттер © (2006-12-11 20:47) [58]> [32] RightD (11.12.06 15:39)
> Что вы скажете на это?:
> Программа, которая отвечает за запуск имеет процедуру создания
> файла-ключа, зависящего от ... (1)
> Программа, которую запускают имеет процедуру, анализирующую
> ключ, и принимающую решение о дальнейшей работе.
>
> (1) посоветуйте основу ключа. Шифратор-дешифратор я напишу.
А если просто запускающая прога в памяти флаг повесит, мьютекс? Запускаемая проверит наличие и запуститься\незапустится?
← →
Чапаев © (2006-12-11 20:53) [59]> [58] Гарри Поттер © (11.12.06 20:47)
Что помешает "левой" проге мьютекс создать?
> [57] Eraser © (11.12.06 20:27)
:о) Во наболело!
← →
Гарри Поттер © (2006-12-11 21:07) [60]> [59] Чапаев © (11.12.06 20:53)
> Что помешает "левой" проге мьютекс создать?
Что помешает "левой" проге файл-ключ создать?
← →
Чапаев © (2006-12-11 21:09) [61]> [60] Гарри Поттер © (11.12.06 21:07)
А я и не говорил, что файл-ключ -- это хорошо. ;-)
← →
RightD (2006-12-12 10:13) [62]
> Гарри Поттер © (11.12.06 21:07) [60]
> > [59] Чапаев © (11.12.06 20:53)
> > Что помешает "левой" проге мьютекс создать?
>
> Что помешает "левой" проге файл-ключ создать?
"Левую" прогу еще написать надо...
Страницы: 1 2 вся ветка
Форум: "Прочее";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];
Память: 0.6 MB
Время: 0.048 c