FrymasterVB/DWPORT.CLS

78 lines
1.8 KiB
Plaintext

VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
END
Attribute VB_Name = "dwPortInfo"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
' Desaware API Class library
' Copyright (c) 1995-1997 by Desaware Inc.
' All rights reserved
' Preliminary demonstration edition
Option Explicit
Private Type PORT_INFO_1
pName As Long
End Type
Private Type PORT_INFO_2
pPortName As Long
pMonitorName As Long
pDescription As Long
fPortType As Long
Reserved As Long
End Type
Public pName$
Public pMonitorName$
Public pDescription$
Public fPortType&
Public Level&
Public Sub LoadInfo(Buf As Byte, pLevel&, x&)
Level = pLevel
Select Case Level
Case 1
LoadPortInfo1 Buf, x&
Case 2
LoadPortInfo2 Buf, x&
End Select
End Sub
Public Sub LoadPortInfo1(Buf As Byte, x&)
Dim pi As PORT_INFO_1
Dim offset&
Dim useaddr&
offset& = x * Len(pi)
useaddr& = agGetAddressForObject(Buf) + offset
Call agCopyData(ByVal useaddr, pi, Len(pi))
If (pi.pName <> 0) Then pName = agGetStringFromPointer(pi.pName)
End Sub
Public Sub LoadPortInfo2(Buf As Byte, x&)
Dim pi As PORT_INFO_2
Dim offset&
Dim useaddr&
offset& = x * Len(pi)
useaddr& = agGetAddressForObject(Buf) + offset
Call agCopyData(ByVal useaddr, pi, Len(pi))
pPortName = agGetStringFromPointer(pi.pPortName)
pMonitorName = agGetStringFromPointer(pi.pMonitorName)
pDescription = agGetStringFromPointer(pi.pDescription)
fPortType = pi.fPortType
End Sub
' pPortName is an alias for pName
Public Property Get pPortName() As String
pPortName = pName
End Property
Public Property Let pPortName(ByVal vNewValue$)
pName = vNewValue
End Property