|
vbAccelerator - Contents of code file: mIMAPI.basThis file is part of the download VB6 IMAPI Library Source, which is described in the article Image Mastering API (IMAPI) Library for VB. Attribute VB_Name = "mIMAPI"
Option Explicit
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (lpvDest As
Any, lpvSource As Any, ByVal cbCopy As Long)
Private Declare Function lstrlenW Lib "kernel32" (lpString As Any) As Long
Private Const FAIL_BIT As Long = &H80000000
Public Function FAILED(ByVal HRESULT As Long) As Boolean
FAILED = ((HRESULT And FAIL_BIT) = FAIL_BIT)
End Function
Public Function lpwstrPtrToString(ByVal lpwstrPtr As Long) As String
Dim lSize As Long
If Not (lpwstrPtr = 0) Then
lSize = lstrlenW(ByVal lpwstrPtr)
If (lSize > 0) Then
ReDim b(0 To (lSize * 2) - 1) As Byte
CopyMemory b(0), ByVal lpwstrPtr, lSize * 2
lpwstrPtrToString = b
End If
End If
End Function
Public Function UUIDAsString(theUuid As UUID) As String
Dim sUuid As String
Dim iData As Long
sUuid = PadHex(theUuid.Data1, 8) & "-" & PadHex(theUuid.Data2, 4) & "-" &
PadHex(theUuid.Data3, 4) & "-"
For iData = 0 To 7
If (iData = 2) Then
sUuid = sUuid & "-"
End If
sUuid = sUuid & PadHex(theUuid.Data4(iData), 2)
Next iData
UUIDAsString = sUuid
End Function
Private Function PadHex(ByVal lValue As Long, ByVal lDigits As Long) As String
Dim sHex As String
sHex = Hex(lValue)
If Len(sHex) < lDigits Then
sHex = String(lDigits - Len(sHex), "0") & sHex
End If
PadHex = sHex
End Function
Public Function MAKE_HRESULT(ByVal severity As Long, ByVal facility As Long,
ByVal code As Long) As Long
Dim hR As Long
If (severity = 1) Then
hR = &H80000000
End If
hR = hR Or (facility And &HFFF&) * &H10000
hR = hR Or code
MAKE_HRESULT = hR
End Function
|
|||
|
|
||||
|
|
||||