Если программа написана на Delphi и использует модуль Controls, то при её запуске будет создан глобальный атом вида
'Delphi[восьмизначный идентификатор процесса (PID)]'.
Таким образом чтобы проверить написан ли запущенный процесс с использованием Delphi (модуля Controls) достаточно проверить наличие атома с соответствующим идентификатором процесса:
Естественно можно написать программу и без использования Controls. В таком случае можно проверить поле TimeDateStamp PE заголовка программы - для программ написанных на Delphi он равен $2A425E19 (19.06.1992 22:22:17)
'Delphi[восьмизначный идентификатор процесса (PID)]'.
Таким образом чтобы проверить написан ли запущенный процесс с использованием Delphi (модуля Controls) достаточно проверить наличие атома с соответствующим идентификатором процесса:
ShowMessage( BoolToStr( GlobalFindAtom( PChar(Format('Delphi%.8X', [StrToInt(Edit1.Text)])) ) <> 0 , True) );
Естественно можно написать программу и без использования Controls. В таком случае можно проверить поле TimeDateStamp PE заголовка программы - для программ написанных на Delphi он равен $2A425E19 (19.06.1992 22:22:17)
Комментариев нет:
Отправить комментарий