バーコードリーダーがRS-232C用なので実験しているのですが
まずハイパーターミナルできちんとデータが表示される環境で
Ver262にて試しています。
COM OPENして、INPUT#1 して表示しても、データが出ません。
どなたか、includeなどの初期設定に関してご存知の方ご教示願います。
RS-232Cのプログラムをしていますが・・・
別の所で、下記の書き込みをしていますが・・・
>ボーレート等の設定は、AB2コンパイラで行うか、レジストリの操作になります。
つまり、プログラムで制御するにはレジストリの操作が必要です。
注意点として、プログラム起動前にレジストリの設定が完了している必要があります。
別プログラムでレジストリを設定しExecで目的のプログラムを起動してください。
昔書いたプログラムを少し修正したので、動作確認はしていません。
エラーが出なければ良いけど・・・
うまく行かないなら、コードをUpすれば、レスが付きやすいと思いますよ。
>ボーレート等の設定は、AB2コンパイラで行うか、レジストリの操作になります。
つまり、プログラムで制御するにはレジストリの操作が必要です。
注意点として、プログラム起動前にレジストリの設定が完了している必要があります。
別プログラムでレジストリを設定しExecで目的のプログラムを起動してください。
昔書いたプログラムを少し修正したので、動作確認はしていません。
エラーが出なければ良いけど・・・
コード: 全て選択
hKey = HKEY_CURRENT_USER
lpSubKey = "Software\Discoversoft\ActiveBasic"
lpValueName = "RS232C"
lpSubKey = lpSubKey + chr$(NULL)
lpValueName = lpValueName + chr$(NULL)
samDesired = KEY_ALL_ACCESS
phkResult = 0
rc = RegOpenKeyEx(hKey,lpSubKey,0,samDesired,phkResult)
If rc = ERROR_SUCCESS Then
lpType = REG_SZ
drReserved = 0
'キーの内容について
'○○○○○○○
'││││││└─フロー制御 0:無し 1:RTS,CTS制御
'│││││└──フロー制御 0:無し 1:XON,XOFF制御
'││││└───ストップビット 0:1bit 1:1.5bit 2:2bit
'│││└────パリティ 0:無し 1:奇数 2:偶数
'││└─────キャラクタ長 7:7bit 8:8bit
'│└──────ボーレート0:110 1:300 2:600 3:1200 4:2400 5:4800 6:9600 7:14400 8:19200
'│ 9:38400 10:56000 11:57600 12:115200 13:128000 14:256000
'└───────Port 1:1 2:2 3:3
SetRSSpeed$ = "1 6 7 2 0 0 0"
regstr$ = SetRSSpeed$ + chr$(NULL)
lpcbData = Len(regstr$)
rc = RegSetValueEx(phkResult,lpValueName,drReserved,lpType,regstr$,lpcbData)
If rc = ERROR_SUCCESS Then
rc = RegCloseKey(phkResult)
If rc = ERROR_SUCCESS Then
Else
Print "クローズ失敗"
EndIf
Else
Print "書き込みに失敗"
EndIf
Else
Print "オープン失敗"
EndIf