home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 1_2002.ISO / Data / Zips / CODE_UPLOAD5575572000.psc / ADVAPI32.BAS next >
Encoding:
BASIC Source File  |  1997-08-24  |  26.8 KB  |  879 lines

  1. Attribute VB_Name = "basAdvapi32"
  2. ' Module Name               basAdvapi32
  3. ' Module Description        Module which contains ALL Declarations
  4. '                           for API calls in the Advapi32 Library
  5. '
  6. Option Explicit
  7.  
  8. Declare Function AbortSystemShutdown _
  9.     Lib "advapi32.dll" _
  10.     Alias "AbortSystemShutdownA" ( _
  11.         ByVal lpMachineName As String) _
  12.     As Long
  13.  
  14. Declare Function AccessCheck _
  15.     Lib "advapi32.dll" ( _
  16.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  17.         ByVal ClientToken As Long, ByVal DesiredAccess As Long, _
  18.         GenericMapping As GENERIC_MAPPING, _
  19.         PrivilegeSet As PRIVILEGE_SET, PrivilegeSetLength As Long, _
  20.         GrantedAccess As Long, ByVal Status As Long) _
  21.     As Long
  22.  
  23. Declare Function AccessCheckAndAuditAlarm _
  24.     Lib "advapi32.dll" _
  25.     Alias "AccessCheckAndAuditAlarmA" ( _
  26.         ByVal SubsystemName As String, HandleId As Any, ByVal ObjectTypeName As String, _
  27.         ByVal ObjectName As String, SecurityDescriptor As SECURITY_DESCRIPTOR, _
  28.         ByVal DesiredAccess As Long, GenericMapping As GENERIC_MAPPING, _
  29.         ByVal ObjectCreation As Long, GrantedAccess As Long, ByVal AccessStatus As Long, ByVal pfGenerateOnClose As Long) _
  30.     As Long
  31.  
  32. Declare Function AddAccessAllowedAce _
  33.     Lib "advapi32.dll" ( _
  34.         pAcl As ACL, _
  35.         ByVal dwAceRevision As Long, _
  36.         ByVal AccessMask As Long, _
  37.         pSid As Any) _
  38.     As Long
  39.  
  40. Declare Function AddAccessDeniedAce _
  41.     Lib "advapi32.dll" ( _
  42.         pAcl As ACL, _
  43.         ByVal dwAceRevision As Long, _
  44.         ByVal AccessMask As Long, _
  45.         pSid As Any) _
  46.     As Long
  47.  
  48. Declare Function AddAce _
  49.     Lib "advapi32.dll" ( _
  50.         pAcl As ACL, _
  51.         ByVal dwAceRevision As Long, _
  52.         ByVal dwStartingAceIndex As Long, _
  53.         pAceList As Any, _
  54.         ByVal nAceListLength As Long) _
  55.     As Long
  56.  
  57. Declare Function AddAuditAccessAce _
  58.     Lib "advapi32.dll" ( _
  59.         pAcl As ACL, _
  60.         ByVal dwAceRevision As Long, ByVal dwAccessMask As Long, _
  61.         pSid As Any, _
  62.         ByVal bAuditSuccess As Long, ByVal bAuditFailure As Long) _
  63.     As Long
  64.  
  65. Declare Function AdjustTokenGroups _
  66.     Lib "advapi32.dll" ( _
  67.         ByVal TokenHandle As Long, ByVal ResetToDefault As Long, _
  68.         NewState As TOKEN_GROUPS, ByVal BufferLength As Long, _
  69.         PreviousState As TOKEN_GROUPS, ReturnLength As Long) _
  70.     As Long
  71.  
  72. Declare Function AdjustTokenPrivileges _
  73.     Lib "advapi32.dll" ( _
  74.         ByVal TokenHandle As Long, ByVal DisableAllPrivileges As Long, _
  75.         NewState As TOKEN_PRIVILEGES, ByVal BufferLength As Long, _
  76.         PreviousState As TOKEN_PRIVILEGES, ReturnLength As Long) _
  77.     As Long
  78.  
  79. Declare Function AllocateAndInitializeSid _
  80.     Lib "advapi32.dll" ( _
  81.         pIdentifierAuthority As SID_IDENTIFIER_AUTHORITY, ByVal nSubAuthorityCount As Byte, _
  82.         ByVal nSubAuthority0 As Long, ByVal nSubAuthority1 As Long, _
  83.         ByVal nSubAuthority2 As Long, ByVal nSubAuthority3 As Long, _
  84.         ByVal nSubAuthority4 As Long, ByVal nSubAuthority5 As Long, _
  85.         ByVal nSubAuthority6 As Long, ByVal nSubAuthority7 As Long, lpPSid As Long) _
  86.     As Long
  87.  
  88. Declare Function AllocateLocallyUniqueId _
  89.     Lib "advapi32.dll" ( _
  90.         Luid As LARGE_INTEGER) _
  91.     As Long
  92.  
  93. Declare Function AreAllAccessesGranted _
  94.     Lib "advapi32.dll" ( _
  95.         ByVal GrantedAccess As Long, _
  96.         ByVal DesiredAccess As Long) _
  97.     As Long
  98.  
  99. Declare Function AreAnyAccessesGranted _
  100.     Lib "advapi32.dll" ( _
  101.         ByVal GrantedAccess As Long, _
  102.         ByVal DesiredAccess As Long) _
  103.     As Long
  104.  
  105. Declare Function BackupEventLog _
  106.     Lib "advapi32.dll" _
  107.     Alias "BackupEventLogA" ( _
  108.         ByVal hEventLog As Long, _
  109.         ByVal lpBackupFileName As String) _
  110.     As Long
  111.  
  112. Declare Function ClearEventLog _
  113.     Lib "advapi32.dll" _
  114.     Alias "ClearEventLogA" ( _
  115.         ByVal hEventLog As Long, _
  116.         ByVal lpBackupFileName As String) _
  117.     As Long
  118.  
  119. Declare Function CloseEventLog _
  120.     Lib "advapi32.dll" ( _
  121.         ByVal hEventLog As Long) _
  122.     As Long
  123.  
  124. Declare Function CloseServiceHandle _
  125.     Lib "advapi32.dll" ( _
  126.         ByVal hSCObject As Long) _
  127.     As Long
  128.  
  129. Declare Function ControlService _
  130.     Lib "advapi32.dll" ( _
  131.         ByVal hService As Long, _
  132.         ByVal dwControl As Long, _
  133.         lpServiceStatus As SERVICE_STATUS) _
  134.     As Long
  135.  
  136. Declare Function CopySid _
  137.     Lib "advapi32.dll" ( _
  138.         ByVal nDestinationSidLength As Long, _
  139.         pDestinationSid As Any, _
  140.         pSourceSid As Any) _
  141.     As Long
  142.  
  143. Declare Function CreatePrivateObjectSecurity _
  144.     Lib "advapi32.dll" ( _
  145.         ParentDescriptor As SECURITY_DESCRIPTOR, _
  146.         CreatorDescriptor As SECURITY_DESCRIPTOR, _
  147.         NewDescriptor As SECURITY_DESCRIPTOR, _
  148.         ByVal IsDirectoryObject As Long, ByVal Token As Long, GenericMapping As GENERIC_MAPPING) _
  149.     As Long
  150.  
  151. Declare Function CreateService _
  152.     Lib "advapi32.dll" _
  153.     Alias "CreateServiceA" ( _
  154.         ByVal hSCManager As Long, ByVal lpServiceName As String, ByVal lpDisplayName As String, _
  155.         ByVal dwDesiredAccess As Long, ByVal dwServiceType As Long, ByVal dwStartType As Long, _
  156.         ByVal dwErrorControl As Long, ByVal lpBinaryPathName As String, ByVal lpLoadOrderGroup As String, _
  157.         lpdwTagId As Long, ByVal lpDependencies As String, ByVal lp As String, ByVal lpPassword As String) _
  158.     As Long
  159.  
  160. Declare Function DeleteAce _
  161.     Lib "advapi32.dll" ( _
  162.         pAcl As ACL, _
  163.         ByVal dwAceIndex As Long) _
  164.     As Long
  165.  
  166. Declare Function DeleteService _
  167.     Lib "advapi32.dll" ( _
  168.         ByVal hService As Long) _
  169.     As Long
  170.  
  171. Declare Function DeregisterEventSource _
  172.     Lib "advapi32.dll" ( _
  173.         ByVal hEventLog As Long) _
  174.     As Long
  175.  
  176. Declare Function DestroyPrivateObjectSecurity _
  177.     Lib "advapi32.dll" ( _
  178.         ObjectDescriptor As SECURITY_DESCRIPTOR) _
  179.     As Long
  180.  
  181. Declare Function DuplicateToken _
  182.     Lib "advapi32.dll" ( _
  183.         ByVal ExistingTokenHandle As Long, _
  184.         ImpersonationLevel As Integer, _
  185.         DuplicateTokenHandle As Long) _
  186.     As Long
  187.  
  188. Declare Function EnumDependentServices _
  189.     Lib "advapi32.dll" _
  190.     Alias "EnumDependentServicesA" ( _
  191.         ByVal hService As Long, ByVal dwServiceState As Long, _
  192.         lpServices As ENUM_SERVICE_STATUS, _
  193.         ByVal cbBufSize As Long, pcbBytesNeeded As Long, lpServicesReturned As Long) _
  194.     As Long
  195.  
  196. Declare Function EnumServicesStatus _
  197.     Lib "advapi32.dll" _
  198.     Alias "EnumServicesStatusA" ( _
  199.         ByVal hSCManager As Long, ByVal dwServiceType As Long, _
  200.         ByVal dwServiceState As Long, lpServices As ENUM_SERVICE_STATUS, _
  201.         ByVal cbBufSize As Long, pcbBytesNeeded As Long, lpServicesReturned As Long, lpResumeHandle As Long) _
  202.     As Long
  203.  
  204. Declare Function EqualPrefixSid _
  205.     Lib "advapi32.dll" ( _
  206.         pSid1 As Any, _
  207.         pSid2 As Any) _
  208.     As Long
  209.  
  210. Declare Function EqualSid _
  211.     Lib "advapi32.dll" ( _
  212.         pSid1 As Any, _
  213.         pSid2 As Any) _
  214.     As Long
  215.  
  216. Declare Function FindFirstFreeAce _
  217.     Lib "advapi32.dll" ( _
  218.         pAcl As ACL, _
  219.         pAce As Long) _
  220.     As Long
  221.  
  222. Declare Sub FreeSid _
  223.     Lib "advapi32.dll" ( _
  224.         pSid As Any)
  225.  
  226. Declare Function GetAce _
  227.     Lib "advapi32.dll" ( _
  228.         pAcl As ACL, _
  229.         ByVal dwAceIndex As Long, _
  230.         pAce As Any) _
  231.     As Long
  232.  
  233. Declare Function GetAclInformation _
  234.     Lib "advapi32.dll" ( _
  235.         pAcl As ACL, _
  236.         pAclInformation As Any, _
  237.         ByVal nAclInformationLength As Long, _
  238.         ByVal dwAclInformationClass As Integer) _
  239.     As Long
  240.  
  241. Declare Function GetFileSecurity _
  242.     Lib "advapi32.dll" _
  243.     Alias "GetFileSecurityA" ( _
  244.         ByVal lpFileName As String, ByVal RequestedInformation As Long, _
  245.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  246.         ByVal nLength As Long, lpnLengthNeeded As Long) _
  247.     As Long
  248.  
  249. Declare Function GetKernelObjectSecurity _
  250.     Lib "advapi32.dll" ( _
  251.         ByVal Handle As Long, ByVal RequestedInformation As Long, _
  252.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  253.         ByVal nLength As Long, _
  254.         lpnLengthNeeded As Long) _
  255.     As Long
  256.  
  257. Declare Function GetLengthSid _
  258.     Lib "advapi32.dll" ( _
  259.         pSid As Any) _
  260.     As Long
  261.  
  262. Declare Function GetOldestEventLogRecord _
  263.     Lib "advapi32.dll" ( _
  264.         ByVal hEventLog As Long, _
  265.         OldestRecord As Long) _
  266.     As Long
  267.  
  268. Declare Function GetPrivateObjectSecurity _
  269.     Lib "advapi32.dll" ( _
  270.         ObjectDescriptor As SECURITY_DESCRIPTOR, _
  271.         ByVal SecurityInformation As Long, _
  272.         ResultantDescriptor As SECURITY_DESCRIPTOR, _
  273.         ByVal DescriptorLength As Long, ReturnLength As Long) _
  274.     As Long
  275.  
  276. Declare Function GetSecurityDescriptorControl _
  277.     Lib "advapi32.dll" ( _
  278.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  279.         pControl As Integer, _
  280.         lpdwRevision As Long) _
  281.     As Long
  282.  
  283. Declare Function GetSecurityDescriptorDacl _
  284.     Lib "advapi32.dll" ( _
  285.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  286.         lpbDaclPresent As Long, _
  287.         pDacl As ACL, _
  288.         lpbDaclDefaulted As Long) _
  289.     As Long
  290.  
  291. Declare Function GetSecurityDescriptorGroup _
  292.     Lib "advapi32.dll" ( _
  293.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  294.         pGroup As Any, _
  295.         ByVal lpbGroupDefaulted As Long) _
  296.     As Long
  297.  
  298. Declare Function GetSecurityDescriptorLength _
  299.     Lib "advapi32.dll" ( _
  300.         pSecurityDescriptor As SECURITY_DESCRIPTOR) _
  301.     As Long
  302.  
  303. Declare Function GetSecurityDescriptorOwner _
  304.     Lib "advapi32.dll" ( _
  305.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  306.         pOwner As Any, _
  307.         ByVal lpbOwnerDefaulted As Long) _
  308.     As Long
  309.  
  310. Declare Function GetSecurityDescriptorSacl _
  311.     Lib "advapi32.dll" ( _
  312.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  313.         ByVal lpbSaclPresent As Long, _
  314.         pSacl As ACL, _
  315.         ByVal lpbSaclDefaulted As Long) _
  316.     As Long
  317.  
  318. Declare Function GetServiceDisplayName _
  319.     Lib "advapi32.dll" _
  320.     Alias "GetServiceDisplayNameA" ( _
  321.         ByVal hSCManager As Long, ByVal lpServiceName As String, _
  322.         ByVal lpDisplayName As String, lpcchBuffer As Long) _
  323.     As Long
  324.  
  325. Declare Function GetServiceKeyName _
  326.     Lib "advapi32.dll" _
  327.     Alias "GetServiceKeyNameA" ( _
  328.         ByVal hSCManager As Long, _
  329.         ByVal lpDisplayName As String, _
  330.         ByVal lpServiceName As String, _
  331.         lpcchBuffer As Long) _
  332.     As Long
  333.  
  334. Declare Function GetSidIdentifierAuthority _
  335.     Lib "advapi32.dll" ( _
  336.         pSid As Any) _
  337.     As SID_IDENTIFIER_AUTHORITY
  338.  
  339. Declare Function GetSidLengthRequired _
  340.     Lib "advapi32.dll" ( _
  341.         ByVal nSubAuthorityCount As Byte) _
  342.     As Long
  343.  
  344. Declare Function GetSidSubAuthority _
  345.     Lib "advapi32.dll" ( _
  346.         pSid As Any, _
  347.         ByVal nSubAuthority As Long) _
  348.     As Long
  349.  
  350. Declare Function GetSidSubAuthorityCount _
  351.     Lib "advapi32.dll" ( _
  352.         pSid As Any) _
  353.     As Byte
  354.  
  355. Declare Function GetTokenInformation _
  356.     Lib "advapi32.dll" ( _
  357.         ByVal TokenHandle As Long, TokenInformationClass As Integer, _
  358.         TokenInformation As Any, ByVal TokenInformationLength As Long, _
  359.         ReturnLength As Long) _
  360.     As Long
  361.  
  362. Declare Function GetUserName _
  363.     Lib "advapi32.dll" _
  364.     Alias "GetUserNameA" ( _
  365.         ByVal lpBuffer As String, _
  366.         nSize As Long) _
  367.     As Long
  368.  
  369. Declare Function ImpersonateNamedPipeClient _
  370.     Lib "advapi32.dll" ( _
  371.         ByVal hNamedPipe As Long) _
  372.     As Long
  373.  
  374. Declare Function ImpersonateSelf _
  375.     Lib "advapi32.dll" ( _
  376.         ImpersonationLevel As Integer) _
  377.     As Long
  378.  
  379. Declare Function InitializeAcl _
  380.     Lib "advapi32.dll" ( _
  381.         pAcl As ACL, _
  382.         ByVal nAclLength As Long, _
  383.         ByVal dwAclRevision As Long) _
  384.     As Long
  385.  
  386. Declare Function InitializeSecurityDescriptor _
  387.     Lib "advapi32.dll" ( _
  388.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  389.         ByVal dwRevision As Long) _
  390.     As Long
  391.  
  392. Declare Function InitializeSid _
  393.     Lib "advapi32.dll" ( _
  394.         Sid As Any, _
  395.         pIdentifierAuthority As SID_IDENTIFIER_AUTHORITY, _
  396.         ByVal nSubAuthorityCount As Byte) _
  397.     As Long
  398.  
  399. Declare Function InitiateSystemShutdown _
  400.     Lib "advapi32.dll" _
  401.     Alias "InitiateSystemShutdownA" ( _
  402.         ByVal lpMachineName As String, ByVal lpMessage As String, _
  403.         ByVal dwTimeout As Long, ByVal bForceAppsClosed As Long, _
  404.         ByVal bRebootAfterShutdown As Long) _
  405.     As Long
  406.  
  407. Declare Function LockServiceDatabase _
  408.     Lib "advapi32.dll" ( _
  409.         ByVal hSCManager As Long) _
  410.     As Long
  411.  
  412. Declare Function LookupAccountName _
  413.     Lib "advapi32.dll" _
  414.     Alias "LookupAccountNameA" ( _
  415.         ByVal lpSystemName As String, ByVal lpAccountName As String, _
  416.         Sid As Long, cbSid As Long, _
  417.         ByVal ReferencedDomainName As String, _
  418.         cbReferencedDomainName As Long, peUse As Integer) _
  419.     As Long
  420.  
  421. Declare Function LookupAccountSid _
  422.     Lib "advapi32.dll" _
  423.     Alias "LookupAccountSidA" ( _
  424.         ByVal lpSystemName As String, Sid As Any, _
  425.         ByVal name As String, cbName As Long, _
  426.         ByVal ReferencedDomainName As String, cbReferencedDomainName As Long, _
  427.         peUse As Integer) _
  428.     As Long
  429.  
  430.  
  431. Declare Function LookupPrivilegeDisplayName _
  432.     Lib "advapi32.dll" _
  433.     Alias "LookupPrivilegeDisplayNameA" ( _
  434.         ByVal lpSystemName As String, ByVal lpName As String, _
  435.         ByVal lpDisplayName As String, cbDisplayName As Long, _
  436.         lpLanguageID As Long) _
  437.     As Long
  438.  
  439. Declare Function LookupPrivilegeName _
  440.     Lib "advapi32.dll" _
  441.     Alias "LookupPrivilegeNameA" ( _
  442.         ByVal lpSystemName As String, lpLuid As LARGE_INTEGER, _
  443.         ByVal lpName As String, _
  444.         cbName As Long) _
  445.     As Long
  446.  
  447. Declare Function LookupPrivilegeValue _
  448.     Lib "advapi32.dll" _
  449.     Alias "LookupPrivilegeValueA" ( _
  450.         ByVal lpSystemName As String, _
  451.         ByVal lpName As String, _
  452.         lpLuid As LARGE_INTEGER) _
  453.     As Long
  454.  
  455. Declare Function NotifyBootConfigStatus _
  456.     Lib "advapi32.dll" ( _
  457.         ByVal BootAcceptable As Long) _
  458.     As Long
  459.  
  460. Declare Function NotifyChangeEventLog _
  461.     Lib "advapi32" ( _
  462.         ByVal hEventLog As Long, _
  463.         ByVal hEvent As Long) _
  464.     As Boolean
  465.  
  466. Declare Function ObjectCloseAuditAlarm _
  467.     Lib "advapi32.dll" _
  468.     Alias "ObjectCloseAuditAlarmA" ( _
  469.         ByVal SubsystemName As String, _
  470.         HandleId As Any, _
  471.         ByVal GenerateOnClose As Long) _
  472.     As Long
  473.  
  474. Declare Function ObjectPrivilegeAuditAlarm _
  475.     Lib "advapi32.dll" _
  476.     Alias "ObjectPrivilegeAuditAlarmA" ( _
  477.         ByVal SubsystemName As String, HandleId As Any, _
  478.         ByVal ClientToken As Long, ByVal DesiredAccess As Long, _
  479.         Privileges As PRIVILEGE_SET, ByVal AccessGranted As Long) _
  480.     As Long
  481.  
  482. Declare Function OpenBackupEventLog _
  483.     Lib "advapi32.dll" _
  484.     Alias "OpenBackupEventLogA" ( _
  485.         ByVal lpUNCServerName As String, _
  486.         ByVal lpFileName As String) _
  487.     As Long
  488.  
  489. Declare Function OpenEventLog _
  490.     Lib "advapi32.dll" ( _
  491.         ByVal lpUNCServerName As String, _
  492.         ByVal lpSourceName As String) _
  493.     As Long
  494.  
  495. Declare Function OpenProcessToken _
  496.     Lib "advapi32.dll" ( _
  497.         ByVal ProcessHandle As Long, _
  498.         ByVal DesiredAccess As Long, _
  499.         TokenHandle As Long) _
  500.     As Long
  501.  
  502. Declare Function OpenSCManager _
  503.     Lib "advapi32.dll" _
  504.     Alias "OpenSCManagerA" ( _
  505.         ByVal lpMachineName As String, _
  506.         ByVal lpDatabaseName As String, _
  507.         ByVal dwDesiredAccess As Long) _
  508.     As Long
  509.  
  510. Declare Function OpenService _
  511.     Lib "advapi32.dll" _
  512.     Alias "OpenServiceA" ( _
  513.         ByVal hSCManager As Long, _
  514.         ByVal lpServiceName As String, _
  515.         ByVal dwDesiredAccess As Long) _
  516.     As Long
  517.  
  518. Declare Function OpenThreadToken _
  519.     Lib "advapi32.dll" ( _
  520.         ByVal ThreadHandle As Long, _
  521.         ByVal DesiredAccess As Long, _
  522.         ByVal OpenAsSelf As Long, _
  523.         TokenHandle As Long) _
  524.     As Long
  525.  
  526. Declare Function PrivilegeCheck _
  527.     Lib "advapi32.dll" ( _
  528.         ByVal ClientToken As Long, _
  529.         RequiredPrivileges As PRIVILEGE_SET, _
  530.         ByVal pfResult As Long) _
  531.     As Long
  532.  
  533. Declare Function PrivilegedServiceAuditAlarm _
  534.     Lib "advapi32.dll" _
  535.     Alias "PrivilegedServiceAuditAlarmA" ( _
  536.         ByVal SubsystemName As String, ByVal ServiceName As String, _
  537.         ByVal ClientToken As Long, Privileges As PRIVILEGE_SET, _
  538.         ByVal AccessGranted As Long) _
  539.     As Long
  540.  
  541. Declare Function ReadEventLog _
  542.     Lib "advapi32.dll" _
  543.     Alias "ReadEventLogA" ( _
  544.         ByVal hEventLog As Long, ByVal dwReadFlags As Long, _
  545.         ByVal dwRecordOffset As Long, lpBuffer As EVENTLOGRECORD, _
  546.         ByVal nNumberOfBytesToRead As Long, _
  547.         pnBytesRead As Long, pnMinNumberOfBytesNeeded As Long) _
  548.     As Long
  549.  
  550. Declare Function RegCloseKey _
  551.     Lib "advapi32.dll" ( _
  552.         ByVal hKey As Long) _
  553.     As Long
  554.  
  555. Declare Function RegConnectRegistry _
  556.     Lib "advapi32.dll" _
  557.     Alias "RegConnectRegistryA" ( _
  558.         ByVal lpMachineName As String, _
  559.         ByVal hKey As Long, _
  560.         phkResult As Long) _
  561.     As Long
  562.  
  563. Declare Function RegCreateKey _
  564.     Lib "advapi32.dll" _
  565.     Alias "RegCreateKeyA" ( _
  566.         ByVal hKey As Long, _
  567.         ByVal lpSubKey As String, _
  568.         phkResult As Long) _
  569.     As Long
  570.  
  571. Declare Function RegCreateKeyEx _
  572.     Lib "advapi32.dll" _
  573.     Alias "RegCreateKeyExA" ( _
  574.         ByVal hKey As Long, ByVal lpSubKey As String, ByVal Reserved As Long, ByVal lpClass As String, _
  575.         ByVal dwOptions As Long, ByVal samDesired As Long, lpSecurityAttributes As SECURITY_ATTRIBUTES, _
  576.         phkResult As Long, lpdwDisposition As Long) _
  577.     As Long
  578.  
  579. Declare Function RegDeleteKey _
  580.     Lib "advapi32.dll" _
  581.     Alias "RegDeleteKeyA" ( _
  582.         ByVal hKey As Long, _
  583.         ByVal lpSubKey As String) _
  584.     As Long
  585.  
  586. Declare Function RegDeleteValue _
  587.     Lib "advapi32.dll" _
  588.     Alias "RegDeleteValueA" ( _
  589.         ByVal hKey As Long, _
  590.         ByVal lpValueName As String) _
  591.     As Long
  592.  
  593. Declare Function RegEnumKey _
  594.     Lib "advapi32.dll" _
  595.     Alias "RegEnumKeyA" ( _
  596.         ByVal hKey As Long, _
  597.         ByVal dwIndex As Long, _
  598.         ByVal lpName As String, _
  599.         ByVal cbName As Long) _
  600.     As Long
  601.  
  602. Declare Function RegEnumKeyEx _
  603.     Lib "advapi32.dll" _
  604.     Alias "RegEnumKeyExA" ( _
  605.         ByVal hKey As Long, ByVal dwIndex As Long, _
  606.         ByVal lpName As String, lpcbName As Long, _
  607.         lpReserved As Long, ByVal lpClass As String, _
  608.         lpcbClass As Long, lpftLastWriteTime As FILETIME) _
  609.     As Long
  610.  
  611. Declare Function RegEnumValue _
  612.     Lib "advapi32.dll" _
  613.     Alias "RegEnumValueA" ( _
  614.         ByVal hKey As Long, ByVal dwIndex As Long, _
  615.         ByVal lpValueName As String, lpcbValueName As Long, _
  616.         lpReserved As Long, lpType As Long, _
  617.         lpData As Byte, lpcbData As Long) _
  618.     As Long
  619.  
  620. Declare Function RegFlushKey _
  621.     Lib "advapi32.dll" ( _
  622.         ByVal hKey As Long) _
  623.     As Long
  624.  
  625. Declare Function RegGetKeySecurity _
  626.     Lib "advapi32.dll" ( _
  627.         ByVal hKey As Long, _
  628.         ByVal SecurityInformation As Long, _
  629.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  630.         lpcbSecurityDescriptor As Long) _
  631.     As Long
  632.  
  633. Declare Function RegisterEventSource _
  634.     Lib "advapi32.dll" _
  635.     Alias "RegisterEventSourceA" ( _
  636.         ByVal lpUNCServerName As String, _
  637.         ByVal lpSourceName As String) _
  638.     As Long
  639.  
  640. Declare Function RegisterServiceCtrlHandler _
  641.     Lib "advapi32.dll" _
  642.     Alias "RegisterServiceCtrlHandlerA" ( _
  643.         ByVal lpServiceName As String, _
  644.         ByVal lpHandlerProc As Long) _
  645.     As Long
  646.  
  647. Declare Function RegLoadKey _
  648.     Lib "advapi32.dll" _
  649.     Alias "RegLoadKeyA" ( _
  650.         ByVal hKey As Long, _
  651.         ByVal lpSubKey As String, _
  652.         ByVal lpFile As String) _
  653.     As Long
  654.  
  655. Declare Function RegNotifyChangeKeyValue _
  656.     Lib "advapi32.dll" ( _
  657.         ByVal hKey As Long, _
  658.         ByVal bWatchSubtree As Long, ByVal dwNotifyFilter As Long, _
  659.         ByVal hEvent As Long, ByVal fAsynchronus As Long) _
  660.     As Long
  661.  
  662. Declare Function RegOpenKey _
  663.     Lib "advapi32.dll" _
  664.     Alias "RegOpenKeyA" ( _
  665.         ByVal hKey As Long, _
  666.         ByVal lpSubKey As String, _
  667.         phkResult As Long) _
  668.     As Long
  669.  
  670. Declare Function RegOpenKeyEx _
  671.     Lib "advapi32.dll" _
  672.     Alias "RegOpenKeyExA" ( _
  673.         ByVal hKey As Long, ByVal lpSubKey As String, _
  674.         ByVal ulOptions As Long, ByVal samDesired As Long, _
  675.         phkResult As Long) _
  676.     As Long
  677.  
  678. Declare Function RegQueryInfoKey _
  679.     Lib "advapi32.dll" _
  680.     Alias "RegQueryInfoKeyA" ( _
  681.         ByVal hKey As Long, ByVal lpClass As String, lpcbClass As Long, _
  682.         lpReserved As Long, lpcSubKeys As Long, lpcbMaxSubKeyLen As Long, _
  683.         lpcbMaxClassLen As Long, lpcValues As Long, lpcbMaxValueNameLen As Long, _
  684.         lpcbMaxValueLen As Long, lpcbSecurityDescriptor As Long, lpftLastWriteTime As FILETIME) _
  685.     As Long
  686.  
  687. Declare Function RegQueryValue _
  688.     Lib "advapi32.dll" _
  689.     Alias "RegQueryValueA" ( _
  690.         ByVal hKey As Long, ByVal lpSubKey As String, _
  691.         ByVal lpValue As String, lpcbValue As Long) _
  692.     As Long
  693.  
  694. Declare Function RegQueryValueEx _
  695.     Lib "advapi32.dll" _
  696.     Alias "RegQueryValueExA" ( _
  697.         ByVal hKey As Long, ByVal lpValueName As String, _
  698.         ByVal lpReserved As Long, lpType As Long, lpData As Any, _
  699.         lpcbData As Long) _
  700.     As Long
  701.  
  702. Declare Function RegReplaceKey _
  703.     Lib "advapi32.dll" _
  704.     Alias "RegReplaceKeyA" ( _
  705.         ByVal hKey As Long, _
  706.         ByVal lpSubKey As String, _
  707.         ByVal lpNewFile As String, _
  708.         ByVal lpOldFile As String) _
  709.     As Long
  710.  
  711. Declare Function RegRestoreKey _
  712.     Lib "advapi32.dll" _
  713.     Alias "RegRestoreKeyA" ( _
  714.         ByVal hKey As Long, _
  715.         ByVal lpFile As String, _
  716.         ByVal dwFlags As Long) _
  717.     As Long
  718.  
  719. Declare Function RegSaveKey _
  720.     Lib "advapi32.dll" _
  721.     Alias "RegSaveKeyA" ( _
  722.         ByVal hKey As Long, _
  723.         ByVal lpFile As String, _
  724.         lpSecurityAttributes As SECURITY_ATTRIBUTES) _
  725.     As Long
  726.  
  727. Declare Function RegSetKeySecurity _
  728.     Lib "advapi32.dll" ( _
  729.         ByVal hKey As Long, _
  730.         ByVal SecurityInformation As Long, _
  731.         pSecurityDescriptor As SECURITY_DESCRIPTOR) _
  732.     As Long
  733.  
  734. Declare Function RegSetValue _
  735.     Lib "advapi32.dll" _
  736.     Alias "RegSetValueA" ( _
  737.         ByVal hKey As Long, ByVal lpSubKey As String, _
  738.         ByVal dwType As Long, _
  739.         ByVal lpData As String, _
  740.         ByVal cbData As Long) _
  741.     As Long
  742.  
  743. Declare Function RegSetValueEx _
  744.     Lib "advapi32.dll" _
  745.     Alias "RegSetValueExA" ( _
  746.         ByVal hKey As Long, ByVal lpValueName As String, _
  747.         ByVal Reserved As Long, ByVal dwType As Long, _
  748.         lpData As Any, ByVal cbData As Long) _
  749.     As Long
  750.  
  751. Declare Function RegUnLoadKey _
  752.     Lib "advapi32.dll" _
  753.     Alias "RegUnLoadKeyA" ( _
  754.         ByVal hKey As Long, _
  755.         ByVal lpSubKey As String) _
  756.     As Long
  757.  
  758. Declare Function ReportEvent _
  759.     Lib "advapi32.dll" _
  760.     Alias "ReportEventA" ( _
  761.         ByVal hEventLog As Long, ByVal wType As Long, ByVal wCategory As Long, _
  762.         ByVal dwEventID As Long, lpUserSid As Any, ByVal wNumStrings As Long, _
  763.         ByVal dwDataSize As Long, ByVal lpStrings As Long, lpRawData As Any) _
  764.     As Long
  765.  
  766. Declare Function RevertToSelf _
  767.     Lib "advapi32.dll" () _
  768.     As Long
  769.  
  770. Declare Function SetAclInformation _
  771.     Lib "advapi32.dll" ( _
  772.         pAcl As ACL, _
  773.         pAclInformation As Any, _
  774.         ByVal nAclInformationLength As Long, _
  775.         ByVal dwAclInformationClass As Integer) _
  776.     As Long
  777.  
  778. Declare Function SetFileSecurity _
  779.     Lib "advapi32.dll" _
  780.     Alias "SetFileSecurityA" ( _
  781.         ByVal lpFileName As String, _
  782.         ByVal SecurityInformation As Long, _
  783.         pSecurityDescriptor As SECURITY_DESCRIPTOR) _
  784.     As Long
  785.  
  786. Declare Function SetPrivateObjectSecurity _
  787.     Lib "advapi32.dll" ( _
  788.         ByVal SecurityInformation As Long, _
  789.         ModificationDescriptor As SECURITY_DESCRIPTOR, _
  790.         ObjectsSecurityDescriptor As SECURITY_DESCRIPTOR, _
  791.         GenericMapping As GENERIC_MAPPING, _
  792.         ByVal Token As Long) _
  793.     As Long
  794.  
  795. Declare Function SetSecurityDescriptorDacl _
  796.     Lib "advapi32.dll" ( _
  797.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  798.         ByVal bDaclPresent As Long, _
  799.         pDacl As ACL, _
  800.         ByVal bDaclDefaulted As Long) _
  801.     As Long
  802.  
  803. Declare Function SetSecurityDescriptorGroup _
  804.     Lib "advapi32.dll" ( _
  805.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  806.         pGroup As Any, _
  807.         ByVal bGroupDefaulted As Long) _
  808.     As Long
  809.  
  810. Declare Function SetSecurityDescriptorOwner _
  811.     Lib "advapi32.dll" ( _
  812.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  813.         pOwner As Any, _
  814.         ByVal bOwnerDefaulted As Long) _
  815.     As Long
  816.  
  817. Declare Function SetSecurityDescriptorSacl _
  818.     Lib "advapi32.dll" ( _
  819.         pSecurityDescriptor As SECURITY_DESCRIPTOR, _
  820.         ByVal bSaclPresent As Long, _
  821.         pSacl As ACL, _
  822.         ByVal bSaclDefaulted As Long) _
  823.     As Long
  824.  
  825. Declare Function SetServiceBits _
  826.     Lib "advapi32" ( _
  827.         ByVal hServiceStatus As Long, _
  828.         ByVal dwServiceBits As Long, _
  829.         ByVal bSetBitsOn As Boolean, _
  830.         ByVal bUpdateImmediately As Boolean) _
  831.     As Boolean
  832.  
  833. Declare Function SetServiceObjectSecurity _
  834.     Lib "advapi32.dll" ( _
  835.         ByVal hService As Long, _
  836.         ByVal dwSecurityInformation As Long, _
  837.         lpSecurityDescriptor As Any) _
  838.     As Long
  839.  
  840. Declare Function SetServiceStatus _
  841.     Lib "advapi32.dll" ( _
  842.         ByVal hServiceStatus As Long, _
  843.         lpServiceStatus As SERVICE_STATUS) _
  844.     As Long
  845.  
  846. Declare Function SetThreadToken _
  847.     Lib "advapi32" ( _
  848.         Thread As Long, _
  849.         ByVal Token As Long) _
  850.     As Boolean
  851.  
  852. Declare Function SetTokenInformation _
  853.     Lib "advapi32.dll" ( _
  854.         ByVal TokenHandle As Long, _
  855.         TokenInformationClass As Integer, _
  856.         TokenInformation As Any, _
  857.         ByVal TokenInformationLength As Long) _
  858.     As Long
  859.  
  860. Declare Function StartService _
  861.     Lib "advapi32.dll" _
  862.     Alias "StartServiceA" ( _
  863.         ByVal hService As Long, _
  864.         ByVal dwNumServiceArgs As Long, _
  865.         ByVal lpServiceArgVectors As Long) _
  866.     As Long
  867.  
  868. Declare Function StartServiceCtrlDispatcher _
  869.     Lib "advapi32.dll" _
  870.     Alias "StartServiceCtrlDispatcherA" ( _
  871.         lpServiceStartTable As SERVICE_TABLE_ENTRY) _
  872.     As Long
  873.  
  874. Declare Function UnlockServiceDatabase _
  875.     Lib "advapi32.dll" ( _
  876.         ScLock As Any) _
  877.     As Long
  878.  
  879.