投稿者 魔界の仮面弁士  (社会人) 投稿日時 2009/1/22 12:41:13
> 機器はアメリカ製でDLLのドライバの製作者もアメリカ人のようです。
そのドライバの仕様が書かれていないので、推測でしか答えようがないのですが、たとえば
それが Declare して使う API であり、引数がいわゆる LPTSTR であるならば、VB 側では
ByVal String を使うのではなく、ByRef Byte を使うようにしてください。
(あるいは、ByVal Long でポインタを指定するのも有効です)

> としたら、文字列sに(26,32)と入りました!
入れるだけなら、Byte() から変換するのではなく、
 s = ChrW(&H201A)
あるいは、
 s = ChrW(32 * &H100 + 26)
で十分かと。


> 送信しているデータをUnicodeの2バイトの文字を1バイトずつByteにして見てみました。
それは具体的には、どのようにして Byte 変換されたのでしょうか?