Option Explicit

' Declares for VBMSG API
' Copyright © 1993, JOSWare, Inc.
' All rights reserved.

' Get specific address of various variable types
Declare Function ptGetVariableAddress Lib "VBMSG.VBX" (Var As Any) As Long
Declare Function ptGetTypeAddress Lib "VBMSG.VBX" Alias "ptGetVariableAddress" (Var As Any) As Long
Declare Function ptGetStringAddress Lib "VBMSG.VBX" Alias "ptGetVariableAddress" (ByVal S As String) As Long
Declare Function ptGetLongAddress Lib "VBMSG.VBX" Alias "ptGetVariableAddress" (L As Long) As Long
Declare Function ptGetIntegerAddress Lib "VBMSG.VBX" Alias "ptGetVariableAddress" (I As Integer) As Long

' Get various values of data at specific addresses
Declare Function ptGetIntegerFromAddress Lib "VBMSG.VBX" (ByVal I As Long) As Integer
Declare Function ptGetLongFromAddress Lib "VBMSG.VBX" (ByVal L As Long) As Long
Declare Function ptGetStringFromAddress Lib "VBMSG.VBX" (ByVal lAddress As Long, ByVal cbBytes As Integer) As String
Declare Sub ptGetTypeFromAddress Lib "VBMSG.VBX" (ByVal lAddress As Long, lpType As Any, ByVal cbBytes As Integer)

' Data Type Manipulation Functions
Declare Function ptMakelParam Lib "VBMSG.VBX" (ByVal wLow As Integer, ByVal wHigh As Integer) As Long
Declare Function ptLoWord Lib "VBMSG.VBX" (ByVal lParam As Long) As Integer
Declare Function ptHiWord Lib "VBMSG.VBX" (ByVal lParam As Long) As Integer
Declare Function ptMakeUShort Lib "VBMSG.VBX" (ByVal ushortVal As Integer) As Long

' Get the literal text for a message
Declare Function ptMessagetoText Lib "VBMSG.VBX" (ByVal uMsgID As Integer, ByVal bFlag As Integer) As String

' Visual Basic API Translator Functions
Declare Function ptRecreateControlHwnd Lib "VBMSG.VBX" (ctl As Control) As Long

