HAMLOG開発室は、HAMLOGに関連したプログラム開発(C、パスカル、VB言語等、又はDLL)についての
専用BBSです。プログラム言語に関する投稿以外は通常のHAMLOG相談室に投稿して下さい。
HAMLOG開発室BBS

Re: Th527api 投稿者:JA2BQX 太田  《URL》

こんにちは。

int cmmd;
HWND Hwnd1, Hwnd2;
COPYDATASTRUCT cds;
char buffs[256];

char WinAppClassName[] = "TThwin";

Hwnd1 = FindWindow(WinAppClassName, NULL);

if(Hwnd1 == NULL)

{ ui->lbl_test->setText("No");
} else
{ ui->lbl_test->setText("Yes");
}

ここは何とかクリア。
Hamlog が起動していると ラベルに Yes が表示される。
起動していなければ ラベルに No が表示される。


ここからが問題で....

cmmd = 1;
//
コールサインを指定
cmmd |= THW_FOCUS;
cmmd |= THW_ENTER;
cds.dwData = cmmd;
strcpy(buffs, "JG1MOU"); // コールサイン文字列
cds.cbData = strlen(buffs) + 1; // 文字列の長さ(ヌル文字分を+1)
cds.lpData = &buffs[0]; // 文字列のポインタ

HWND hWindow = QMainWindow->winId();
Hwnd2 = SendMessage(Hwnd1, WM_COPYDATA,(WPARAM)hWindow, (LPARAM)&cds); // <==== この行でエラーになる


説明によれば

* SendMessage()の三つ目のパラメータについて
あなたが作成する Turbo HAMLOG/Winを呼び出すアプリケーションの、ウインドウ
ハンドルを渡す。または、Turbo HAMLOG/Winからデータを得たいウインドウのハンドルを渡す

...と Hamlog の Th527apiの HamlogMs.txt に書かれています。

JTDXのメインウインドウのハンドルが必要なのかな?
それともQSOデータを転送処理をする logqso ウインドウのハンドルが必要なのかな?

ここで行き詰まっています。

2020/03/24(Tue) 17:24:34  [No.886]


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)
- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)
Call 名前 ※必須
文字色
Eメール
タイトル sage
URL
メッセージ 手動改行 強制改行 図表モード
メッセージには上記と同じURLを書き込まないで下さい
画像File  (130kBまで)
暗証キー (英数字で8文字以内)
投稿キー (投稿時 投稿キー を入力してください)
プレビュー