Генерация GUID (VBA)


'Объявление функции WinAPI (ole32.dll)
Declare Function CoCreateGuid Lib "ole32" (pguid As GUID) As Long

'объявление типа данных, используемого WinAPI-функцией CoCreateGuid
Type GUID
    Data1 As Long
    Data2 As Integer
    Data3 As Integer
    Data4(7) As Byte
End Type


'Функция создает GUID и возвращает его в виде строки без разделителей
Public Function CreateGuid() As String

'значение,возвращаемое при успешном создании GUID
Const S_OK As Long = 0

Dim GuidPointer As GUID
Dim strData4 As String
Dim i As Byte

strData4 = ""
'Если успешно создан GUID, формируем его представление в виде строки
If CoCreateGuid(GuidPointer) = S_OK Then
    With GuidPointer
        CreateGuid = Hex(.Data1) & Hex(.Data2) & Hex(.Data3)
        For i = 0 To 7
            strData4 = strData4 & Hex(.Data4(i))
        Next i
    End With
End If
CreateGuid = CreateGuid & strData4

End Function
Реклама
Запись опубликована в рубрике программирование с метками , . Добавьте в закладки постоянную ссылку.

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s