📄 modx.bas
字号:
Attribute VB_Name = "Module1"
Option Explicit
Declare Function MapPhysToLin Lib "WinIo.dll" (ByVal PhysAddr As Long, ByVal PhysSize As Long, ByRef PhysMemHandle) As Long
Declare Function UnmapPhysicalMemory Lib "WinIo.dll" (ByVal PhysMemHandle, ByVal LinAddr) As Boolean
Declare Function GetPhysLong Lib "WinIo.dll" (ByVal PhysAddr As Long, ByRef PhysVal As Long) As Boolean
Declare Function SetPhysLong Lib "WinIo.dll" (ByVal PhysAddr As Long, ByVal PhysVal As Long) As Boolean
Declare Function GetPortVal Lib "WinIo.dll" (ByVal PortAddr As Integer, ByRef PortVal As Long, ByVal bSize As Byte) As Boolean
Declare Function SetPortVal Lib "WinIo.dll" (ByVal PortAddr As Integer, ByVal PortVal As Long, ByVal bSize As Byte) As Boolean
Declare Function InitializeWinIo Lib "WinIo.dll" () As Boolean
Declare Function ShutdownWinIo Lib "WinIo.dll" () As Boolean
Declare Function InstallWinIoDriver Lib "WinIo.dll" (ByVal DriverPath As String, ByVal Mode As Integer) As Boolean
Declare Function RemoveWinIoDriver Lib "WinIo.dll" () As Boolean
Public fMainForm As frmMain
Public stepSet As Integer
'Public gDbalert As Database
Public cn As ADODB.Connection ' 使用一个活动的连接
'布防参数变量
Public chkIndex As Integer '记录bfset中当前选中的记录位置
'处警参数变量
Public chkLine As Integer '记录cjset中当前选中的记录位置
Public mAction As Boolean ' 安防系统所处状态
'对应变量
Sub Main()
Set fMainForm = New frmMain
Load fMainForm
fMainForm.Show
End Sub
'十进制转二进制
Public Function DectoBin(x As Integer) As String
Dim y(1 To 8) As String
Dim i As Integer
For i = 1 To 8
y(i) = "0"
Next i
i = 1
While (x \ 2)
y(i) = CInt(x Mod 2)
x = x \ 2
i = i + 1
Wend
y(i) = x
Dim s As String
For i = 8 To 1 Step -1
s = s & y(i)
Next i
DectoBin = s
End Function
'二进制转十进制
Public Function BintoDec(s As String) As Integer
Dim total, i As Integer
total = 0
For i = 8 To 1 Step -1
total = total + Mid(s, i, 1) * (2 ^ (8 - i))
Next i
BintoDec = total
End Function
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -