Советы по Delphi

         

Как мне обнаружить, что программа запущена из-под IDE?


Решение 1

    if csDesigning in ComponentState then
.....

Вы этого хотели, не правда ли...

Решение 2

Вот программка, работающая с Delphi 1. Если вы пользуетесь Delphi 2 и она работает и там, сообщите мне об этом удивительном факте.



    function LaunchedFromDelphiIDE: Boolean;
{----------------------------------------------------------------}
{ Проверка того, запущено ли приложение из-под IDE или без него. }
{----------------------------------------------------------------}
begin LaunchedFromDelphiIDE := Bool(PrefixSeg) {т.е. не DLL} and Bool(PWordArray(MemL[DSeg:36])^[8]); end; {LaunchedFromDelphiIDE}

Решение 3 (также для Delphi 1)

Предположим, это вызывается из Delphi16-приложения, не DLL, данная функция возвращает True, если приложение работает под отладчиком и False в противном случае. Если вызов происходит из DLL, возвращается False. Комментарии излишни <g>.

- Brian Long

    function DebuggerRunning: Boolean; begin Result := Bool(PrefixSeg) and Bool(PWordArray(MemL[DSeg:36])^[8]); end;

[000134]



Содержание раздела