wegsemmelten, hab ich den Fehler gefunden. Es war keine Struktur zu dem Pointer angegeben,
die allerdings erwartet wird.
Hab das dann mal kurzerhand mit folgendem korrigiert ...
Code: Alles auswählen
Procedure Service_Stop(Name$)
  
  Protected hSCManager, hServ, lResult
  Protected *p.SERVICE_STATUS = AllocateMemory(SizeOf(SERVICE_STATUS))
  
  hSCManager = OpenSCManager_(#Null, #Null, #GENERIC_READ	| #SC_MANAGER_CONNECT)
  If hSCManager
    hServ = OpenService_(hSCManager, Name$, #GENERIC_EXECUTE)
    If hServ
      If *p
        lResult = ControlService_(hServ, #SERVICE_CONTROL_STOP, *p)
        FreeMemory(*p)
      EndIf
      CloseServiceHandle_(hServ)
    EndIf
    CloseServiceHandle_(hSCManager)
  EndIf
  
  If hServ And lResult
    ProcedureReturn #True
  EndIf
  ProcedureReturn #False
EndProcedure
Code: Alles auswählen
Procedure Service_Pause(Name$)
  
  Protected hSCManager, hServ, lResult
  Protected *p.SERVICE_STATUS = AllocateMemory(SizeOf(SERVICE_STATUS))
  
  hSCManager = OpenSCManager_(#Null, #Null, #GENERIC_READ	| #SC_MANAGER_CONNECT)
  If hSCManager
    hServ = OpenService_(hSCManager, Name$, #GENERIC_EXECUTE)
    If hServ
      If *p
        lResult = ControlService_(hServ, #SERVICE_CONTROL_PAUSE, *p)
        FreeMemory(*p)
      EndIf
      CloseServiceHandle_(hServ)
    EndIf
    CloseServiceHandle_(hSCManager)
  EndIf
  If hServ And lResult
    ProcedureReturn #True
  EndIf
  ProcedureReturn #False
EndProcedure


