HAMLOG プログラム開発室


一括表示
タイトル
記事No
投稿日
投稿者

QSOデータの共有オープンで
928
2021/08/29(Sun) 10:07:21
JL1GYY もき
FT8を始めてGLも増えてきたのもあり昔作ったプログラムに
ディジタルのモードの追加を含め改定をしています。
基本的に読み込みだけなので共有オープンも便利かと思い
使用できる様にしてみたのですが
今まではGLのインデックスを自身のプログラム実行時に作成して
オープンする様にしていたのですが共有時は
インデックス作成は出来ない(?)(共有時はもちろん作成はしたくない)
のですが何か良い手法等があれば教えて頂きたいと思い
投稿させて頂きました。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re: QSOデータの共有オープンで
929
2021/08/29(Sun) 19:23:26
JA2BQX 太田

こんばんは。

> 今まではGLのインデックスを自身のプログラム実行時に作成して
> オープンする様にしていたのですが共有時は
> インデックス作成は出来ない(?)(共有時はもちろん作成はしたくない)
> のですが何か良い手法等があれば教えて頂きたいと思い
> 投稿させて頂きました。

念の為に使用言語を書いて下さい。
「共有オープン」との事ですがどういう環境下で何をするソフトを作成中かが分かりません。
1台のPCで Hamlog を同時に2ケ起動なのか、ネットワークでつながった複数PCで起動している Hamlog なのか...とか。

参考までに Th527api の HAMLOG50.txt に下記の記載があります。

------------------------------------------------------------------------------
BOOL WINAPI SetDbsShare(const int i);
function SetDbsShare(const i: Integer): Boolean;
概 要:HamlogOpen()を呼び出す前に、共有オープンの設定をする。
引 数:i
1以上を指定すると共有オープン。0で現在の状況を得るだけ。
戻り値:Trueが返れば共有モード。Falseで非共有(排他)

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

Re: QSOデータの共有オープンで
930
2021/08/29(Sun) 20:36:03
JL1GYY もき
delphiを使用しています。
動作していたプログラムに共有関係を足しました。
HAMLOG自体の起動は1つで自分で作成したソフトでの話になります。
ksetの値も確認しており共有モードの設定もできています。
GLのインデックス作成がHAMLOG本体で手動の為
今まで自分のプログラムでインデックス作成を
行っていましたが共有オープンをするとインデックスの作成で
エラーとなるので共有時はインデックスの作成を回避していますが
共有時にインデックスが構築できないので何か良い手法があればと
思った次第です。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re: QSOデータの共有オープンで
931
2021/08/30(Mon) 09:27:22
JA2BQX 太田

こんにちは。

コードの提示をして下さい。
「言葉」だけでの説明では理解できない部分があります。

「共有時のインデックスの作成」部分のコードと、その時の条件。
「環境設定」での「QSOデータ共有」の設定(有り、無しを変えてみて)、
ソフト側で Hamlog_Open をする/しない....と条件を変えてみて
Hamlog は起動している/いない....と条件を変えてみて...など。


私のVB2010のテストでは上記の条件を色々組み合わせてもGLのインデックス作成は出来ますが...。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: QSOデータの共有オープンで
933
2021/08/30(Mon) 19:07:15
JL1GYY もき
アドバイス有難うございます。
何か問題がありそうなので土日になりますが
もう一度条件を振って確認してみます。
浜田OMから別の手法を書いていただいたので
何とかなりそうです。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: QSOデータの共有オープンで
935
2021/09/04(Sat) 15:22:48
JL1GYY もき
HELPに共有でQSOデータが他でOPENされている場合は
インデックスの再構築は出来ないと記載されていました。
舌足らずの上、出来ない内容の質問をしてしまい
お手数をおかけして申し訳ありませんでした。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: QSOデータの共有オープンで
932
2021/08/30(Mon) 16:37:41
JG1MOU浜田
共有の場合はあまりテストしたことが無いのですが、MakeIndex()を
呼び出す前に、HamlogClose()を呼び出す必要があると思います。

var cdsBff: TCOPYDATASTRUCT;
cdsBff.cbData := 0;
cdsBff.dwData := 27; // HamlogClose
SendMessage(ThwHwnd, WM_COPYDATA, Handle, LPARAM(@cdsBff));
MakeIndex();
cdsBff.dwData := 28; // HamlogOpen
SendMessage(ThwHwnd, WM_COPYDATA, Handle, LPARAM(@cdsBff));

うまくいかなかったらごめんなさい。
hQSLでは、共有モードでない場合はこのコマンドを使ってHAMLOGに
フィイルを閉じさせ、QSOデータを操作しています。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: QSOデータの共有オープンで
934
2021/08/30(Mon) 19:12:01
JL1GYY もき
サンプルプログラム有難うございます。
WM_COPYDATAを使用する事は考えられませんでした。
元プログラムに何かありそうなので今度の土日にそちらを
確認したうえで実験してみます。
ありがとうございました。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: QSOデータの共有オープンで
936
2021/09/04(Sat) 15:23:45
JL1GYY もき
HELPに記載されていました。
出来ない内容の質問をしてしまい
お手数をおかけして申し訳ありませんでした。
サンプルを書いて頂いたのですが
HAMLOG以外のプログラムの起動状態や他PCからの状態の判断が出来ないので
GLインデックスの構築は考えない様にします。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop