-- $Source: /home/harp/1/proto/monoBANK/winnt/win32-winsvc.ads,v $ -- $Revision: 1.13 $ $Date: 96/09/04 08:17:53 $ $Author: mg $ -- See end of file for Copyright (c) information. with Win32.Winnt; package Win32.Winsvc is use type Interfaces.C.Char_Array; SERVICES_ACTIVE_DATABASEA : constant CHAR_Array := "ServicesActive" & Nul; -- winsvc.h:62 SERVICES_ACTIVE_DATABASEW : constant WCHAR_Array := "ServicesActive" & Wide_Nul; -- winsvc.h:59 SERVICES_ACTIVE_DATABASE : CHAR_Array renames SERVICES_ACTIVE_DATABASEA; -- winsvc.h:82 SERVICES_FAILED_DATABASEA : constant CHAR_Array := "ServicesFailed" & Nul; -- winsvc.h:63 SERVICES_FAILED_DATABASEW : constant WCHAR_Array := "ServicesFailed" & Wide_Nul; -- winsvc.h:60 SERVICES_FAILED_DATABASE : CHAR_Array renames SERVICES_FAILED_DATABASEA; -- winsvc.h:83 SC_GROUP_IDENTIFIERA : constant Character := '+'; -- winsvc.h:71 SC_GROUP_IDENTIFIERW : constant Wide_Character := '+'; -- winsvc.h:70 SC_GROUP_IDENTIFIER : Character renames SC_GROUP_IDENTIFIERA; -- winsvc.h:85 SERVICE_NO_CHANGE : constant := 16#ffffffff#;-- winsvc.h:92 SERVICE_ACTIVE : constant := 16#1#; -- winsvc.h:97 SERVICE_INACTIVE : constant := 16#2#; -- winsvc.h:98 SERVICE_STATE_ALL : constant := 16#3#; -- winsvc.h:99 SERVICE_CONTROL_STOP : constant := 16#1#; -- winsvc.h:105 SERVICE_CONTROL_PAUSE : constant := 16#2#; -- winsvc.h:106 SERVICE_CONTROL_CONTINUE : constant := 16#3#; -- winsvc.h:107 SERVICE_CONTROL_INTERROGATE : constant := 16#4#; -- winsvc.h:108 SERVICE_CONTROL_SHUTDOWN : constant := 16#5#; -- winsvc.h:109 SERVICE_STOPPED : constant := 16#1#; -- winsvc.h:114 SERVICE_START_PENDING : constant := 16#2#; -- winsvc.h:115 SERVICE_STOP_PENDING : constant := 16#3#; -- winsvc.h:116 SERVICE_RUNNING : constant := 16#4#; -- winsvc.h:117 SERVICE_CONTINUE_PENDING : constant := 16#5#; -- winsvc.h:118 SERVICE_PAUSE_PENDING : constant := 16#6#; -- winsvc.h:119 SERVICE_PAUSED : constant := 16#7#; -- winsvc.h:120 SERVICE_ACCEPT_STOP : constant := 16#1#; -- winsvc.h:125 SERVICE_ACCEPT_PAUSE_CONTINUE: constant := 16#2#; -- winsvc.h:126 SERVICE_ACCEPT_SHUTDOWN : constant := 16#4#; -- winsvc.h:127 SC_MANAGER_CONNECT : constant := 16#1#; -- winsvc.h:132 SC_MANAGER_CREATE_SERVICE : constant := 16#2#; -- winsvc.h:133 SC_MANAGER_ENUMERATE_SERVICE : constant := 16#4#; -- winsvc.h:134 SC_MANAGER_LOCK : constant := 16#8#; -- winsvc.h:135 SC_MANAGER_QUERY_LOCK_STATUS : constant := 16#10#; -- winsvc.h:136 SC_MANAGER_MODIFY_BOOT_CONFIG: constant := 16#20#; -- winsvc.h:137 SC_MANAGER_ALL_ACCESS : constant := 16#f003f#; -- winsvc.h:139 SERVICE_QUERY_CONFIG : constant := 16#1#; -- winsvc.h:152 SERVICE_CHANGE_CONFIG : constant := 16#2#; -- winsvc.h:153 SERVICE_QUERY_STATUS : constant := 16#4#; -- winsvc.h:154 SERVICE_ENUMERATE_DEPENDENTS : constant := 16#8#; -- winsvc.h:155 SERVICE_START : constant := 16#10#; -- winsvc.h:156 SERVICE_STOP : constant := 16#20#; -- winsvc.h:157 SERVICE_PAUSE_CONTINUE : constant := 16#40#; -- winsvc.h:158 SERVICE_INTERROGATE : constant := 16#80#; -- winsvc.h:159 SERVICE_USER_DEFINED_CONTROL : constant := 16#100#; -- winsvc.h:160 SERVICE_ALL_ACCESS : constant := 16#f01ff#; -- winsvc.h:162 type SERVICE_STATUS_HANDLE is new Win32.DWORD; -- winsvc.h:181 subtype SC_HANDLE is Win32.Winnt.HANDLE; -- winsvc.h:178 subtype LPSC_HANDLE is Win32.Winnt.PHANDLE; -- winsvc.h:179 subtype SC_LOCK is Win32.LPVOID; -- winsvc.h:226 type SERVICE_STATUS; -- winsvc.h:187 type ENUM_SERVICE_STATUSA; -- winsvc.h:203 type ENUM_SERVICE_STATUSW; -- winsvc.h:208 type QUERY_SERVICE_LOCK_STATUSA; -- winsvc.h:228 type QUERY_SERVICE_LOCK_STATUSW; -- winsvc.h:233 type QUERY_SERVICE_CONFIGA; -- winsvc.h:252 type QUERY_SERVICE_CONFIGW; -- winsvc.h:263 type SERVICE_TABLE_ENTRYA; -- winsvc.h:309 type SERVICE_TABLE_ENTRYW; -- winsvc.h:313 type LPSERVICE_STATUS is access all SERVICE_STATUS; -- winsvc.h:195 type LPENUM_SERVICE_STATUSA is access all ENUM_SERVICE_STATUSA; -- winsvc.h:207 subtype LPENUM_SERVICE_STATUS is LPENUM_SERVICE_STATUSA;-- winsvc.h:218 type LPENUM_SERVICE_STATUSW is access all ENUM_SERVICE_STATUSW; -- winsvc.h:212 type LPQUERY_SERVICE_LOCK_STATUSA is access all QUERY_SERVICE_LOCK_STATUSA; -- winsvc.h:232 type LPQUERY_SERVICE_LOCK_STATUSW is access all QUERY_SERVICE_LOCK_STATUSW; -- winsvc.h:237 subtype LPQUERY_SERVICE_LOCK_STATUS is LPQUERY_SERVICE_LOCK_STATUSA; -- winsvc.h:243 type LPQUERY_SERVICE_CONFIGA is access all QUERY_SERVICE_CONFIGA; -- winsvc.h:262 subtype LPQUERY_SERVICE_CONFIG is LPQUERY_SERVICE_CONFIGA; -- winsvc.h:279 type LPQUERY_SERVICE_CONFIGW is access all QUERY_SERVICE_CONFIGW; -- winsvc.h:273 type LPSERVICE_TABLE_ENTRYA is access all SERVICE_TABLE_ENTRYA; -- winsvc.h:312 subtype LPSERVICE_TABLE_ENTRY is LPSERVICE_TABLE_ENTRYA;-- winsvc.h:322 type LPSERVICE_TABLE_ENTRYW is access all SERVICE_TABLE_ENTRYW; -- winsvc.h:316 type SERVICE_STATUS is -- winsvc.h:187 record dwServiceType : Win32.DWORD; -- winsvc.h:188 dwCurrentState : Win32.DWORD; -- winsvc.h:189 dwControlsAccepted : Win32.DWORD; -- winsvc.h:190 dwWin32ExitCode : Win32.DWORD; -- winsvc.h:191 dwServiceSpecificExitCode: Win32.DWORD; -- winsvc.h:192 dwCheckPoint : Win32.DWORD; -- winsvc.h:193 dwWaitHint : Win32.DWORD; -- winsvc.h:194 end record; type ENUM_SERVICE_STATUSA is -- winsvc.h:203 record lpServiceName: Win32.LPSTR; -- winsvc.h:204 lpDisplayName: Win32.LPSTR; -- winsvc.h:205 ServiceStatus: SERVICE_STATUS; -- winsvc.h:206 end record; type ENUM_SERVICE_STATUSW is -- winsvc.h:208 record lpServiceName: Win32.LPWSTR; -- winsvc.h:209 lpDisplayName: Win32.LPWSTR; -- winsvc.h:210 ServiceStatus: SERVICE_STATUS; -- winsvc.h:211 end record; subtype ENUM_SERVICE_STATUS is ENUM_SERVICE_STATUSA; -- winsvc.h:217 type QUERY_SERVICE_LOCK_STATUSA is -- winsvc.h:228 record fIsLocked : Win32.DWORD; -- winsvc.h:229 lpLockOwner : Win32.LPSTR; -- winsvc.h:230 dwLockDuration: Win32.DWORD; -- winsvc.h:231 end record; type QUERY_SERVICE_LOCK_STATUSW is -- winsvc.h:233 record fIsLocked : Win32.DWORD; -- winsvc.h:234 lpLockOwner : Win32.LPWSTR; -- winsvc.h:235 dwLockDuration: Win32.DWORD; -- winsvc.h:236 end record; subtype QUERY_SERVICE_LOCK_STATUS is QUERY_SERVICE_LOCK_STATUSA; -- winsvc.h:242 type QUERY_SERVICE_CONFIGA is -- winsvc.h:252 record dwServiceType : Win32.DWORD; -- winsvc.h:253 dwStartType : Win32.DWORD; -- winsvc.h:254 dwErrorControl : Win32.DWORD; -- winsvc.h:255 lpBinaryPathName : Win32.LPSTR; -- winsvc.h:256 lpLoadOrderGroup : Win32.LPSTR; -- winsvc.h:257 dwTagId : Win32.DWORD; -- winsvc.h:258 lpDependencies : Win32.LPSTR; -- winsvc.h:259 lpServiceStartName: Win32.LPSTR; -- winsvc.h:260 lpDisplayName : Win32.LPSTR; -- winsvc.h:261 end record; type QUERY_SERVICE_CONFIGW is -- winsvc.h:263 record dwServiceType : Win32.DWORD; -- winsvc.h:264 dwStartType : Win32.DWORD; -- winsvc.h:265 dwErrorControl : Win32.DWORD; -- winsvc.h:266 lpBinaryPathName : Win32.LPWSTR; -- winsvc.h:267 lpLoadOrderGroup : Win32.LPWSTR; -- winsvc.h:268 dwTagId : Win32.DWORD; -- winsvc.h:269 lpDependencies : Win32.LPWSTR; -- winsvc.h:270 lpServiceStartName: Win32.LPWSTR; -- winsvc.h:271 lpDisplayName : Win32.LPWSTR; -- winsvc.h:272 end record; subtype QUERY_SERVICE_CONFIG is QUERY_SERVICE_CONFIGA; -- winsvc.h:278 type LPSERVICE_MAIN_FUNCTIONW is access procedure ( dwNumServicesArgs : Win32.DWORD; lpServiceArgVectors: access Win32.PWSTR); -- winsvc.h:288 pragma Convention(Stdcall, LPSERVICE_MAIN_FUNCTIONW); type LPSERVICE_MAIN_FUNCTIONA is access procedure ( dwNumServicesArgs : Win32.DWORD; lpServiceArgVectors: access Win32.PSTR); -- winsvc.h:293 pragma Convention(Stdcall, LPSERVICE_MAIN_FUNCTIONA); subtype LPSERVICE_MAIN_FUNCTION is LPSERVICE_MAIN_FUNCTIONA; -- winsvc.h:301 type SERVICE_TABLE_ENTRYA is -- winsvc.h:309 record lpServiceName: Win32.LPSTR; -- winsvc.h:310 lpServiceProc: LPSERVICE_MAIN_FUNCTIONA; -- winsvc.h:311 end record; type SERVICE_TABLE_ENTRYW is -- winsvc.h:313 record lpServiceName: Win32.LPWSTR; -- winsvc.h:314 lpServiceProc: LPSERVICE_MAIN_FUNCTIONW; -- winsvc.h:315 end record; subtype SERVICE_TABLE_ENTRY is SERVICE_TABLE_ENTRYA; -- winsvc.h:321 type LPHANDLER_FUNCTION is access procedure (dwControl: Win32.DWORD); pragma Convention(Stdcall, LPHANDLER_FUNCTION); -- winsvc.h:329 function ChangeServiceConfigA(hService : SC_HANDLE; dwServiceType : Win32.DWORD; dwStartType : Win32.DWORD; dwErrorControl : Win32.DWORD; lpBinaryPathName : Win32.LPCSTR; lpLoadOrderGroup : Win32.LPCSTR; lpdwTagId : Win32.LPDWORD; lpDependencies : Win32.LPCSTR; lpServiceStartName: Win32.LPCSTR; lpPassword : Win32.LPCSTR; lpDisplayName : Win32.LPCSTR) return Win32.BOOL; -- winsvc.h:342 function ChangeServiceConfig( hService : SC_HANDLE; dwServiceType : Win32.DWORD; dwStartType : Win32.DWORD; dwErrorControl : Win32.DWORD; lpBinaryPathName : Win32.LPCSTR; lpLoadOrderGroup : Win32.LPCSTR; lpdwTagId : Win32.LPDWORD; lpDependencies : Win32.LPCSTR; lpServiceStartName: Win32.LPCSTR; lpPassword : Win32.LPCSTR; lpDisplayName : Win32.LPCSTR) return Win32.BOOL renames ChangeServiceConfigA; -- winsvc.h:342 function ChangeServiceConfigW(hService : SC_HANDLE; dwServiceType : Win32.DWORD; dwStartType : Win32.DWORD; dwErrorControl : Win32.DWORD; lpBinaryPathName : Win32.LPCWSTR; lpLoadOrderGroup : Win32.LPCWSTR; lpdwTagId : Win32.LPDWORD; lpDependencies : Win32.LPCWSTR; lpServiceStartName: Win32.LPCWSTR; lpPassword : Win32.LPCWSTR; lpDisplayName : Win32.LPCWSTR) return Win32.BOOL; -- winsvc.h:358 function CloseServiceHandle(hSCObject: SC_HANDLE) return Win32.BOOL; -- winsvc.h:380 function ControlService(hService : SC_HANDLE; dwControl : Win32.DWORD; lpServiceStatus: access SERVICE_STATUS) return Win32.BOOL; -- winsvc.h:387 function CreateServiceA(hSCManager : SC_HANDLE; lpServiceName : Win32.LPCSTR; lpDisplayName : Win32.LPCSTR; dwDesiredAccess : Win32.DWORD; dwServiceType : Win32.DWORD; dwStartType : Win32.DWORD; dwErrorControl : Win32.DWORD; lpBinaryPathName : Win32.LPCSTR; lpLoadOrderGroup : Win32.LPCSTR; lpdwTagId : Win32.LPDWORD; lpDependencies : Win32.LPCSTR; lpServiceStartName: Win32.LPCSTR; lpPassword : Win32.LPCSTR) return SC_HANDLE; -- winsvc.h:396 function CreateService(hSCManager : SC_HANDLE; lpServiceName : Win32.LPCSTR; lpDisplayName : Win32.LPCSTR; dwDesiredAccess : Win32.DWORD; dwServiceType : Win32.DWORD; dwStartType : Win32.DWORD; dwErrorControl : Win32.DWORD; lpBinaryPathName : Win32.LPCSTR; lpLoadOrderGroup : Win32.LPCSTR; lpdwTagId : Win32.LPDWORD; lpDependencies : Win32.LPCSTR; lpServiceStartName: Win32.LPCSTR; lpPassword : Win32.LPCSTR) return SC_HANDLE renames CreateServiceA; -- winsvc.h:396 function CreateServiceW(hSCManager : SC_HANDLE; lpServiceName : Win32.LPCWSTR; lpDisplayName : Win32.LPCWSTR; dwDesiredAccess : Win32.DWORD; dwServiceType : Win32.DWORD; dwStartType : Win32.DWORD; dwErrorControl : Win32.DWORD; lpBinaryPathName : Win32.LPCWSTR; lpLoadOrderGroup : Win32.LPCWSTR; lpdwTagId : Win32.LPDWORD; lpDependencies : Win32.LPCWSTR; lpServiceStartName: Win32.LPCWSTR; lpPassword : Win32.LPCWSTR) return SC_HANDLE; -- winsvc.h:414 function DeleteService(hService: SC_HANDLE) return Win32.BOOL; -- winsvc.h:438 function EnumDependentServicesA( hService : SC_HANDLE; dwServiceState : Win32.DWORD; lpServices : access ENUM_SERVICE_STATUSA; cbBufSize : Win32.DWORD; pcbBytesNeeded : Win32.LPDWORD; lpServicesReturned: Win32.LPDWORD) return Win32.BOOL; -- winsvc.h:445 function EnumDependentServices( hService : SC_HANDLE; dwServiceState : Win32.DWORD; lpServices : access ENUM_SERVICE_STATUSA; cbBufSize : Win32.DWORD; pcbBytesNeeded : Win32.LPDWORD; lpServicesReturned: Win32.LPDWORD) return Win32.BOOL renames EnumDependentServicesA; -- winsvc.h:445 function EnumDependentServicesW( hService : SC_HANDLE; dwServiceState : Win32.DWORD; lpServices : access ENUM_SERVICE_STATUSW; cbBufSize : Win32.DWORD; pcbBytesNeeded : Win32.LPDWORD; lpServicesReturned: Win32.LPDWORD) return Win32.BOOL; -- winsvc.h:456 function EnumServicesStatusA( hSCManager : SC_HANDLE; dwServiceType : Win32.DWORD; dwServiceState : Win32.DWORD; lpServices : access ENUM_SERVICE_STATUSA; cbBufSize : Win32.DWORD; pcbBytesNeeded : Win32.LPDWORD; lpServicesReturned: Win32.LPDWORD; lpResumeHandle : Win32.LPDWORD) return Win32.BOOL; -- winsvc.h:473 function EnumServicesStatus( hSCManager : SC_HANDLE; dwServiceType : Win32.DWORD; dwServiceState : Win32.DWORD; lpServices : access ENUM_SERVICE_STATUSA; cbBufSize : Win32.DWORD; pcbBytesNeeded : Win32.LPDWORD; lpServicesReturned: Win32.LPDWORD; lpResumeHandle : Win32.LPDWORD) return Win32.BOOL renames EnumServicesStatusA; -- winsvc.h:473 function EnumServicesStatusW( hSCManager : SC_HANDLE; dwServiceType : Win32.DWORD; dwServiceState : Win32.DWORD; lpServices : access ENUM_SERVICE_STATUSW; cbBufSize : Win32.DWORD; pcbBytesNeeded : Win32.LPDWORD; lpServicesReturned: Win32.LPDWORD; lpResumeHandle : Win32.LPDWORD) return Win32.BOOL; -- winsvc.h:486 function GetServiceKeyNameA(hSCManager : SC_HANDLE; lpDisplayName: Win32.LPCSTR; lpServiceName: Win32.LPSTR; lpcchBuffer : Win32.LPDWORD) return Win32.BOOL; -- winsvc.h:505 function GetServiceKeyName(hSCManager : SC_HANDLE; lpDisplayName: Win32.LPCSTR; lpServiceName: Win32.LPSTR; lpcchBuffer : Win32.LPDWORD) return Win32.BOOL renames GetServiceKeyNameA; -- winsvc.h:505 function GetServiceKeyNameW(hSCManager : SC_HANDLE; lpDisplayName: Win32.LPCWSTR; lpServiceName: Win32.LPWSTR; lpcchBuffer : Win32.LPDWORD) return Win32.BOOL; -- winsvc.h:514 function GetServiceDisplayNameA(hSCManager : SC_HANDLE; lpServiceName: Win32.LPCSTR; lpDisplayName: Win32.LPSTR; lpcchBuffer : Win32.LPDWORD) return Win32.BOOL; -- winsvc.h:529 function GetServiceDisplayName( hSCManager : SC_HANDLE; lpServiceName: Win32.LPCSTR; lpDisplayName: Win32.LPSTR; lpcchBuffer : Win32.LPDWORD) return Win32.BOOL renames GetServiceDisplayNameA; -- winsvc.h:529 function GetServiceDisplayNameW(hSCManager : SC_HANDLE; lpServiceName: Win32.LPCWSTR; lpDisplayName: Win32.LPWSTR; lpcchBuffer : Win32.LPDWORD) return Win32.BOOL; -- winsvc.h:538 function LockServiceDatabase(hSCManager: SC_HANDLE) return SC_LOCK; -- winsvc.h:553 function NotifyBootConfigStatus(BootAcceptable: Win32.BOOL) return Win32.BOOL; -- winsvc.h:560 function OpenSCManagerA(lpMachineName : Win32.LPCSTR; lpDatabaseName : Win32.LPCSTR; dwDesiredAccess: Win32.DWORD) return SC_HANDLE; -- winsvc.h:567 function OpenSCManager(lpMachineName : Win32.LPCSTR; lpDatabaseName : Win32.LPCSTR; dwDesiredAccess: Win32.DWORD) return SC_HANDLE renames OpenSCManagerA; -- winsvc.h:567 function OpenSCManagerW(lpMachineName : Win32.LPCWSTR; lpDatabaseName : Win32.LPCWSTR; dwDesiredAccess: Win32.DWORD) return SC_HANDLE; -- winsvc.h:575 function OpenServiceA(hSCManager : SC_HANDLE; lpServiceName : Win32.LPCSTR; dwDesiredAccess: Win32.DWORD) return SC_HANDLE;-- winsvc.h:589 function OpenService(hSCManager : SC_HANDLE; lpServiceName : Win32.LPCSTR; dwDesiredAccess: Win32.DWORD) return SC_HANDLE renames OpenServiceA; -- winsvc.h:589 function OpenServiceW(hSCManager : SC_HANDLE; lpServiceName : Win32.LPCWSTR; dwDesiredAccess: Win32.DWORD) return SC_HANDLE;-- winsvc.h:597 function QueryServiceConfigA(hService : SC_HANDLE; lpServiceConfig: access QUERY_SERVICE_CONFIGA; cbBufSize : Win32.DWORD; pcbBytesNeeded : Win32.LPDWORD) return Win32.BOOL; -- winsvc.h:611 function QueryServiceConfig(hService : SC_HANDLE; lpServiceConfig: access QUERY_SERVICE_CONFIGA; cbBufSize : Win32.DWORD; pcbBytesNeeded : Win32.LPDWORD) return Win32.BOOL renames QueryServiceConfigA; -- winsvc.h:611 function QueryServiceConfigW(hService : SC_HANDLE; lpServiceConfig: access QUERY_SERVICE_CONFIGW; cbBufSize : Win32.DWORD; pcbBytesNeeded : Win32.LPDWORD) return Win32.BOOL; -- winsvc.h:620 function QueryServiceLockStatusA( hSCManager : SC_HANDLE; lpLockStatus : access QUERY_SERVICE_LOCK_STATUSA; cbBufSize : Win32.DWORD; pcbBytesNeeded: Win32.LPDWORD) return Win32.BOOL; -- winsvc.h:635 function QueryServiceLockStatus( hSCManager : SC_HANDLE; lpLockStatus : access QUERY_SERVICE_LOCK_STATUSA; cbBufSize : Win32.DWORD; pcbBytesNeeded: Win32.LPDWORD) return Win32.BOOL renames QueryServiceLockStatusA; -- winsvc.h:635 function QueryServiceLockStatusW( hSCManager : SC_HANDLE; lpLockStatus : access QUERY_SERVICE_LOCK_STATUSW; cbBufSize : Win32.DWORD; pcbBytesNeeded: Win32.LPDWORD) return Win32.BOOL; -- winsvc.h:644 function QueryServiceObjectSecurity( hService : SC_HANDLE; dwSecurityInformation: Win32.Winnt.SECURITY_INFORMATION; lpSecurityDescriptor : Win32.Winnt.PSECURITY_DESCRIPTOR; cbBufSize : Win32.DWORD; pcbBytesNeeded : Win32.LPDWORD) return Win32.BOOL; -- winsvc.h:659 function QueryServiceStatus(hService : SC_HANDLE; lpServiceStatus: access SERVICE_STATUS) return Win32.BOOL; -- winsvc.h:670 function RegisterServiceCtrlHandlerA( lpServiceName: Win32.LPCSTR; lpHandlerProc: LPHANDLER_FUNCTION) return SERVICE_STATUS_HANDLE; -- winsvc.h:678 function RegisterServiceCtrlHandler( lpServiceName: Win32.LPCSTR; lpHandlerProc: LPHANDLER_FUNCTION) return SERVICE_STATUS_HANDLE renames RegisterServiceCtrlHandlerA; -- winsvc.h:678 function RegisterServiceCtrlHandlerW( lpServiceName: Win32.LPCWSTR; lpHandlerProc: LPHANDLER_FUNCTION) return SERVICE_STATUS_HANDLE; -- winsvc.h:685 function SetServiceObjectSecurity( hService : SC_HANDLE; dwSecurityInformation: Win32.Winnt.SECURITY_INFORMATION; lpSecurityDescriptor : Win32.Winnt.PSECURITY_DESCRIPTOR) return Win32.BOOL; -- winsvc.h:698 function SetServiceStatus(hServiceStatus : SERVICE_STATUS_HANDLE; lpServiceStatus: access SERVICE_STATUS) return Win32.BOOL; -- winsvc.h:707 function StartServiceCtrlDispatcherA( lpServiceStartTable: access SERVICE_TABLE_ENTRYA) return Win32.BOOL; -- winsvc.h:715 function StartServiceCtrlDispatcher( lpServiceStartTable: access SERVICE_TABLE_ENTRYA) return Win32.BOOL renames StartServiceCtrlDispatcherA; -- winsvc.h:715 function StartServiceCtrlDispatcherW( lpServiceStartTable: access SERVICE_TABLE_ENTRYW) return Win32.BOOL; -- winsvc.h:721 function StartServiceA(hService : SC_HANDLE; dwNumServiceArgs : Win32.DWORD; lpServiceArgVectors: access Win32.LPCSTR) return Win32.BOOL; -- winsvc.h:734 function StartService(hService : SC_HANDLE; dwNumServiceArgs : Win32.DWORD; lpServiceArgVectors: access Win32.LPCSTR) return Win32.BOOL renames StartServiceA; -- winsvc.h:734 function StartServiceW(hService : SC_HANDLE; dwNumServiceArgs : Win32.DWORD; lpServiceArgVectors: access Win32.LPCWSTR) return Win32.BOOL; -- winsvc.h:742 function UnlockServiceDatabase(ScLock: SC_LOCK) return Win32.BOOL; -- winsvc.h:756 private pragma Convention(C, SERVICE_STATUS); -- winsvc.h:187 pragma Convention(C, ENUM_SERVICE_STATUSA); -- winsvc.h:203 pragma Convention(C, ENUM_SERVICE_STATUSW); -- winsvc.h:208 pragma Convention(C, QUERY_SERVICE_LOCK_STATUSA); -- winsvc.h:228 pragma Convention(C, QUERY_SERVICE_LOCK_STATUSW); -- winsvc.h:233 pragma Convention(C, QUERY_SERVICE_CONFIGA); -- winsvc.h:252 pragma Convention(C, QUERY_SERVICE_CONFIGW); -- winsvc.h:263 pragma Convention(C, SERVICE_TABLE_ENTRYA); -- winsvc.h:309 pragma Convention(C, SERVICE_TABLE_ENTRYW); -- winsvc.h:313 pragma Import(Stdcall, ChangeServiceConfigA, "ChangeServiceConfigA"); -- winsvc.h:342 pragma Import(Stdcall, ChangeServiceConfigW, "ChangeServiceConfigW"); -- winsvc.h:358 pragma Import(Stdcall, CloseServiceHandle, "CloseServiceHandle"); -- winsvc.h:380 pragma Import(Stdcall, ControlService, "ControlService"); -- winsvc.h:387 pragma Import(Stdcall, CreateServiceA, "CreateServiceA"); -- winsvc.h:396 pragma Import(Stdcall, CreateServiceW, "CreateServiceW"); -- winsvc.h:414 pragma Import(Stdcall, DeleteService, "DeleteService"); -- winsvc.h:438 pragma Import(Stdcall, EnumDependentServicesA, "EnumDependentServicesA"); -- winsvc.h:445 pragma Import(Stdcall, EnumDependentServicesW, "EnumDependentServicesW"); -- winsvc.h:456 pragma Import(Stdcall, EnumServicesStatusA, "EnumServicesStatusA"); -- winsvc.h:473 pragma Import(Stdcall, EnumServicesStatusW, "EnumServicesStatusW"); -- winsvc.h:486 pragma Import(Stdcall, GetServiceKeyNameA, "GetServiceKeyNameA"); -- winsvc.h:505 pragma Import(Stdcall, GetServiceKeyNameW, "GetServiceKeyNameW"); -- winsvc.h:514 pragma Import(Stdcall, GetServiceDisplayNameA, "GetServiceDisplayNameA"); -- winsvc.h:529 pragma Import(Stdcall, GetServiceDisplayNameW, "GetServiceDisplayNameW"); -- winsvc.h:538 pragma Import(Stdcall, LockServiceDatabase, "LockServiceDatabase"); -- winsvc.h:553 pragma Import(Stdcall, NotifyBootConfigStatus, "NotifyBootConfigStatus"); -- winsvc.h:560 pragma Import(Stdcall, OpenSCManagerA, "OpenSCManagerA"); -- winsvc.h:567 pragma Import(Stdcall, OpenSCManagerW, "OpenSCManagerW"); -- winsvc.h:575 pragma Import(Stdcall, OpenServiceA, "OpenServiceA"); -- winsvc.h:589 pragma Import(Stdcall, OpenServiceW, "OpenServiceW"); -- winsvc.h:597 pragma Import(Stdcall, QueryServiceConfigA, "QueryServiceConfigA"); -- winsvc.h:611 pragma Import(Stdcall, QueryServiceConfigW, "QueryServiceConfigW"); -- winsvc.h:620 pragma Import(Stdcall, QueryServiceLockStatusA, "QueryServiceLockStatusA"); -- winsvc.h:635 pragma Import(Stdcall, QueryServiceLockStatusW, "QueryServiceLockStatusW"); -- winsvc.h:644 pragma Import(Stdcall, QueryServiceObjectSecurity, "QueryServiceObjectSecurity"); -- winsvc.h:659 pragma Import(Stdcall, QueryServiceStatus, "QueryServiceStatus"); -- winsvc.h:670 pragma Import(Stdcall, RegisterServiceCtrlHandlerA, "RegisterServiceCtrlHandlerA"); -- winsvc.h:678 pragma Import(Stdcall, RegisterServiceCtrlHandlerW, "RegisterServiceCtrlHandlerW"); -- winsvc.h:685 pragma Import(Stdcall, SetServiceObjectSecurity, "SetServiceObjectSecurity"); -- winsvc.h:698 pragma Import(Stdcall, SetServiceStatus, "SetServiceStatus"); -- winsvc.h:707 pragma Import(Stdcall, StartServiceCtrlDispatcherA, "StartServiceCtrlDispatcherA"); -- winsvc.h:715 pragma Import(Stdcall, StartServiceCtrlDispatcherW, "StartServiceCtrlDispatcherW"); -- winsvc.h:721 pragma Import(Stdcall, StartServiceA, "StartServiceA"); -- winsvc.h:734 pragma Import(Stdcall, StartServiceW, "StartServiceW"); -- winsvc.h:742 pragma Import(Stdcall, UnlockServiceDatabase, "UnlockServiceDatabase"); -- winsvc.h:756 ------------------------------------------------------------------------------- -- -- THIS FILE AND ANY ASSOCIATED DOCUMENTATION IS PROVIDED WITHOUT CHARGE -- "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING -- BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR -- FITNESS FOR A PARTICULAR PURPOSE. The user assumes the entire risk as to -- the accuracy and the use of this file. This file may be used, copied, -- modified and distributed only by licensees of Microsoft Corporation's -- WIN32 Software Development Kit in accordance with the terms of the -- licensee's End-User License Agreement for Microsoft Software for the -- WIN32 Development Kit. -- -- Copyright (c) Intermetrics, Inc. 1995 -- Portions (c) 1985-1994 Microsoft Corporation with permission. -- Microsoft is a registered trademark and Windows and Windows NT are -- trademarks of Microsoft Corporation. -- ------------------------------------------------------------------------------- end Win32.Winsvc;