2017-05-21 14 views
0

コードを使用してSIMカードをロックするには、ボタンをクリックしてからモデムを再起動し、nothigを実行します。私はそれを使用するには、ロックされた状態のシムロックが必要です。ATコマンドを使用してSIMロックを有効にするVB.net

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
    SerialPort1.PortName = "COM8" 
    SerialPort1.BaudRate = 9600 
    SerialPort1.Parity = Parity.None 
    SerialPort1.StopBits = StopBits.One 
    SerialPort1.DataBits = 8 
    SerialPort1.Handshake = Handshake.RequestToSend 
    SerialPort1.DtrEnable = True 
    SerialPort1.RtsEnable = True 
    SerialPort1.NewLine = vbCrLf 
End Sub 

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
    SerialPort1.Open() 
    If SerialPort1.IsOpen() Then 
     SerialPort1.Write("AT" & vbCrLf) 

     SerialPort1.Write("AT+CPIN=1234" & vbCrLf) 
     SerialPort1.Write("AT+CLCK='SC',1,'1234'" & vbCrLf) 
     MsgBox("LOcked") 
    Else 
     MsgBox("Port not available") 
    End If 
End Sub 




No error Return, SIM CArd Still Unlocked. 

Thanks 
+0

すでにシリアルポートがある場合は、SerialPort1.Write( "AT + CLCK =" "SC" "、" 123 "" "&vbCrLf)をダブルクォートする必要があります –

答えて

0

ここではいくつかのことが間違っているため、作業を開始する前に大きな変更を加える必要があります。

最も深刻なのは、モデムから返送された応答コードが完全に解析されていないことです。 それを修正するまでは何も動作しません。this answerのすべてが適用されます。 V.250の第5章のすべてを読んでください。また

(しかし、あなたは読書を実施し、モデムからの応答のを解析する前に次のことを対処する気にしないでください)、コマンドラインは、単一の\r復帰文字、およびないのvbCrLfで終了する必要があります。文字列引数は、二重引用符(AT+CPIN="1234"AT+CLCK="SC",1,"1234"など)を使用して二重引用符(")でカプセル化する必要があります。

+0

SIMカードのロックを有効にする必要があるPINコード? 'AT + CLCK =" SC "、1'は動作しません – MrCalvin

関連する問題