0
点赞
收藏
分享

微信扫一扫

VBA 64位API声明语句第002讲

code_balance 2024-10-03 阅读 12

跟我学VBA,我这里专注VBA, 授人以渔。我98年开始,从源码接触VBA已经20余年了,随着年龄的增长,越来越觉得有必要把这项技能传递给需要这项技术的职场人员。希望职场和数据打交道的朋友,都来学习VBA,利用VBA,起码可以提高自己的工作效率,可以有时间多陪陪父母,多陪陪家人,何乐而不为呢?我的教程一共九套,从入门开始一直讲到程序的分发,是学习利用VBA的实用教程。这份API资料是随高级教程赠送的.

这讲我们继续学习VBA 64位API声明语句第002讲,这些内容是MS的权威资料,看似枯燥,但对于想学习API函数的朋友是非常有用的。

VBA 64位API声明语句第002讲_API



【分享成果,随喜正能量】法不轻传,道不贱卖,师不顺路,医不叩门。。


当学员学习到高级阶段,如果引用API,这个资料可以直接查到64位写法。大多数情况下我们是将低版本的程序文件升级到高版本,这时您就不必为如下的错误提示所困扰了:

VBA 64位API声明语句第002讲_VBA_02





' ///////////////////////////////////////////////////////////////////////////

' //

' NT well-known SIDs //

' //

' NT Authority S-1-5 //

' Dialup S-1-5-1 //

' //

' Network S-1-5-2 //

' Batch S-1-5-3 //

' Interactive S-1-5-4 //

' Service S-1-5-6 //

' AnonymousLogon S-1-5-7 (aka null logon session) //

' //

' (Logon IDs) S-1-5-5-X-Y //

' //

' (NT non-unique IDs) S-1-5-0x15-... //

' //

' (Built-in domain) s-1-5-0x20 //

' //

' ///////////////////////////////////////////////////////////////////////////


Const SECURITY_DIALUP_RID = &H1

Const SECURITY_NETWORK_RID = &H2

Const SECURITY_BATCH_RID = &H3

Const SECURITY_INTERACTIVE_RID = &H4

Const SECURITY_SERVICE_RID = &H6

Const SECURITY_ANONYMOUS_LOGON_RID = &H7

Const SECURITY_LOGON_IDS_RID = &H5

Const SECURITY_LOCAL_SYSTEM_RID = &H12

Const SECURITY_NT_NON_UNIQUE = &H15

Const SECURITY_BUILTIN_DOMAIN_RID = &H20



' ///////////////////////////////////////////////////////////////////////////

' //

' well-known domain relative sub-authority values (RIDs)... //

' //

' ///////////////////////////////////////////////////////////////////////////


Const DOMAIN_USER_RID_ADMIN = &H1F4

Const DOMAIN_USER_RID_GUEST = &H1F5


Const DOMAIN_GROUP_RID_ADMINS = &H200

Const DOMAIN_GROUP_RID_USERS = &H201

Const DOMAIN_GROUP_RID_GUESTS = &H202



Const DOMAIN_ALIAS_RID_ADMINS = &H220

Const DOMAIN_ALIAS_RID_USERS = &H221

Const DOMAIN_ALIAS_RID_GUESTS = &H222

Const DOMAIN_ALIAS_RID_POWER_USERS = &H223

Const DOMAIN_ALIAS_RID_ACCOUNT_OPS = &H224

Const DOMAIN_ALIAS_RID_SYSTEM_OPS = &H225

Const DOMAIN_ALIAS_RID_PRINT_OPS = &H226

Const DOMAIN_ALIAS_RID_BACKUP_OPS = &H227

Const DOMAIN_ALIAS_RID_REPLICATOR = &H228



' Allocate the System Luid. The first 1000 LUIDs are reserved.

' Use #999 here0x3E7 = 999)


' end_ntifs


' //////////////////////////////////////////////////////////////////////

' //

' User and Group related SID attributes //

' //

' //////////////////////////////////////////////////////////////////////


' Group attributes


Const SE_GROUP_MANDATORY = &H1

Const SE_GROUP_ENABLED_BY_DEFAULT = &H2

Const SE_GROUP_ENABLED = &H4

Const SE_GROUP_OWNER = &H8

Const SE_GROUP_LOGON_ID = &HC0000000


' User attributes


' (None yet defined.)


' ----------------

' Kernel Section

' ----------------


Const FILE_BEGIN = 0

Const FILE_CURRENT = 1

Const FILE_END = 2


Const FILE_FLAG_WRITE_THROUGH = &H80000000

Const FILE_FLAG_OVERLAPPED = &H40000000

Const FILE_FLAG_NO_BUFFERING = &H20000000

Const FILE_FLAG_RANDOM_ACCESS = &H10000000

Const FILE_FLAG_SEQUENTIAL_SCAN = &H8000000

Const FILE_FLAG_DELETE_ON_CLOSE = &H4000000

Const FILE_FLAG_BACKUP_SEMANTICS = &H2000000

Const FILE_FLAG_POSIX_SEMANTICS = &H1000000


Const CREATE_NEW = 1

Const CREATE_ALWAYS = 2

Const OPEN_EXISTING = 3

Const OPEN_ALWAYS = 4

Const TRUNCATE_EXISTING = 5


' Define the dwOpenMode values for CreateNamedPipe

Const PIPE_ACCESS_INBOUND = &H1

Const PIPE_ACCESS_OUTBOUND = &H2

Const PIPE_ACCESS_DUPLEX = &H3


' Define the Named Pipe End flags for GetNamedPipeInfo

Const PIPE_CLIENT_END = &H0

Const PIPE_SERVER_END = &H1


' Define the dwPipeMode values for CreateNamedPipe

Const PIPE_WAIT = &H0

Const PIPE_NOWAIT = &H1

Const PIPE_READMODE_BYTE = &H0

Const PIPE_READMODE_MESSAGE = &H2

Const PIPE_TYPE_BYTE = &H0

Const PIPE_TYPE_MESSAGE = &H4


' Define the well known values for CreateNamedPipe nMaxInstances

Const PIPE_UNLIMITED_INSTANCES = 255


' Define the Security Quality of Service bits to be passed

' into CreateFile

Const SECURITY_CONTEXT_TRACKING = &H40000

Const SECURITY_EFFECTIVE_ONLY = &H80000


Const SECURITY_SQOS_PRESENT = &H100000

Const SECURITY_VALID_SQOS_FLAGS = &H1F0000


Type OVERLAPPED

Internal As LongPtr

InternalHigh As LongPtr

offset As Long

OffsetHigh As Long

hEvent As LongPtr

End Type


Type SECURITY_ATTRIBUTES

nLength As Long

lpSecurityDescriptor As LongPtr

bInheritHandle As Long

End Type


Type PROCESS_INFORMATION

hProcess As LongPtr

hThread As LongPtr

dwProcessId As Long

dwThreadId As Long

End Type


Type FILETIME

dwLowDateTime As Long

dwHighDateTime As Long

End Type


Type SYSTEMTIME

wYear As Integer

wMonth As Integer

wDayOfWeek As Integer

wDay As Integer

wHour As Integer

wMinute As Integer

wSecond As Integer

wMilliseconds As Integer

End Type


' Serial provider type.



VBA 64位API声明语句第002讲_VBA_03


我20多年的VBA实践经验,全部浓缩在下面的各个教程中:



VBA 64位API声明语句第002讲_Group_04


VBA 64位API声明语句第002讲_Group_05






举报

相关推荐

0 条评论