创建 GUID
============================================================== Private Declare Function CoCreateGuid Lib "OLE32.DLL" _
(pGUID As GUID) As Long
Private Declare Function StringFromGUID2 Lib "OLE32.DLL" _
(pGUID As GUID, _
ByVal PointerToString As Long, _
ByVal MaxLength As Long) As Long
Private Type GUID
Guid1 As Long
Guid2 As Long
Guid3 As Long
Guid4(0 To 7) As Byte
End Type
Public Function CreateGUID() As String Dim udtGUID As GUID
Dim sGUID As String
Dim lResult As Long
lResult = CoCreateGuid(udtGUID)
If lResult Then
sGUID = ""
Else
sGUID = String$(38, 0)
StringFromGUID2 udtGUID, StrPtr(sGUID), 39
End If
CreateGUID = sGUID
End Function ==============================================================
============================================================== Private Declare Function CoCreateGuid Lib "OLE32.DLL" _
(pGUID As GUID) As Long
Private Declare Function StringFromGUID2 Lib "OLE32.DLL" _
(pGUID As GUID, _
ByVal PointerToString As Long, _
ByVal MaxLength As Long) As Long
Private Type GUID
Guid1 As Long
Guid2 As Long
Guid3 As Long
Guid4(0 To 7) As Byte
End Type
Public Function CreateGUID() As String Dim udtGUID As GUID
Dim sGUID As String
Dim lResult As Long
lResult = CoCreateGuid(udtGUID)
If lResult Then
sGUID = ""
Else
sGUID = String$(38, 0)
StringFromGUID2 udtGUID, StrPtr(sGUID), 39
End If
CreateGUID = sGUID
End Function ==============================================================
Private Type GUID
Data1 As Long
Data2 As Long
Data3 As Long
Data4(8) As Byte
End Type
Private Declare Function CoCreateGuid Lib "ole32.dll" (pguid As GUID) As Long
Private Declare Function StringFromGUID2 Lib "ole32.dll"(rguid As Any,ByVal lpstrClsId As Long,ByVal cbMax As Long) As Long Private Function GUIDGen() As String
Dim uGUID As GUID
Dim sGUID As String
Dim bGUID() As Byte
Dim lLen As Long
Dim RetVal As Long
lLen = 40
bGUID = String(lLen, 0)
CoCreateGuid uGUID '把结构转换为一个可显示的字符串
RetVal = StringFromGUID2(uGUID, VarPtr(bGUID(0)), lLen)
sGUID = bGUID
If (Asc(Mid$(sGUID, RetVal, 1)) = 0) Then RetVal = RetVal - 1
GUIDGen = Left$(sGUID, RetVal)
End Function Private Sub cmdGUID_Click()
txtGUID.Text = GUIDGen
End Sub