2010-11-21 19 views
3

このコードを使用してC#でGSMモデムまたは電話にコマンドを送信しようとしましたが、動作しません。誰が私に何をすべきか教えてもらえますか?C#でATコマンドを使用する方法

SerialPort sp = new SerialPort(); 
sp.PortName = "COM42"; 
sp.Open(); 
sp.Write("ATD09364191752"); 
+0

これはc#とは関係がありませんので、atコマンドの辞書やSMSのエンコード方法を調べる必要があります – user287107

答えて

3
  1. あなたはATDコマンドの後に改行を書いていません。 (私はあなたがする必要があると思う)
  2. sp.Flush()を呼ぶことはないので、コマンドがバッファーで止まっている可能性があります。 Write()コールの後にこのコールを追加してみてください。
+0

フラッシュしません。はい、改行では、WriteLine()を使用します。電話番号が0から始まり、国際電話をかけるのに十分な数字を持っていない国で少し曖昧です。 –

2

ボーレート、ハンドシェイクプロトコルなどのすべてのデフォルト設定に依存しています。モデムのドキュメントをチェックしてください。

+0

はい、ハンドシェイク。またはDtrEnableプロパティ。 –

関連する問題