以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  串口初始化错误  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=194197)

--  作者:YDS
--  发布时间:2024/11/18 13:57:00
--  串口初始化错误
Dim ck As String = args(0).ToUpper()
Dim btl As Integer
Dim dataBitsParam As Integer
Dim parityParam As Parity
Dim stopBitsParam As StopBits
Dim result As Integer = 0

\' 尝试从args数组中获取对应参数,若获取失败或不符合要求则进行相应处理
If String.IsNullOrWhiteSpace(ck) OrElse Not Integer.TryParse(args(1), btl) OrElse btl <= 0 Then
    \' 参数无效,result 已设置为 0
Else 
    \' 解析数据位参数,若解析失败则使用默认值8
    If Not Integer.TryParse(args(2), dataBitsParam) Then
        dataBitsParam = 8
    End If 
    
    \' 解析校验位参数,若解析失败则使用默认值Parity.None
    If Not Enum.TryParse(args(3), parityParam) Then
        parityParam = Parity.None
    End If
    
    \' 解析停止位参数,若解析失败则使用默认值StopBits.One
    If Not Enum.TryParse(args(4), stopBitsParam) Then
        stopBitsParam = StopBits.One
    End If
    
    If Ports.ContainsKey(ck) Then
        Ports(ck).Close()
    Else
        Ports.Add(ck)
    End If 
    
    With Ports(ck)
        .Parity = parityParam
        .StopBits = stopBitsParam
        .DataBits = dataBitsParam
        .BaudRate = btl
        .Handshake = Handshake.None
        .ReadBufferSize = 2048
        .WriteBufferSize = 1024
        .Open()
    End With
    result = 1
End If


以上代码一直报错,请帮忙看一下!

--  作者:有点蓝
--  发布时间:2024/11/18 14:18:00
--  
报什么错?执行到哪一句代码出错?
--  作者:YDS
--  发布时间:2024/11/18 14:21:00
--  
If Not Enum.TryParse(args(3), parityParam) Then
--  作者:有点蓝
--  发布时间:2024/11/18 14:24:00
--  
parityParam传入的是什么数据?
--  作者:YDS
--  发布时间:2024/11/18 14:32:00
--  
字符串 Parity.None
--  作者:有点蓝
--  发布时间:2024/11/18 14:40:00
--  
If Not [Enum].TryParse(args(3), parityParam) Then