Module Hamlog50
Declare Sub MoveMemory Lib "kernel32.dll" Alias "RtlMoveMemory" (ByRef Destination As TJccgMas, ByVal Source As String, ByVal Length As Integer)
Public Declare Function ksort Lib "KSORT32.DLL" (ByVal DriveStr As String, ByVal SzOutput As String) As Short
Declare Function dbf_open Lib "Hamlog50.dll" (ByVal s As String, ByRef d As TDBFh) As Integer
Declare Sub dbf_close Lib "Hamlog50.dll" (ByRef d As TDBFh)
Declare Function dbf_rcount Lib "Hamlog50.dll" (ByRef d As TDBFh) As Integer
Declare Function dbf_read Lib "Hamlog50.dll" (ByRef d As TDBFh, ByVal n As Integer, ByVal s As String) As Integer
Declare Sub GetDxEntity Lib "Hamlog50.dll" (ByVal calls As String, ByVal buff As String)
Declare Sub Wget_bit Lib "Hamlog50.dll" (ByVal w As String, ByRef wc As TJccgMas)
Declare Sub Wput_bit Lib "Hamlog50.dll" (ByRef Th As TThLog, ByVal w As String)
Declare Function HamlogOpen Lib "Hamlog50.dll" (ByVal h As Integer, ByRef th As TThLog, ByVal f As String, ByVal v As Integer) As Integer
Declare Sub HamlogClose Lib "Hamlog50.dll" (ByRef th As TThLog, ByVal i As Integer)
Declare Function THW_read Lib "Hamlog50.dll" (ByRef h As TThLog, ByVal n As Integer, ByVal i As Integer) As Integer
Declare Sub SetDbsShare Lib "Hamlog50.dll" ()
Declare Function idx_open Lib "Hamlog50.dll" (ByVal s As String, ByRef p As TIDXh) As Integer
Declare Sub idx_close Lib "Hamlog50.dll" (ByRef p As TIDXh)
Declare Function idx_search Lib "Hamlog50.dll" (ByRef p As TIDXh, ByVal s As String, ByVal l As Integer) As Integer
Declare Function idx_next Lib "Hamlog50.dll" (ByRef p As TIDXh) As Integer
'THW_append
'修正できない項目は、Hamlogのデータ項目名で表すと
'My, Freq, Mode, Name, QTH, Remarks1, Remarks2の7項目です。
'Call, Date, Time, His, Code, G.L, QSLの7項目は正しく修正できます
Declare Function THW_append Lib "Hamlog50.dll" (ByRef Th As TThLog, ByVal f As Integer, ByRef m As Integer) As Integer
Declare Function Vdbf_open Lib "Thdll2Vb.dll" (ByVal s As String, ByRef d As TThLog) As Integer
Declare Sub Vdbf_close Lib "Thdll2Vb.dll" (ByRef d As TThLog)
Declare Function Vdbf_rcount Lib "Thdll2Vb.dll" (ByRef d As TThLog) As Integer
Declare Sub SetThBuffer Lib "Thdll2Vb.dll" (ByRef p As TThLog, ByVal s As String, ByVal n As Integer)
Declare Function ThwString Lib "Thdll2Vb.dll" (ByVal s As String, ByRef th As TThLog, ByVal n As Short) As Integer
Declare Sub VWget_bit Lib "Thdll2Vb.dll" (ByVal w As String, ByRef p As TThLog)
Structure TDBFh
<VBFixedArray(4), System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValArray, SizeConst:=4)> Dim lupdt() As Byte
Dim Rcount As Integer
Dim hsize As Integer
Dim recnm As Integer
Dim fHdl As Integer
<VBFixedArray(260), System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValArray, SizeConst:=260)> Dim Temp() As Byte
Public Sub Initialize()
ReDim lupdt(4)
ReDim Temp(260)
End Sub
End Structure
Structure TThLog
<VBFixedArray(3927), System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValArray, SizeConst:=3927)> Dim Qso() As Byte ' Ver5.03で変更
Public Sub Initialize()
ReDim Qso(3927)
End Sub
End Structure
Structure TIDXh ' インデックスファイル用
Dim p As Integer
Dim fHdl As Integer
<VBFixedArray(260), System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValArray, SizeConst:=260)> Dim Temp() As Byte
Public Sub Initialize()
ReDim Temp(260)
End Sub
End Structure
Structure TJccgMas
<VBFixedArray(55), System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValArray, SizeConst:=55)> Dim buff() As Byte
Public Sub Initialize()
ReDim buff(55)
End Sub
End Structure
Public th As TDBFh
Public log As TThLog
Public THindx As TIDXh
Public TJccgMas_ As TJccgMas
Public Const IsQSOdata = 16
End Module