Ein Leerstring ist nil (nur nicht, wenn man das über PChar "castet", denn dieser Cast, leitet bei einem Leerstring auf eine Dummy-Konstante mit dem Inhalt #0#0 um)
Und dann eben andersrum, denn die Start- und Stopfunktionen sind ja mit String deklariert
Die Fehlerbehandlung ist das größere Problemchen.
Der Code mag funktionieren, aber wenn was nicht geht, dann erfährt man nicht das Warum.
@mm: Genau sowas war/ist das Problem, seit der
Unicode-Umstellung, im Jahre 2009, bzw. dein Code knallt vor D2009 im Compiler.
Weil Viele einfach
falsche Typen verwendeten.
Zitat:
OpenService(SMHandle,PWideChar
OpenService > PChar(String)
OpenServiceA > PAnsiChar(AnsiString)
OpenServiceW > PWideChar(WideString) oder PWideChar(UnicodeString)