Thema: Delphi StartService() Probleme

Einzelnen Beitrag anzeigen

Benutzerbild von Dani
Dani

Registriert seit: 19. Jan 2003
732 Beiträge
 
Turbo Delphi für Win32
 
#1

StartService() Probleme

  Alt 5. Feb 2003, 19:30
Hooi hoi!

Es gibt eine Sache bei StartService() , die ich nicht ganz verstehe:


lpServiceArgVectors
[in] Pointer to an array of pointers to null-terminated strings to be passed to a service as arguments. Driver services do not receive these arguments. If no arguments are passed to the service, this parameter can be NULL. The service accesses these arguments through its ServiceMain function. The first argument (argv[0]) is the name of the service by default, followed by the arguments, if any, in the lpServiceArgVectors array.


Also ein Zeiger auf ein Array, das wiederum Zeiger auf nullterminierte Strings enthält, wobei der erste dieser Zeiger aber der Servicename sein muss?!

Wer ist für diese Form der Parameter-Übergabe verantwortlich? *grrr*

Hab ichs wenigstens richtig verstanden?

Jedenfalls weiß ich nun nicht genau, was ich der Funktion nun schicken soll.

Vielleicht sowas?

Code:
var ParamsArray: array of Pchar;

{...}

StartService(SCHandle, Length(ParamsArray)-1, ^ParamsArray);
Was mich auch verwirrt, ist dieser Parameter:
dwNumServiceArgs

Specifies the number of argument strings in the lpServiceArgVectors array. If lpServiceArgVectors is NULL, this parameter can be zero.


Soll diese Nummer jetzt die Anzahl der tatsächlichen Parameter ohne Argument null, das ja "by default" der Name des Services ist, oder einfach die Länge des Arrays sein?

Gruß,
Dani
Dani H.
  Mit Zitat antworten Zitat