系统环境IDE:Visual BASIC 6语言VB执行IDE:仙盟创梦IDE核心代码完整代码VERSION 5.00 Begin VB.Form Form1 Caption 演示程序 DEMO ClientHeight 9345 ClientLeft 60 ClientTop 345 ClientWidth 14055 LinkTopic Form1 MaxButton 0 False MinButton 0 False ScaleHeight 9345 ScaleWidth 14055 StartUpPosition 1 所有者中心 Begin VB.Frame Frame5 BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty ForeColor H000000FF Height 1815 Left 9480 TabIndex 34 Top 7200 Width 4095 Begin VB.Label Label10 Caption 请先用 门锁软件 发卡确保发卡器与卡片是OK的不要关闭门锁软件然后打开本例程DEMO测试接口谢谢 BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty ForeColor H00C00000 Height 735 Left 240 TabIndex 36 Top 840 Width 3615 End Begin VB.Label Label14 Caption 温馨提示 BeginProperty Font Name 宋体 Size 15.75 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty ForeColor H000000FF Height 375 Left 1200 TabIndex 35 Top 240 Width 1935 End End Begin VB.Frame Frame4 Caption 最常用函数 Enabled 0 False Height 4695 Left 9480 TabIndex 20 Top 2280 Width 4095 Begin VB.CommandButton Command7 Caption 读取客人离店时间[GetGuestETimeByCardDataStr] Height 615 Left 240 TabIndex 28 Top 3960 Width 3615 End Begin VB.CommandButton Command6 Caption 读取客人卡锁号[GetGuestLockNoByCardDataStr] Height 615 Left 240 TabIndex 27 Top 3360 Width 3615 End Begin VB.CommandButton Command5 Caption 读取卡片类型[GetCardTypeByCardDataStr] Height 615 Left 240 TabIndex 26 Top 2760 Width 3615 End Begin VB.CommandButton Command4 Caption 挂失卡片[LimitCard] Height 495 Left 240 TabIndex 25 Top 2160 Width 3615 End Begin VB.CommandButton Command2 Caption 注销卡片[CardErase] Height 495 Left 240 TabIndex 24 Top 1680 Width 3615 End Begin VB.CommandButton cmdbuzzer Caption 蜂鸣[Buzzer] Height 495 Left 240 TabIndex 23 Top 240 Width 3615 End Begin VB.CommandButton cmdwritecard Caption 制宾客卡[GuestCard] Height 495 Left 240 TabIndex 22 Top 1200 Width 3615 End Begin VB.CommandButton cmdreadcard Caption 读取卡数据[ReadCard] Height 495 Left 240 TabIndex 21 Top 720 Width 3615 End End Begin VB.TextBox txtStrHex BackColor H8000000B Enabled 0 False BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 700 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty Height 375 Left 480 TabIndex 18 Text txtStrHex Top 6600 Width 8775 End Begin VB.CommandButton cmdExit Caption 退出 Height 495 Left 9720 TabIndex 16 Top 1560 Width 3735 End Begin VB.CommandButton cmdGetDllVer Caption 读DLL版本号[GetDllVersion] Height 495 Left 9720 TabIndex 15 Top 960 Width 3735 End Begin VB.Frame Frame3 Caption 使用说明 BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty ForeColor H000000FF Height 1815 Left 480 TabIndex 10 Top 7200 Width 8775 Begin VB.Label Label12 Caption 4,读DLL版本为测试动态库不涉及端口操作。 ForeColor H00008000 Height 255 Left 360 TabIndex 14 Top 1440 Width 6015 End Begin VB.Label Label9 Caption 3,客人代号是实现后卡覆盖前卡功能的一般默认为0即可 ForeColor H000000FF Height 255 Left 360 TabIndex 13 Top 1080 Width 5535 End Begin VB.Label Label8 Caption 2,按说明正确填写相应信息是能否发卡成功的关键步骤 ForeColor H00008000 Height 255 Left 360 TabIndex 12 Top 720 Width 5535 End Begin VB.Label Label7 Caption 1,USB端口打开之后, 才能进行发卡读卡等操作; ForeColor H000000FF Height 255 Left 360 TabIndex 11 Top 360 Width 5895 End End Begin VB.CommandButton Command1 Caption 第一步: 打开端口[initializeUSB] Height 735 Left 960 TabIndex 1 Top 1200 Width 3615 End Begin VB.Frame Frame1 Caption 端口操作 BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty ForeColor H000000FF Height 1335 Left 480 TabIndex 0 Top 840 Width 8775 Begin VB.CommandButton Command3 Caption 从现有卡片读取酒店标识 Height 375 Left 4680 TabIndex 31 Top 720 Width 3735 End Begin VB.TextBox txtCoID BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 700 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty Height 270 Left 6480 TabIndex 30 Text txtCoID Top 360 Width 1575 End Begin VB.Label Label23 Alignment 1 Right Justify Caption 酒店标识[coID] Height 255 Left 4560 TabIndex 32 Top 360 Width 1695 End End Begin VB.Frame Frame2 Caption 客人卡信息[注以下输入框没有做有效性检查请按提示输入] Enabled 0 False BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty ForeColor H000000FF Height 3855 Left 480 TabIndex 2 Top 2280 Width 8775 Begin VB.TextBox txtDai BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 700 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty Height 270 Left 2520 TabIndex 8 Text txtDai Top 2640 Width 855 End Begin VB.TextBox txtETime BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 700 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty Height 375 Left 2520 TabIndex 6 Text txtETime Top 1800 Width 3375 End Begin VB.TextBox txtLockNo BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 700 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty Height 270 Left 2520 TabIndex 4 Text txtLockNo Top 720 Width 1575 End Begin VB.Label Label2 Caption $Form1.frx:0000 Height 375 Left 240 TabIndex 33 Top 3120 Width 7575 End Begin VB.Label Label4 Caption 锁号必须以门锁软件-房间定义 最后一列为准。新的门锁软件可以导出锁号 ForeColor H000000FF Height 255 Left 960 TabIndex 17 Top 1200 Width 7455 End Begin VB.Label Label5 Caption 1-255循环 ForeColor H000000FF Height 255 Left 3480 TabIndex 9 Top 2640 Width 1575 End Begin VB.Label Label1 Alignment 1 Right Justify Caption 客人代[Dai] Height 255 Left 360 TabIndex 7 Top 2640 Width 1935 End Begin VB.Label Label29 Alignment 1 Right Justify Caption 预计退房时间[eTime] Height 255 Left 360 TabIndex 5 Top 1920 Width 1935 End Begin VB.Label Label27 Alignment 1 Right Justify Caption 锁号[LockNo] Height 255 Left 480 TabIndex 3 Top 720 Width 1815 End End Begin VB.Label Label6 Alignment 2 Center Caption 门锁接口函数例程DEMO新系统P50版 BeginProperty Font Name 宋体 Size 21.75 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty Height 495 Left 0 TabIndex 29 Top 120 Width 14175 End Begin VB.Label Label3 Caption 卡数据[CardHexStr] Height 255 Left 480 TabIndex 19 Top 6240 Width 2055 End End Attribute VB_Name Form1 Attribute VB_GlobalNameSpace False Attribute VB_Creatable False Attribute VB_PredeclaredId True Attribute VB_Exposed False 读取卡数据 Private Sub cmdreadcard_Click() If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard MsgBox 卡ID号 Mid(bufCard, 25, 8), 64 End Sub 制宾客卡 Private Sub cmdwritecard_Click() Dim llock As Byte 反锁标志 Dim pdoors As Byte 公共门标志 Dim dlsCoID As Long 酒店标识 Dim CardNo As Integer 卡号(0-15) Dim dai As Integer 客人代 Dim BTime As String 发卡时间,也就是电脑当前时间 Dim ETime As String 预计退房时间 Dim LockNo As String 锁号 If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard llock 0 pdoors 1 公共门标志 dlsCoID CLng(txtCoID.Text) 酒店标识 CardNo 0 dai CInt(txtDai.Text) Mod 256 客人代 BTime Format(Now, YYMMDDHHMM) 发卡时间 ETime Format(txtETime.Text, YYMMDDHHMM) 预计退房时间 LockNo txtLockNo.Text st GuestCard(flagUSB, dlsCoID, CardNo, dai, llock, pdoors, BTime, ETime, LockNo, bufHexStr) If flagUSB 1 Then Buzzer flagUSB, 20 写卡后鸣叫一声因为GuestCard函数本身不会有响声 txtStrHex.Text bufHexStr If st 0 Then MsgBox 调用发卡函数失败, 错误代号为: CStr(st), 16 Else MsgBox 调用发卡函数成功 Chr(10) Chr(10) 注意: 并不代表数据已经写到卡里, 建议停顿一秒钟后调用ReadCard Chr(10) 如果GuestCard与ReadCard的bufHexStr相同表示写卡成功, 64 End If End Sub 注销卡片 Private Sub Command2_Click() Dim dlsCoID As Long 酒店标识 If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard dlsCoID CLng(txtCoID.Text) 酒店标识 st CardErase(flagUSB, dlsCoID, bufHexStr) If flagUSB 1 Then Buzzer flagUSB, 20 写卡后鸣叫一声因为CardErase函数本身不会有响声 txtStrHex.Text bufHexStr If st 0 Then MsgBox 注销失败, 错误代号为: CStr(st), 16 Else MsgBox 注销成功, 64 End If End Sub 卡片挂失 Private Sub Command4_Click() Dim dlsCoID As Long 酒店标识 Dim limitNo As String * 4 挂失卡号 Dim dai As Integer 代 If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard dlsCoID CLng(txtCoID.Text) 酒店标识 CardNo CInt(txtCardNo.Text) Mod 16 卡号(0-15) dai CInt(txtDai.Text) Mod 256 客人代 BTime Format(Now, YYMMDDHHMM) 发卡时间 limitNo Chr(H60) Chr(H12) Chr(HD2) Chr(H91) 挂失卡号: 6012D291 st LimitCard(flagUSB, dlsCoID, CardNo, dai, BTime, limitNo, bufHexStr) If flagUSB 1 Then Buzzer flagUSB, 20 写卡后鸣叫一声因为LimitCard函数本身不会有响声 txtStrHex.Text bufHexStr If st 0 Then MsgBox 挂失卡片失败, 错误代号为: CStr(st), 16 Else MsgBox 调用挂失卡函数成功 Chr(10) 本例子挂失卡号为: 6012D291, 64 End If End Sub 读取卡片类型 Private Sub Command5_Click() Dim s As String Dim CardType As String * 16 If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard st GetCardTypeByCardDataStr(bufCard, CardType) If st 0 Then MsgBox 卡数据串无效, 错误代号为: CStr(st), 48 Else s Left(CardType, 1) If s 0 Then MsgBox 授权卡 ElseIf s 1 Then MsgBox 记录卡 ElseIf s 2 Then MsgBox 房号设置卡 ElseIf s 3 Then MsgBox 时间设置卡 ElseIf s 4 Then MsgBox 限制卡[挂失卡] ElseIf s 5 Then MsgBox 组号设置卡 ElseIf s 6 Then MsgBox 客人卡 ElseIf s 7 Then MsgBox 退房卡 ElseIf s 8 Then MsgBox 组控卡 ElseIf s 9 Then MsgBox 未知卡[无此类型] ElseIf s A Then MsgBox 应急卡 ElseIf s B Then MsgBox 总控卡 ElseIf s C Then MsgBox 楼栋卡 ElseIf s D Then MsgBox 楼层卡 ElseIf s E Then MsgBox 未知卡[无此类型] ElseIf s F Then MsgBox 空白卡 End If End If End Sub 读取客人卡锁号 Private Sub Command6_Click() Dim dlsCoID As Long 酒店标识 Dim LockNo As String * 16 If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard dlsCoID CLng(txtCoID.Text) 酒店标识 st GetGuestLockNoByCardDataStr(dlsCoID, bufCard, LockNo) If st 0 Then MsgBox 锁号: LockNo, 64 ElseIf st 1 Then MsgBox 卡数据串无效 Chr(10) bufCard, 48 ElseIf st 2 Then MsgBox 非本酒店卡 Chr(10) bufCard, 48 ElseIf st 3 Then MsgBox 不是客人卡 Chr(10) bufCard, 48 Else MsgBox 未知返回值: CStr(st) Chr(10) bufCard, 48 End If End Sub 读取客人卡离店时间 Private Sub Command7_Click() Dim dlsCoID As Long 酒店标识 Dim ETime As String * 16 If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard dlsCoID CLng(txtCoID.Text) 酒店标识 st GetGuestETimeByCardDataStr(dlsCoID, bufCard, ETime) If st 0 Then MsgBox 离店时间: ETime, 64 ElseIf st 1 Then MsgBox 卡数据串无效 Chr(10) bufCard, 48 ElseIf st 2 Then MsgBox 非本酒店卡 Chr(10) bufCard, 48 ElseIf st 3 Then MsgBox 不是客人卡 Chr(10) bufCard, 48 Else MsgBox 未知返回值: CStr(st) Chr(10) bufCard, 48 End If End Sub Private Sub Form_Load() flagUSB 1 默认为pro免驱 txtCoID 0 Cmdreset_Click End Sub Private Sub Option1_Click() flagUSB 0 有驱 End Sub Private Sub Option2_Click() flagUSB 1 pro免驱 End Sub 关闭程序 Private Sub cmdExit_Click() End End Sub 读取DLL版本信息 Private Sub cmdGetDllVer_Click() Dim s As String * 128 st GetDLLVersion(s) If st 0 Then MsgBox DLL版本号为 s, 64 Else MsgBox 读DLL版本号错误, 错误代码为 CStr(st), 48 End If End Sub USB初始化 Private Sub Command1_Click() st initializeUSB(1) If st 0 Then MsgBox 初始化USB端口失败, 错误代号为: CStr(st), 16 Else MsgBox 初始化USB端口成功, 64 Frame2.Enabled True Frame4.Enabled True End If End Sub 将输入框恢复到默认值 Private Sub Cmdreset_Click() txtCardNo 1 txtLockNo 01020A txtETime Format(Now 1, YYYY/MM/DD 14:00) txtDai 0 txtStrHex End Sub 蜂鸣器 Private Sub Cmdbuzzer_Click() Dim st As Integer st Buzzer(flagUSB, 50) 发卡器鸣叫50x10ms If st 0 Then MsgBox 蜂鸣失败, 错误代号为: CStr(st), 16 End If End Sub 从现有卡片读取酒店标识 Private Sub Command3_Click() Dim i As Long Dim s As String If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard If Mid(bufCard, 25, 8) FFFFFFFF Then txtCoID.Text MsgBox 此卡是空白卡请换一张能开门的卡, 48 Exit Sub End If s Mid(bufCard, 11, 4) i CLng(H s) Mod 16384 s Mid(bufCard, 8, 3) i i (CLng(H s) * 65536) txtCoID.Text CStr(i) End Sub人人皆为创造者共创方能共成长每个人都是使用者也是创造者是数字世界的消费者更是价值的生产者与分享者。在智能时代的浪潮里单打独斗的发展模式早已落幕唯有开放连接、创意共创、利益共享才能让个体价值汇聚成生态合力让技术与创意双向奔赴实现平台与伙伴的快速成长、共赢致远。原创永久分成共赴星辰大海原创创意共创、永久收益分成是东方仙盟始终坚守的核心理念。我们坚信每一份原创智慧都值得被尊重与回馈以永久分成锚定共创初心让创意者长期享有价值红利携手万千伙伴向着科技星辰大海笃定前行拥抱硅基 生命与数字智能交融的未来共筑跨越时代的数字文明共同体。东方仙盟拥抱知识开源共筑数字新生态在全球化与数字化浪潮中东方仙盟始终秉持开放协作、知识共享的理念积极拥抱开源技术与开放标准。我们相信唯有打破技术壁垒、汇聚全球智慧才能真正推动行业的可持续发展。开源赋能中小商户通过将前端异常检测、跨系统数据互联等核心能力开源化东方仙盟为全球中小商户提供了低成本、高可靠的技术解决方案让更多商家能够平等享受数字转型的红利。共建行业标准我们积极参与国际技术社区与全球开发者、合作伙伴共同制定开放协议 与技术规范推动跨境零售、文旅、餐饮等多业态的系统互联互通构建更加公平、高效的数字生态。知识普惠共促发展通过开源社区 、技术文档与培训体系东方仙盟致力于将前沿技术转化为可落地的行业实践赋能全球合作伙伴共同培育创新人才推动数字经济 的普惠式增长阿雪技术观在科技发展浪潮中我们不妨积极投身技术共享。不满足于做受益者更要主动担当贡献者 。无论是分享代码、撰写技术博客还是参与开源项目 维护改进每一个微小举动都可能蕴含推动技术进步的巨大能量。东方仙盟是汇聚力量的天地我们携手在此探索硅基 生命为科技进步添砖加瓦。Hey folks, in this wild tech - driven world, why not dive headfirst into the whole tech - sharing scene? Dont just be the one reaping all the benefits; step up and be a contributor too. Whether youre tossing out your code snippets , hammering out some tech blogs, or getting your hands dirty with maintaining and sprucing up open - source projects, every little thing you do might just end up being a massive force that pushes tech forward. And guess what? The Eastern FairyAlliance is this awesome place where we all come together. Were gonna team up and explore the whole silicon - based life thing, and in the process, well be fueling the growth of technology
酒店门锁V10SDK接口vb窗口-幽冥大陆(一百28)—东方仙盟
系统环境IDE:Visual BASIC 6语言VB执行IDE:仙盟创梦IDE核心代码完整代码VERSION 5.00 Begin VB.Form Form1 Caption 演示程序 DEMO ClientHeight 9345 ClientLeft 60 ClientTop 345 ClientWidth 14055 LinkTopic Form1 MaxButton 0 False MinButton 0 False ScaleHeight 9345 ScaleWidth 14055 StartUpPosition 1 所有者中心 Begin VB.Frame Frame5 BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty ForeColor H000000FF Height 1815 Left 9480 TabIndex 34 Top 7200 Width 4095 Begin VB.Label Label10 Caption 请先用 门锁软件 发卡确保发卡器与卡片是OK的不要关闭门锁软件然后打开本例程DEMO测试接口谢谢 BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty ForeColor H00C00000 Height 735 Left 240 TabIndex 36 Top 840 Width 3615 End Begin VB.Label Label14 Caption 温馨提示 BeginProperty Font Name 宋体 Size 15.75 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty ForeColor H000000FF Height 375 Left 1200 TabIndex 35 Top 240 Width 1935 End End Begin VB.Frame Frame4 Caption 最常用函数 Enabled 0 False Height 4695 Left 9480 TabIndex 20 Top 2280 Width 4095 Begin VB.CommandButton Command7 Caption 读取客人离店时间[GetGuestETimeByCardDataStr] Height 615 Left 240 TabIndex 28 Top 3960 Width 3615 End Begin VB.CommandButton Command6 Caption 读取客人卡锁号[GetGuestLockNoByCardDataStr] Height 615 Left 240 TabIndex 27 Top 3360 Width 3615 End Begin VB.CommandButton Command5 Caption 读取卡片类型[GetCardTypeByCardDataStr] Height 615 Left 240 TabIndex 26 Top 2760 Width 3615 End Begin VB.CommandButton Command4 Caption 挂失卡片[LimitCard] Height 495 Left 240 TabIndex 25 Top 2160 Width 3615 End Begin VB.CommandButton Command2 Caption 注销卡片[CardErase] Height 495 Left 240 TabIndex 24 Top 1680 Width 3615 End Begin VB.CommandButton cmdbuzzer Caption 蜂鸣[Buzzer] Height 495 Left 240 TabIndex 23 Top 240 Width 3615 End Begin VB.CommandButton cmdwritecard Caption 制宾客卡[GuestCard] Height 495 Left 240 TabIndex 22 Top 1200 Width 3615 End Begin VB.CommandButton cmdreadcard Caption 读取卡数据[ReadCard] Height 495 Left 240 TabIndex 21 Top 720 Width 3615 End End Begin VB.TextBox txtStrHex BackColor H8000000B Enabled 0 False BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 700 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty Height 375 Left 480 TabIndex 18 Text txtStrHex Top 6600 Width 8775 End Begin VB.CommandButton cmdExit Caption 退出 Height 495 Left 9720 TabIndex 16 Top 1560 Width 3735 End Begin VB.CommandButton cmdGetDllVer Caption 读DLL版本号[GetDllVersion] Height 495 Left 9720 TabIndex 15 Top 960 Width 3735 End Begin VB.Frame Frame3 Caption 使用说明 BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty ForeColor H000000FF Height 1815 Left 480 TabIndex 10 Top 7200 Width 8775 Begin VB.Label Label12 Caption 4,读DLL版本为测试动态库不涉及端口操作。 ForeColor H00008000 Height 255 Left 360 TabIndex 14 Top 1440 Width 6015 End Begin VB.Label Label9 Caption 3,客人代号是实现后卡覆盖前卡功能的一般默认为0即可 ForeColor H000000FF Height 255 Left 360 TabIndex 13 Top 1080 Width 5535 End Begin VB.Label Label8 Caption 2,按说明正确填写相应信息是能否发卡成功的关键步骤 ForeColor H00008000 Height 255 Left 360 TabIndex 12 Top 720 Width 5535 End Begin VB.Label Label7 Caption 1,USB端口打开之后, 才能进行发卡读卡等操作; ForeColor H000000FF Height 255 Left 360 TabIndex 11 Top 360 Width 5895 End End Begin VB.CommandButton Command1 Caption 第一步: 打开端口[initializeUSB] Height 735 Left 960 TabIndex 1 Top 1200 Width 3615 End Begin VB.Frame Frame1 Caption 端口操作 BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty ForeColor H000000FF Height 1335 Left 480 TabIndex 0 Top 840 Width 8775 Begin VB.CommandButton Command3 Caption 从现有卡片读取酒店标识 Height 375 Left 4680 TabIndex 31 Top 720 Width 3735 End Begin VB.TextBox txtCoID BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 700 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty Height 270 Left 6480 TabIndex 30 Text txtCoID Top 360 Width 1575 End Begin VB.Label Label23 Alignment 1 Right Justify Caption 酒店标识[coID] Height 255 Left 4560 TabIndex 32 Top 360 Width 1695 End End Begin VB.Frame Frame2 Caption 客人卡信息[注以下输入框没有做有效性检查请按提示输入] Enabled 0 False BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty ForeColor H000000FF Height 3855 Left 480 TabIndex 2 Top 2280 Width 8775 Begin VB.TextBox txtDai BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 700 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty Height 270 Left 2520 TabIndex 8 Text txtDai Top 2640 Width 855 End Begin VB.TextBox txtETime BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 700 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty Height 375 Left 2520 TabIndex 6 Text txtETime Top 1800 Width 3375 End Begin VB.TextBox txtLockNo BeginProperty Font Name 宋体 Size 10.5 Charset 134 Weight 700 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty Height 270 Left 2520 TabIndex 4 Text txtLockNo Top 720 Width 1575 End Begin VB.Label Label2 Caption $Form1.frx:0000 Height 375 Left 240 TabIndex 33 Top 3120 Width 7575 End Begin VB.Label Label4 Caption 锁号必须以门锁软件-房间定义 最后一列为准。新的门锁软件可以导出锁号 ForeColor H000000FF Height 255 Left 960 TabIndex 17 Top 1200 Width 7455 End Begin VB.Label Label5 Caption 1-255循环 ForeColor H000000FF Height 255 Left 3480 TabIndex 9 Top 2640 Width 1575 End Begin VB.Label Label1 Alignment 1 Right Justify Caption 客人代[Dai] Height 255 Left 360 TabIndex 7 Top 2640 Width 1935 End Begin VB.Label Label29 Alignment 1 Right Justify Caption 预计退房时间[eTime] Height 255 Left 360 TabIndex 5 Top 1920 Width 1935 End Begin VB.Label Label27 Alignment 1 Right Justify Caption 锁号[LockNo] Height 255 Left 480 TabIndex 3 Top 720 Width 1815 End End Begin VB.Label Label6 Alignment 2 Center Caption 门锁接口函数例程DEMO新系统P50版 BeginProperty Font Name 宋体 Size 21.75 Charset 134 Weight 400 Underline 0 False Italic 0 False Strikethrough 0 False EndProperty Height 495 Left 0 TabIndex 29 Top 120 Width 14175 End Begin VB.Label Label3 Caption 卡数据[CardHexStr] Height 255 Left 480 TabIndex 19 Top 6240 Width 2055 End End Attribute VB_Name Form1 Attribute VB_GlobalNameSpace False Attribute VB_Creatable False Attribute VB_PredeclaredId True Attribute VB_Exposed False 读取卡数据 Private Sub cmdreadcard_Click() If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard MsgBox 卡ID号 Mid(bufCard, 25, 8), 64 End Sub 制宾客卡 Private Sub cmdwritecard_Click() Dim llock As Byte 反锁标志 Dim pdoors As Byte 公共门标志 Dim dlsCoID As Long 酒店标识 Dim CardNo As Integer 卡号(0-15) Dim dai As Integer 客人代 Dim BTime As String 发卡时间,也就是电脑当前时间 Dim ETime As String 预计退房时间 Dim LockNo As String 锁号 If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard llock 0 pdoors 1 公共门标志 dlsCoID CLng(txtCoID.Text) 酒店标识 CardNo 0 dai CInt(txtDai.Text) Mod 256 客人代 BTime Format(Now, YYMMDDHHMM) 发卡时间 ETime Format(txtETime.Text, YYMMDDHHMM) 预计退房时间 LockNo txtLockNo.Text st GuestCard(flagUSB, dlsCoID, CardNo, dai, llock, pdoors, BTime, ETime, LockNo, bufHexStr) If flagUSB 1 Then Buzzer flagUSB, 20 写卡后鸣叫一声因为GuestCard函数本身不会有响声 txtStrHex.Text bufHexStr If st 0 Then MsgBox 调用发卡函数失败, 错误代号为: CStr(st), 16 Else MsgBox 调用发卡函数成功 Chr(10) Chr(10) 注意: 并不代表数据已经写到卡里, 建议停顿一秒钟后调用ReadCard Chr(10) 如果GuestCard与ReadCard的bufHexStr相同表示写卡成功, 64 End If End Sub 注销卡片 Private Sub Command2_Click() Dim dlsCoID As Long 酒店标识 If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard dlsCoID CLng(txtCoID.Text) 酒店标识 st CardErase(flagUSB, dlsCoID, bufHexStr) If flagUSB 1 Then Buzzer flagUSB, 20 写卡后鸣叫一声因为CardErase函数本身不会有响声 txtStrHex.Text bufHexStr If st 0 Then MsgBox 注销失败, 错误代号为: CStr(st), 16 Else MsgBox 注销成功, 64 End If End Sub 卡片挂失 Private Sub Command4_Click() Dim dlsCoID As Long 酒店标识 Dim limitNo As String * 4 挂失卡号 Dim dai As Integer 代 If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard dlsCoID CLng(txtCoID.Text) 酒店标识 CardNo CInt(txtCardNo.Text) Mod 16 卡号(0-15) dai CInt(txtDai.Text) Mod 256 客人代 BTime Format(Now, YYMMDDHHMM) 发卡时间 limitNo Chr(H60) Chr(H12) Chr(HD2) Chr(H91) 挂失卡号: 6012D291 st LimitCard(flagUSB, dlsCoID, CardNo, dai, BTime, limitNo, bufHexStr) If flagUSB 1 Then Buzzer flagUSB, 20 写卡后鸣叫一声因为LimitCard函数本身不会有响声 txtStrHex.Text bufHexStr If st 0 Then MsgBox 挂失卡片失败, 错误代号为: CStr(st), 16 Else MsgBox 调用挂失卡函数成功 Chr(10) 本例子挂失卡号为: 6012D291, 64 End If End Sub 读取卡片类型 Private Sub Command5_Click() Dim s As String Dim CardType As String * 16 If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard st GetCardTypeByCardDataStr(bufCard, CardType) If st 0 Then MsgBox 卡数据串无效, 错误代号为: CStr(st), 48 Else s Left(CardType, 1) If s 0 Then MsgBox 授权卡 ElseIf s 1 Then MsgBox 记录卡 ElseIf s 2 Then MsgBox 房号设置卡 ElseIf s 3 Then MsgBox 时间设置卡 ElseIf s 4 Then MsgBox 限制卡[挂失卡] ElseIf s 5 Then MsgBox 组号设置卡 ElseIf s 6 Then MsgBox 客人卡 ElseIf s 7 Then MsgBox 退房卡 ElseIf s 8 Then MsgBox 组控卡 ElseIf s 9 Then MsgBox 未知卡[无此类型] ElseIf s A Then MsgBox 应急卡 ElseIf s B Then MsgBox 总控卡 ElseIf s C Then MsgBox 楼栋卡 ElseIf s D Then MsgBox 楼层卡 ElseIf s E Then MsgBox 未知卡[无此类型] ElseIf s F Then MsgBox 空白卡 End If End If End Sub 读取客人卡锁号 Private Sub Command6_Click() Dim dlsCoID As Long 酒店标识 Dim LockNo As String * 16 If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard dlsCoID CLng(txtCoID.Text) 酒店标识 st GetGuestLockNoByCardDataStr(dlsCoID, bufCard, LockNo) If st 0 Then MsgBox 锁号: LockNo, 64 ElseIf st 1 Then MsgBox 卡数据串无效 Chr(10) bufCard, 48 ElseIf st 2 Then MsgBox 非本酒店卡 Chr(10) bufCard, 48 ElseIf st 3 Then MsgBox 不是客人卡 Chr(10) bufCard, 48 Else MsgBox 未知返回值: CStr(st) Chr(10) bufCard, 48 End If End Sub 读取客人卡离店时间 Private Sub Command7_Click() Dim dlsCoID As Long 酒店标识 Dim ETime As String * 16 If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard dlsCoID CLng(txtCoID.Text) 酒店标识 st GetGuestETimeByCardDataStr(dlsCoID, bufCard, ETime) If st 0 Then MsgBox 离店时间: ETime, 64 ElseIf st 1 Then MsgBox 卡数据串无效 Chr(10) bufCard, 48 ElseIf st 2 Then MsgBox 非本酒店卡 Chr(10) bufCard, 48 ElseIf st 3 Then MsgBox 不是客人卡 Chr(10) bufCard, 48 Else MsgBox 未知返回值: CStr(st) Chr(10) bufCard, 48 End If End Sub Private Sub Form_Load() flagUSB 1 默认为pro免驱 txtCoID 0 Cmdreset_Click End Sub Private Sub Option1_Click() flagUSB 0 有驱 End Sub Private Sub Option2_Click() flagUSB 1 pro免驱 End Sub 关闭程序 Private Sub cmdExit_Click() End End Sub 读取DLL版本信息 Private Sub cmdGetDllVer_Click() Dim s As String * 128 st GetDLLVersion(s) If st 0 Then MsgBox DLL版本号为 s, 64 Else MsgBox 读DLL版本号错误, 错误代码为 CStr(st), 48 End If End Sub USB初始化 Private Sub Command1_Click() st initializeUSB(1) If st 0 Then MsgBox 初始化USB端口失败, 错误代号为: CStr(st), 16 Else MsgBox 初始化USB端口成功, 64 Frame2.Enabled True Frame4.Enabled True End If End Sub 将输入框恢复到默认值 Private Sub Cmdreset_Click() txtCardNo 1 txtLockNo 01020A txtETime Format(Now 1, YYYY/MM/DD 14:00) txtDai 0 txtStrHex End Sub 蜂鸣器 Private Sub Cmdbuzzer_Click() Dim st As Integer st Buzzer(flagUSB, 50) 发卡器鸣叫50x10ms If st 0 Then MsgBox 蜂鸣失败, 错误代号为: CStr(st), 16 End If End Sub 从现有卡片读取酒店标识 Private Sub Command3_Click() Dim i As Long Dim s As String If rdCard True Then Exit Sub 先读卡 txtStrHex.Text bufCard If Mid(bufCard, 25, 8) FFFFFFFF Then txtCoID.Text MsgBox 此卡是空白卡请换一张能开门的卡, 48 Exit Sub End If s Mid(bufCard, 11, 4) i CLng(H s) Mod 16384 s Mid(bufCard, 8, 3) i i (CLng(H s) * 65536) txtCoID.Text CStr(i) End Sub人人皆为创造者共创方能共成长每个人都是使用者也是创造者是数字世界的消费者更是价值的生产者与分享者。在智能时代的浪潮里单打独斗的发展模式早已落幕唯有开放连接、创意共创、利益共享才能让个体价值汇聚成生态合力让技术与创意双向奔赴实现平台与伙伴的快速成长、共赢致远。原创永久分成共赴星辰大海原创创意共创、永久收益分成是东方仙盟始终坚守的核心理念。我们坚信每一份原创智慧都值得被尊重与回馈以永久分成锚定共创初心让创意者长期享有价值红利携手万千伙伴向着科技星辰大海笃定前行拥抱硅基 生命与数字智能交融的未来共筑跨越时代的数字文明共同体。东方仙盟拥抱知识开源共筑数字新生态在全球化与数字化浪潮中东方仙盟始终秉持开放协作、知识共享的理念积极拥抱开源技术与开放标准。我们相信唯有打破技术壁垒、汇聚全球智慧才能真正推动行业的可持续发展。开源赋能中小商户通过将前端异常检测、跨系统数据互联等核心能力开源化东方仙盟为全球中小商户提供了低成本、高可靠的技术解决方案让更多商家能够平等享受数字转型的红利。共建行业标准我们积极参与国际技术社区与全球开发者、合作伙伴共同制定开放协议 与技术规范推动跨境零售、文旅、餐饮等多业态的系统互联互通构建更加公平、高效的数字生态。知识普惠共促发展通过开源社区 、技术文档与培训体系东方仙盟致力于将前沿技术转化为可落地的行业实践赋能全球合作伙伴共同培育创新人才推动数字经济 的普惠式增长阿雪技术观在科技发展浪潮中我们不妨积极投身技术共享。不满足于做受益者更要主动担当贡献者 。无论是分享代码、撰写技术博客还是参与开源项目 维护改进每一个微小举动都可能蕴含推动技术进步的巨大能量。东方仙盟是汇聚力量的天地我们携手在此探索硅基 生命为科技进步添砖加瓦。Hey folks, in this wild tech - driven world, why not dive headfirst into the whole tech - sharing scene? Dont just be the one reaping all the benefits; step up and be a contributor too. Whether youre tossing out your code snippets , hammering out some tech blogs, or getting your hands dirty with maintaining and sprucing up open - source projects, every little thing you do might just end up being a massive force that pushes tech forward. And guess what? The Eastern FairyAlliance is this awesome place where we all come together. Were gonna team up and explore the whole silicon - based life thing, and in the process, well be fueling the growth of technology