HAMLOG プログラム開発室


新着表示
タイトル
記事No
投稿日
投稿者

Re: dbf_rcount
111
2009/07/21(Tue) 22:05:55
JO1SIM 出島
太田様
JO1SIM出島です。
私はVBではなく、VC(しかもMFC)派なので詳しくはありませんが・・・。

dbf_openやVdbf_openの返す値はどうでしょうか?
正常にオープンされていれば SUCCESS(==0) が帰ってきていると
おもうのですが、いかがでしょうか?

C++ならば、Pathの文字列の中の \ は \\じゃないとダメとか…なんですが!


> こんにちは。
> 昨日よりVB2008を勉強中です。
> WndProc を使用しての Hamlogよりのデータ取得は出来る様になりました。
>
> 次にHDBに直接アクセスするテストをしていますが入り口でつまずいています。
> 下記のコードで ver = GetThdllVersion() に関してはVB6と同じ値が取れました。
>
> C:\Windows\System32\Hamlog.dll
> タイムスタンプ 値
> 2008-06-19 331776
> 2009-05-23 332544
>
> しかしレコード件数の取得がダメです。
> sd = dbf_open("C:\HAMLOG\Hamlog.hdb", Th)
> recno = dbf_rcount(Th)
> ...では ゼロ件と表示されます。
>
>
> sd = Vdbf_open("C:\HAMLOG\Hamlog.hdb", log)
> recno = Vdbf_rcount(log)
> ...ではマイナスになったり極端に大きな数値になったりでダメです。
>
> どなたか上手く動作しておられたらご指導お願いします。
> (図表モードでもインデントが取れなくて見難いですね)
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者
参照先
dbf_rcount
110
2009/07/21(Tue) 17:17:45
JA2BQX 太田

こんにちは。
昨日よりVB2008を勉強中です。
WndProc を使用しての Hamlogよりのデータ取得は出来る様になりました。

次にHDBに直接アクセスするテストをしていますが入り口でつまずいています。
下記のコードで ver = GetThdllVersion() に関してはVB6と同じ値が取れました。

C:\Windows\System32\Hamlog.dll
タイムスタンプ 値
2008-06-19 331776
2009-05-23 332544

しかしレコード件数の取得がダメです。
sd = dbf_open("C:\HAMLOG\Hamlog.hdb", Th)
recno = dbf_rcount(Th)
...では ゼロ件と表示されます。


sd = Vdbf_open("C:\HAMLOG\Hamlog.hdb", log)
recno = Vdbf_rcount(log)
...ではマイナスになったり極端に大きな数値になったりでダメです。

どなたか上手く動作しておられたらご指導お願いします。
(図表モードでもインデントが取れなくて見難いですね)



Imports System
Imports System.Windows.Forms
Imports System.Runtime.InteropServices

Public Class Form1

Structure TDBFh
Dim lupdt() As Byte
Dim Rcount As Integer
Dim hsize As Integer
Dim recnm As Integer
Dim fHdl As Integer
Dim Temp() As Byte
Public Sub Initialize()
ReDim lupdt(4)
ReDim Temp(260)
End Sub
End Structure


Structure TThLog
Dim Qso() As Byte
Public Sub Initialize()
ReDim Qso(3927)
End Sub
End Structure

_
Private Shared Function GetThdllVersion() As Integer
End Function


_
Private Shared Function dbf_open(ByRef s As String, ByRef d As TDBFh) As Integer 'ByValをByRefに変更
End Function

_
Private Shared Sub dbf_close(ByRef d As TDBFh)
End Sub

_
Private Shared Function dbf_rcount(ByRef d As TDBFh) As Integer
End Function


_
Private Shared Function Vdbf_open(ByRef s As String, ByRef d As TThLog) As Integer
End Function

_
Private Shared Sub Vdbf_close(ByRef d As TThLog)
End Sub

_
Private Shared Function Vdbf_rcount(ByRef d As TThLog) As Integer
End Function

Public log As TThLog
Public Th As TDBFh

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim ver As Int32
Dim sd As Int32
Dim recno As Int32

ver = GetThdllVersion()
Label1.Text = ver

'dbf_close(Th)

'sd = dbf_open("C:\HAMLOG\Hamlog.hdb", Th)
'recno = dbf_rcount(Th)
'dbf_close(Th)

sd = Vdbf_open("C:\HAMLOG\Hamlog.hdb", log)
recno = Vdbf_rcount(log)
Vdbf_close(log)

Label2.Text = recno

End Sub


End Class
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: データの表示方法をご教授ください
109
2009/07/19(Sun) 13:59:03
JA1RNR 吉田康太郎
JR1CPB 稲村さん、こんにちは。

はい、無料で利用できるので助かっています。
おかげさまで、太田さん、大塚さんから貴重なソースの公開をしていただき、Hamlogデータのやり取りの基本ができるようになりました。
最近は7MHzの伝搬状態がよくありませんので、少しプログラミング勉強をしたいと思い取り掛かかりました。

> .NET ExpressEditionは無料の開発環境なので、プログラミングの
> 勉強には最適ですね.
> 私もVB.NETでTh505apiを利用するプログラミングで躓いたままに
> なっていましたが、大塚さんと吉田さんのスレッドを見てまたや
> る気になりました。Hi
> おかげさまで、hdbからの交信データの読み出しや、入力ウィンド
> ウの項目の受け渡しができるようになりました。
> 簡単な交信データの集計をするプログラムを作ったりしています。
>
> 吉田さん、ご健闘ください。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: データの表示方法をご教授ください
108
2009/07/19(Sun) 13:46:06
JA1RNR 吉田康太郎
JA2GRC/3/大塚さん、はじめまして。

