Back
新着表示
タイトル
記事No
投稿日
投稿者
: Re: CQ 1 2 のチェックボックスの操作
: 569
: 2014/09/19(Fri) 21:27:13
: JG1MOU浜田
> VC++ でHamlogとのやり取りするものを取り組んでいます > CQ 1 2 のチェックボックスの操作(アプリからHamlog操作)が分かりません。DLLの仕様書Th523api以降に追加されているためだと思いますが。受信はコマンド115 で一括取得できますので、コマンド15で操作できるかやってみますがDXチェックも含めてうまくいきません。ちなみにDXの操作は25 26で可能なためこれら3件もコマンドが割り振られているのかも知れないのですが。よろしくお願いいたします。 CQ 1 2 のチェックボックスの操作は、未実装でした。
ちょっと作ってみました。お試しください。
http://hamlog.no.coocan.jp/mou/soft/Hamlogw.zip コマンド25
文字列の先頭バイトが1又は'1'
入力ウインドウのCQのチェックボックスをON
文字列の先頭バイトが2又は'2'
入力ウインドウの1のチェックボックスをON
文字列の先頭バイトが3又は'3'
入力ウインドウの2のチェックボックスをON
文字列の先頭バイトが上記以外
入力ウインドウのDXのチェックボックスをON
コマンド26
文字列の先頭バイトが1又は'1'
入力ウインドウのCQのチェックボックスをOFF
文字列の先頭バイトが2又は'2'
入力ウインドウの1のチェックボックスをOFF
文字列の先頭バイトが3又は'3'
入力ウインドウの2のチェックボックスをOFF
文字列の先頭バイトが上記以外
入力ウインドウのDXのチェックボックスをOFF
このスレッドは管理者によって ロック されていますので、返信並びに編集は出来ません!
タイトル
記事No
投稿日
投稿者
: Re: sendmessageで受信できず
: 568
: 2014/09/19(Fri) 18:30:36
: JA9AOB 銅子
> データの読み取りがうまくできていません. VBは良くわからないのですが、myhwnd のメッセージ処理にWM_COPYDAで送られてきますの、これを横取りします。VC++では OnWndMsg(UINT message, WPARAM wParam, LPARAM lParam, LRESULT* pResult) でメッセージを捕捉しますがVBにも同じようなものがあるはずですが、これをやっておられますか。 message がWM_COPYDATAの時の lParam が cds のアドレスになっています。 コマンドを送るとき X = SendMessage(Hwnd1, WM_COPYDATA, myhwnd, cds) となっていますが、 VC++では Result = ::SendMessage(*pWndPrev, WM_COPYDATA, (WPARAM)this->GetSafeHwnd(), (LPARAM)&cds); cdsはアドレスで送らないといけないのですが 単に cds になっていますが、これはアプリケーションからの送信がうまくいっているのでいいのかな?。
このスレッドは管理者によって ロック されていますので、返信並びに編集は出来ません!
タイトル
記事No
投稿日
投稿者
: CQ 1 2 のチェックボックスの操作
: 567
: 2014/09/19(Fri) 09:37:15
: JA9AOB 銅子
VC++ でHamlogとのやり取りするものを取り組んでいます CQ 1 2 のチェックボックスの操作(アプリからHamlog操作)が分かりません。DLLの仕様書Th523api以降に追加されているためだと思いますが。受信はコマンド115 で一括取得できますので、コマンド15で操作できるかやってみますがDXチェックも含めてうまくいきません。ちなみにDXの操作は25 26で可能なためこれら3件もコマンドが割り振られているのかも知れないのですが。よろしくお願いいたします。
このスレッドは管理者によって ロック されていますので、返信並びに編集は出来ません!
タイトル
記事No
投稿日
投稿者
: Re: sendmessageで受信できず
: 566
: 2014/09/10(Wed) 10:43:56
: JP7CZE 川辺
ちょっと忙しくて手を付けてませんが,太田さんのプログラムを参考にすると, 私のプログラムで,SendMessageの定義, Declare Function SendMessage Lib "user32" Alias "SendMessageA" _ (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, _ lParam As Any) As Long で,lParamの型が,Any になっているのが原因のようです. 送信の場合には問題無かったのですが,受信の場合には受け取りがうまくいっていないのではないかと思います. あとで,型を COPYDATASTRUCT に修正してやってみます.
このスレッドは管理者によって ロック されていますので、返信並びに編集は出来ません!
タイトル
記事No
投稿日
投稿者
: Re: sendmessageで受信できず
: 565
: 2014/09/06(Sat) 09:34:39
: JP7CZE 川辺
JA2BQX 太田さん> VB2008でのサンプルソースなら私のHPにおいてありますが。 了解です. 参考にさせていただきます. ありがとうございました. わからないことがありましたら,また質問させてもらいます.
このスレッドは管理者によって ロック されていますので、返信並びに編集は出来ません!
タイトル
記事No
投稿日
投稿者
参照先
:
Re: sendmessageで受信できず
:
564
:
2014/09/06(Sat) 08:15:16
:
JA2BQX 太田
:
JP7CZE 川辺さん、こんにちは。> VB6で,WM_COPYDATA.txt をもとに,Hamlogのデータ入力ウィンドウとのやり取りを行なおうとしています. VB2008でのサンプルソースなら私のHPにおいてありますが。 これから出かけるので簡単ですみません。
このスレッドは管理者によって ロック されていますので、返信並びに編集は出来ません!
タイトル
記事No
投稿日
投稿者
: sendmessageで受信できず
: 563
: 2014/09/06(Sat) 01:01:40
: JP7CZE 川辺
VB6で,WM_COPYDATA.txt をもとに,Hamlogのデータ入力ウィンドウとのやり取りを行なおうとしています. アプリケーションからの送信の場合には,コールサインの入力や保存もできているのですが, データの読み取りがうまくできていません. Type COPYDATASTRUCT dwData As Long cbData As Long lpData As String ' void * のつもり End Type Declare Function SendMessage Lib "user32" Alias "SendMessageA" _ (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, _ lParam As Any) As Long Function GetFromHAMLOG(Command As Long) As String Dim cmmd As Long Dim Hwnd1, Hwnd2, myhwnd As Long Dim cds As COPYDATASTRUCT Dim cbuff As String * 512 Dim X As Long Hwnd1 = FindWindow("TThwin", vbNullString) If Hwnd1 < 1 Then ' ハムログが起動していない Exit Function End If Call AppActivate("Turbo HAMLOG", 0) cds.dwData = Command cds.cbData = 0 cds.lpData = vbNullString myhwnd = FormTempLog.hwnd '作成中のプログラムのハンドル X = SendMessage(Hwnd1, WM_COPYDATA, myhwnd, cds) GetFromHAMLOG = cds.lpData End Function これを msg = GetFromHAMLOG(112) で実行すると,本来なら,QTHのデータが帰ってくるはずですが,うまくいきません. SendMessageの戻り値は,0以外の数字(たとえば 10749274)が帰ってきて問題ないようです. 戻り値は, cds.cbData : 0 cds.dwData : 112 cds.lpData : "" となっていて,dwData は,呼び出す前のままで,0または1になっていません. dwDataが変わっていないということは,データを受け取っていないとも思いますが,myhwndがおかしいのか,どうすればいいのか,ちょっと困っています. よろしくご教示願います.
このスレッドは管理者によって ロック されていますので、返信並びに編集は出来ません!
タイトル
記事No
投稿日
投稿者
:
FTDX3000
:
561
:
2014/09/03(Wed) 07:35:45
:
jh7opt
日頃、ハムログには大変お世話になっております。 FTDX3000の接続がうまくいきません。 指導のほど、よろしくお願いします。 OS:WIN8 小池正幸
このスレッドは管理者によって ロック されていますので、返信並びに編集は出来ません!
タイトル
記事No
投稿日
投稿者
: Re: MFC Ctime を VB2010 で読みたい
: 560
: 2014/08/08(Fri) 06:25:13
: JA2BQX 太田
こんにちは。 お手数をお掛けしました。 00 00 80 A9 C3 B8 53 00 00 00 00 ==> 2014/07/06 12:34 80 から 53 の5バイトでは無くてA9からの4バイトを 10進数に直しMFCのCTimeの基準値である "1970/01/01 09:00:00" 'JST に10進数に直した秒数を加算することで 求める事が出来ました。
このスレッドは管理者によって ロック されていますので、返信並びに編集は出来ません!