タイトル : Re^2: Chr関数 VB2010でおかしい? 投稿日 : 2017/08/02(Wed) 18:30 投稿者 : MSAKA
魔界の仮面弁士さん 早々の調査ありがとうございます > &H66 は可読文字ですが、 > &H00 や &H01 は非可読文字なので、 > 文字として目視確認できるものではないですよ。 >>> 仰せのとおりです > > > > Chr(&H0) → " " (Nll?) > > Chr(&H1) → " (ダブルコーテションが1個) > > NULL は文字列の終端として扱われるデータなので、 > &H0 と &H1 の結果が逆になりそうなものですが、 > それはさておき。 >>> そのとおりです すみません > > 上記の結果は、どのようにして確認したものなのでしょうか。 >>> デッバッグの途中でStopさせて変数を確認したものです > > ひとまず下記のコードで実行してみましたが、どちらも正常に > &H0 や &H1 が格納されているように見えます。 > > > [VB2010] > Dim a As Char = Chr(&H66) > Dim b As Char = Chr(&H0) > Dim c As Char = Chr(&H1) > > Dim x As String = Hex(Asc(a)) > Dim y As String = Hex(Asc(b)) > Dim z As String = Hex(Asc(c)) > > > [VBA] > Dim a As String: a = Chr(&H66) > Dim b As String: b = Chr(&H0) > Dim c As String: c = Chr(&H1) > > Dim x As String: x = Hex(Asc(a)) > Dim y As String: y = Hex(Asc(b)) > Dim z As String: z = Hex(Asc(c)) > > > > > VB2010 でシリアル通信に使おうとしているのですが受付ません > > シリアル通信ということは、System.IO.Ports.SerialPort クラスですかね。 > 今回問題となっている処理は、どのようなコードなのでしょうか? > >>> sample_0008 と言うものをWebからダウンロード 2010用に変換したものです > > > 尚 当然ですが2003 2010どちらもコードは同じ値です(&HFE → 254 &H66 → 253 等) > > 253 なら &HFD のはずですが…。 > &HFE は 254 ですが、&H66 は 102 ですよね。 >>> 私のミスです 仰せのとおりです 早々の調査 ご指導ありがとうございます 疑問については上記それぞれに記載いたしました よく確認したつもりですがミスが多くすみません 提供されたコードでもう一度確認してみます |