Создание GUID в ASP-приложении при помощи VB-компонента
Источник: Relib.com

В некоторых ASP-приложениях бывает необходимо генерировать уникальный идентификатор (GUID - Global Unique IDentifier), сделать который можно несколькими способами, в том числе: используя БД или VB-компонент. Наиболее простой способ - использование БД (например, функции NewID() в SQL Server 7.0) не всегда подходит, поэтому в данной статье мы рассмотрим пошаговое создание VB-компонента, который позволит реализовать эту задачу при помощи Windows API. Преимущества этого метода будет в ледующем:

1. Не требует выполнения запроса к БД
2. Не требует наличия SQL Server 7.

Итак, для создания компонента:
1. Поместите в секцию General Declarations следующий код:

Option Explicit

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 Const GUID_OK As Long = 0
Private myGUID As S tring
Private Type GUID
    Guid1 As Long
    Guid2 As Integer
    Guid3 As Integer
    Guid4(0 To 7) As Byte
End Type

2. Скопируйте данный код функции:

Public Function getGUIDKey() As String
Const MAX_GUID_LENGTH As Long = 38
Dim udtGUID As GUID
Dim strGUID As String
Dim lngRetCode As Long

lngRetCode = CoCreateGuid(udtGUID)

If lngRetCode = GUID_OK Then
    strGUID = String(MAX_GUID_LENGTH, 0)
    StringFromGUID2 udtGUID, StrPtr(strGUID), _
       MAX_GUID_LENGTH + 1
Else
    strGUID = ""
End If
getGUIDKey= strGUID
End Function

3. Откомпилируйте файл проекта.

Обратите внимание, что в случае использования API Text Viewer (утилиты, входящей в Visual Studio) вы получите тип Public для API-функций, вместо Private, который использован в данном примере. Успешная компиляция завершает создание требуемого компонента и вы можете приступать к его использованию.

Подробнее на сайте

--<< Возврат к содержанию >>-- Назад