terça-feira, 23 de junho de 2009

Fazendo um Serviço rodar no modo Aplicativo

Muitas vezes gostaríamos que o nosso serviço rodasse como um aplicativo comum, sendo que isso facilitaria bastante o debug.

Por aqui fiz o código abaixo (no arquivo DPR), que atendeu bem as minhas necessidades:

var
sModo : string;
begin
  GetParamByKey('modo',sModo,'desktop');
  if (AnsiLowerCase(sModo) = 'desktop') then
  begin
    Forms.Application.Initialize;
    Forms.Application.MainFormOnTaskbar := True;
    Forms.Application.Title := 'G!Guadian Master';
    Forms.Application.CreateForm(TfModoDesktop, fModoDesktop);
    Forms.Application.Run;
  end else
  begin
    if not SvcMgr.Application.DelayInitialize or SvcMgr.Application.Installing then
      SvcMgr.Application.Initialize;
    SvcMgr.Application.CreateForm(TGGuadianMaster, GGuadianMaster);
    SvcMgr.Application.Run;
  end;
end.

Minha lista de blogs