把声明改为 Declare Function CreateEvent Lib "kernel32" Alias "CreateEventA" (lpEventAttributes As Any, ByVal bManualReset As Long, ByVal bInitialState As Long, ByVal lpName As String) As LongCreateEvent ByVal 0&,bManualReset,bInitialState,lpName
用Set Object=Nothing 可以啊
将SECURITY_ATTRIBUTES类型改为Long(如果要赋空值,否则API声明 不变)即 Private Declare Function CreateEvent Lib "kernel32" Alias "CreateEventA" (ByVal lpEventAttributes As SECURITY_ATTRIBUTES, ByVal bManualReset As Long, ByVal bInitialState As Long, ByVal lpName As String) As Long 改为 Private Declare Function CreateEvent Lib "kernel32" Alias "CreateEventA" (ByVal lpEventAttributes As Long, ByVal bManualReset As Long, ByVal bInitialState As Long, ByVal lpName As String) As Long如下调用就好了(lpEventAttributes传0) CreateEvent 0, 0, 0, "Name"
strconnection=Null 未出错呀
HANDLE CreateEvent( LPSECURITY_ATTRIBUTES lpEventAttributes,
BOOL bManualReset,
BOOL bInitialState,
LPCTSTR lpName
);
我想把第一个参数‘lpEventAttributes’置为NULL,在VC中是可以,在VB中却不行了。
Declare Function CreateEvent Lib "kernel32" Alias "CreateEventA" (lpEventAttributes As Any, ByVal bManualReset As Long, ByVal bInitialState As Long, ByVal lpName As String) As LongCreateEvent ByVal 0&,bManualReset,bInitialState,lpName
将SECURITY_ATTRIBUTES类型改为Long(如果要赋空值,否则API声明
不变)即
Private Declare Function CreateEvent Lib "kernel32" Alias "CreateEventA" (ByVal lpEventAttributes As SECURITY_ATTRIBUTES, ByVal bManualReset As Long, ByVal bInitialState As Long, ByVal lpName As String) As Long
改为
Private Declare Function CreateEvent Lib "kernel32" Alias "CreateEventA" (ByVal lpEventAttributes As Long, ByVal bManualReset As Long, ByVal bInitialState As Long, ByVal lpName As String) As Long如下调用就好了(lpEventAttributes传0)
CreateEvent 0, 0, 0, "Name"