GetLastError

26/03/2003

0

Esta function retorna o erro da CreateProcess
o help cita que a descrição do erro está em Win32 SDK

[To obtain an error string for operating system error codes, use the FormatMessage function. For a complete list of error codes, see the WINNT.H header file in the Win32 SDK.]

alguem já usou isto e pode dar uma ajuda ?


Motta


Anonymous

Anonymous

Responder

Posts

26/03/2003

Adilsond

Mas o que voce realmente deseja???? Saber se houve erro???

if GetLastError <> 0 then
...


Responder

26/03/2003

Qmd

procedure TForm1.Button1Click(Sender: TObject);
var
hnd, retorno : cardinal;

begin
hnd := OpenSCManager(NIL,NIL,SC_MANAGER_ALL_ACCESS);
retorno := CreateService(hnd,´MyService´,´Test My Service´,
SERVICE_START OR SERVICE_QUERY_STATUS OR _DELETE,
SERVICE_WIN32_OWN_PROCESS,
SERVICE_AUTO_START,
SERVICE_ERROR_NORMAL,
Pchar(Edit1.text),NIL,NIL,NIL,NIL,NIL);
retorno := GetLastError;
Case retorno of
ERROR_ACCESS_DENIED: MessageDlg(´Acesso Negado´, mtError, [mbOK], 0);
ERROR_CIRCULAR_DEPENDENCY : MessageDlg(´referencia circular das dependencias...´, mtError, [mbOK], 0);
ERROR_DUP_NAME: MessageDlg(´Deve ser nome duplicado!´, mtError, [mbOK], 0);
ERROR_INVALID_HANDLE : MessageDlg(´Handle Invalido´, mtError, [mbOK], 0);
ERROR_INVALID_NAME: MessageDlg(´Nome invalido´, mtError, [mbOK], 0);
ERROR_INVALID_PARAMETER : MessageDlg(´Parametro invalido´, mtError, [mbOK], 0);
ERROR_INVALID_SERVICE_ACCOUNT : MessageDlg(´ERROR_INVALID_SERVICE_ACCOUNT´, mtInformation, [mbOK], 0);
ERROR_SERVICE_EXISTS: MessageDlg(´Servico jah existe!´, mtInformation, [mbOK], 0);
end;
end;


Responder

26/03/2003

Anonymous

Obrigado Adisin e QMD, o que eu queria era recuperar a descrição do erro , vou ver o codigo do QmD.

[]´s


Responder

APRENDA A PROGRAMAR DO ZERO AO PROFISSIONAL

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar