Example #1
0
    def OpenServiceA(self, handle, name):
        openService = SVCCTLROpenServiceA()
        openService['SCManager'] = handle
        openService['ServiceName'] = ndrutils.NDRStringA()
        openService['ServiceName']['Data'] = (name + '\x00')
        openService['DesiredAccess'] = SERVICE_ALL_ACCESS

        ans = self.doRequest(openService, checkReturn=1)
        return SVCCTLROpenServiceResponse(ans)
Example #2
0
    def OpenServiceA(self, handle, name):
        """
        opens a service

        :param HANDLE handle: a valid HANDLE to the SCM database (see OpenSCManagerW)
        :param STRING name: name of the service

        :return: returns an SVCCTLROpenServiceResponse structure with the service handle. Call dump() method to see its contents. On error it raises an exception

        """
        openService = SVCCTLROpenServiceA()
        openService['SCManager'] = handle
        openService['ServiceName'] = ndrutils.NDRStringA()
        openService['ServiceName']['Data'] = (name + '\x00')
        openService['DesiredAccess'] = SERVICE_ALL_ACCESS

        ans = self.doRequest(openService, checkReturn=1)
        return SVCCTLROpenServiceResponse(ans)