Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


3188 / 9994 ←次へ | 前へ→

【10068】Re:処理方法について
発言  VBWASURETA  - 07/12/6(木) 13:36 -

引用なし
パスワード
   ▼やすじ さん:
こんにちは。

すみませんもう少し確認したいのですが、

>  lErr = ReadDevice16("KML", "D10WORD", rData1, 1)
>  ’↑簡易DLLのプログラム。データの読み込みを行っている。
>  ’KMLは設定データの名前で、D10WORDはデータが入っている場所で、
>  ’rData1は読み出したデータを格納する場所、最後の1はデータの数となっている


このDLLで何のデータを読んでいるのでしょうか?
CSV・テーブル・Iniファイルとか色々あるかと思いますが。
後、dllからのレスポンスがどれぐらいとか見られてますか?

それと一括取得は試されたということですがこんな感じの
取得でしょうか?


サンプル例:

'格納するグローバル変数
Public m_dlldata() As Integer
'読み込み中ロック
Public m_DllLock As Boolean

Sub form1のタイマーイベント()
  Dim getdata As Integer
  
  If dll_Read_Process = True Then
    '読み込み中ロック解除
    m_DllLock = False
    getdata = Get_dll_data( 1 ) 'フォーム1のデータを取り出す
  End If
End Sub

'/**dllの一括に読み込む処理**/
Function dll_Read_Process() As Boolean
  On Error GoTo dll_Read_Error
  dll_Read_Process = False
  Const maxdata As Integer = 5
  Dim i As Integer
  Dim lErr As Integer
  
  '読み込み中ロック
  m_DllLock = True
  
  '格納データ動的配列定義
  ReDim m_dlldata(maxdata)

  For i = 1 To UBound(m_dlldata)
    lErr = ReadDevice16("KML", "D10WORD", m_dlldata(i), 1)
    If lErr <> 0 Then
      m_dlldata(i) = -1 'サンプルとしてエラー戻り値を-1にする
    End If
  Next i
  
  dll_Read_Process = True
Exit Function
'エラー処理
dll_Read_Error:
  dll_Read_Process = False
  MsgBox Err.Number & ":" & Err.Description, vbCritical + vbOKOnly, "dll読み込みエラー"
End Function

'/**変数に代入された内容を取り出す処理**/
Function Get_dll_data(FormIndex As Integer) As Integer
  On Error GoTo Get_dll_data_Error
  Dim m_getdata As Integer

  If (m_DllLock = True) Then
    m_getdata = -1 '読み込み中の場合エラー
  ElseIf (FormIndex <= UBound(m_dlldata)) Then '必要データ分配列が用意されているか判定
    m_getdata = m_dlldata(FormIndex) '正常の場合
  Else
    m_getdata = -1 'エラーの場合
  End If
  '結果を代入
  Get_dll_data = m_getdata
Exit Function
'エラー処理
Get_dll_data_Error:
  m_getdata = -1
  Get_dll_data = m_getdata
End Function

912 hits

【10021】処理方法について やすじ 07/11/26(月) 15:08 質問[未読]
【10022】Re:処理方法について VBWASURETA 07/11/28(水) 9:30 発言[未読]
【10025】Re:処理方法について やすじ 07/11/29(木) 11:58 発言[未読]
【10028】Re:処理方法について VBWASURETA 07/11/29(木) 16:12 発言[未読]
【10055】Re:処理方法について やすじ 07/12/5(水) 9:33 質問[未読]
【10058】Re:処理方法について VBWASURETA 07/12/5(水) 11:01 回答[未読]
【10063】Re:処理方法について VBWASURETA 07/12/6(木) 9:22 発言[未読]
【10064】Re:処理方法について やすじ 07/12/6(木) 11:05 お礼[未読]
【10068】Re:処理方法について VBWASURETA 07/12/6(木) 13:36 発言[未読]
【10073】Re:処理方法について やすじ 07/12/6(木) 15:28 発言[未読]

3188 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078201
(SS)C-BOARD v3.8 is Free