写了一段一下代码:
' --- 探测一下本机MAC地址'
Dim nics() As System.Net.NetworkInformation.NetworkInterface = System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces
Vars("mac地址") = nics(0).GetPhysicalAddress.Tostring '获得MAC地址
If HardWareInfo.Ready = False '如果没有初始化
HardWareInfo.Initialize '初始化HardWareInfo,提取硬件信息
End If
With HardWareInfo.CPU
Vars("电脑序列号") = .ProcessorId 'CPU序列号
End With
With HardWareInfo.BaseBoard
Vars("电脑序列号") = Vars("电脑序列号") & .SerialNumber '主板序列号'
End With
With HardWareInfo.Disk
Vars("电脑序列号") = Vars("电脑序列号") & .Signature '硬盘序列号'
End With
With HardWareInfo.Bios
Vars("电脑序列号") = Vars("电脑序列号") & .SerialNumber 'BIOS序列号'
End With
Vars("电脑序列号") = Vars("电脑序列号") & Vars("mac地址")
If len(Vars("电脑序列号")) > 250 Then
Vars("电脑序列号") = Vars("电脑序列号").Substring( 0 ,250) '截取左边250字符
End If
没加最后三句话时未曾发现问题,但加了最后三句话时,发布前运行没问题,发布后运行就出现提示:
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2022.8.18.1
错误所在事件:窗口,登录窗体,AfterLoad
详细错误信息:
索引和长度必须引用该字符串内的位置。
参数名: length
请问,这可能是什么原因