太田さんからWndprocのご助言を、さらに大塚さんから具体的なソースを公開していただき、まことに有難うございました。
おかげさまでHamlogデータの取り込みができました。
重ねて御礼を申し上げます。

私には大変難解でした。大塚さんの作製された部分をデッドコピーさせていただき、Hamlogデータを取り込めることができました。

私は、PSK31の運用に、MixWを使っています。
MixWのログファイルは、簡単な構造ですので、Hamlogで読めるCSV形式に変換するプログラムをVB2008(2005)で作成しHamlogに結合しています。

そこで、もう少しスマートにデータのやり取りができないものかと思い今回の課題に取り掛かった次第です。

大塚さん、太田さん重ねて御礼申し上げます。

> 昨日、KANHAM 2009でJA2BQX/太田さんにお会いして、この開発室で、
> VB2008 Ex. Ed. に関する質問が出ていることを聞きました。
>
> もし、まだ、解決されていないのなら、以下の記事を参考にされて
> ください。
>
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: データの表示方法をご教授ください
107
2009/07/19(Sun) 10:46:32
jr1cpb/稲村
.NET ExpressEditionは無料の開発環境なので、プログラミングの
勉強には最適ですね.
私もVB.NETでTh505apiを利用するプログラミングで躓いたままに
なっていましたが、大塚さんと吉田さんのスレッドを見てまたや
る気になりました。Hi
おかげさまで、hdbからの交信データの読み出しや、入力ウィンド
ウの項目の受け渡しができるようになりました。
簡単な交信データの集計をするプログラムを作ったりしています。

吉田さん、ご健闘ください。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re: データの表示方法をご教授ください
106
2009/07/19(Sun) 09:28:27
JA2GRC/3 大塚

JA1RNR/吉田さん、JA2GRC/3/大塚です

昨日、KANHAM 2009でJA2BQX/太田さんにお会いして、この開発室で、
VB2008 Ex. Ed. に関する質問が出ていることを聞きました。

もし、まだ、解決されていないのなら、以下の記事を参考にされて
ください。

私も、この3月からVB2008 Ex. Ed. を勉強し始めたばかりの初心者
ですが、同じ問題で躓きました。 VB.Netの実例は少ないので、
結構苦労しました。

今は快適に動いていますので、参考になればどうぞ。

http://hirotaka929.cocolog-nifty.com/blog/2009/06/hamlog-60a0.html
(URLは1行にして読み出してください)

前半が、Hamlogへの登録、後半がHamlogからの読み出しです。

それでは、ご健闘を!

PS: VB2008 Ex. Ed. の仲間が増えて嬉しいことです。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re: データの表示方法をご教授ください
105
2009/07/17(Fri) 17:23:37
JA2BQX 太田

こんにちは。
午前中に何回も投稿しようとしてその度にエラーだったのでメールで失礼しました。 
その後、内容を書き換えたら投稿出来ました。

私もVB6で、今回の件が分からずに苦労してJA4管内の方に教えていただいた事がありました。
上手く動作するようになると良いですね。

明日、早朝より関ハムに出かけるので留守になります。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: データの表示方法をご教授ください
104
2009/07/17(Fri) 16:46:05
JA1RNR 吉田康太郎
JA2BQX 太田様

私宛のメールも拝見しました。
いろいろお手数をおかけいたし有り難うございます。

メールでご紹介いただきましたサンプルプログラムなども参考にして、勉強いたします。
取り急ぎお礼まで。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: データの表示方法をご教授ください
103
2009/07/17(Fri) 15:45:57
JA1RNR 吉田康太郎
JA2BQX 太田様
こんにちは。
早速ご助言いただきまして有り難うございます。

> 下記にフックについての説明があります。
> http://www.kab-studio.biz/Programing/Codian/DLL_Hook_SClass/06.html
>
> 以前、ここの「開発室」にも話題として出た事があったと思いますが
> リニューアルの前だったようで現在は無くなっていますね。
>
> WndProc などをキーワードで検索して見て下さい。
>
> 下記が良いかも知れません。
> プロセス間通信(SendMessage)
> 受信側のコード
>
> URLをコピペしたらサーバーエラーで投稿出来なかったので
>
> 「プロセス間通信(SendMessage)」キーワードで検索して見て下さい。

ご紹介くださいましたものを、検索して調べました。
初心者には難解なことばかりで、まだ解決には至っていません。

これから時間をかけて、勉強していきます。
有り難うございました。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re: データの表示方法をご教授ください
102
2009/07/17(Fri) 11:42:09
JA2BQX 太田

こんにちは。

> 私は、Microsoft Visual Basic 2008 Express Editionを勉強中のプログラミング初心者で、Windows APIの知識はありません。(Win XP Home Edition SP3を使っています。)

私はVB6なので肝心な部分でのお役にはたてないと思いますが
ソースを拝見した限りでは「フック」関係が無いような...。

下記にフックについての説明があります。
http://www.kab-studio.biz/Programing/Codian/DLL_Hook_SClass/06.html

以前、ここの「開発室」にも話題として出た事があったと思いますが
リニューアルの前だったようで現在は無くなっていますね。

WndProc などをキーワードで検索して見て下さい。

下記が良いかも知れません。
プロセス間通信(SendMessage)
受信側のコード

URLをコピペしたらサーバーエラーで投稿出来なかったので

「プロセス間通信(SendMessage)」キーワードで検索して見て下さい。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop

S