一括表示

THW_update 投稿者:JA2BQX 太田 

何時もお世話になりありがとうございます。

HamlogのQSOデータの更新には下記を使わせていただいています。
Declare Function THW_update Lib "THW2VBNET.dll" (ByVal handle1 As Integer, ByVal handle2 As Integer, ByVal r As Integer, ByVal p As Integer, ByRef m As Integer) As Integer

実際のコード中では下記の様に記載し「確認メッセージ」を非表示としています。
sd = THW_update(Th, Th2, Rno, IsQSOdata, KAKUNIN_NO + 1) '確認なし


Hamlogを起動させておいて、データを書き換え(update)る為に
メニューの「オプション」「環境設定」「設定2」で
「QSOデータの共有オープン」にチェックつけて、Hamlogを起動させたまま
SetDbsShare(1) で共有させておくと「確認メッセージ」が必ず表示されます。

これはHELPに下記の記載がありますので仕様です。
> ※QSOデータの共有とは、一つのQSOデータを複数のTurbo HAMLOG/Winで使用する機能です。
> ※QSOデータの共有を設定した場合は、環境設定2でデータ登録時確認ありのチェックを外した場合でも、
> 重複して書き込むことを防ぐため、QSOデータの修正登録時は確認メッセージを表示します。

THW_update2とかの新関数を作成していただいてQSOデータの共有時でも
確認メッセージを表示しないようには出来ないでしょうか?
勿論リスクは承知した上で十分に注意して使用します。

これは
hamlog50.dll , THW2VBNET.dll の双方に関係するのかと思いますので
今まで以上にお手数をお掛けする事になりますがご検討頂ければ幸いです。

2014/02/27(Thu) 21:07:35  [No.488]


Re: THW_update 投稿者:JG1MOU浜田 

こんばんは!

> 実際のコード中では下記の様に記載し「確認メッセージ」を非表示としています。
> sd = THW_update(Th, Th2, Rno, IsQSOdata, KAKUNIN_NO + 1) '確認なし

http://hamlog.no.coocan.jp/mou/soft/hl50dll.zip
DLLをちょっと修正しましたので、最後のパラメータに32を代入して
試してみていただけますか。
たしか、最後のパラメータは、定数ではなく参照渡しだったような・・。
Pascalでは参照渡し、Cではポインタ渡しで宣言してます。

imsg = &H20
sd = THW_update(Th, Th2, Rno, IsQSOdata, imsg)

2014/02/28(Fri) 20:58:28  [No.492]


Re: THW_update 投稿者:JA2BQX 太田 

浜田さん、 こんばんは。
ありがとうございます。
WinXpで試して見ましたがこちらのコードが悪いのかエラーが出ます。
明日、早朝より西日本ハムフェアに行くので帰宅する3/4にゆっくり
宣言部分も含めてテストさせて頂きます。

JO1SIM・出島さん、新Hamlog50.dll に合わせて THW2VBNET.dll を
修正が必要ならお願い出来ますか。

2014/02/28(Fri) 21:42:03  [No.493]


Re: THW_update 投稿者:JG1MOU浜田 

> WinXpで試して見ましたがこちらのコードが悪いのかエラーが出ます。

ちょっと修正し、マスターデータ修正でも同様としました。
http://hamlog.no.coocan.jp/mou/soft/hl50dll.zip

こちらではHAMLOG本体で、最後の引数を0x20とすると共有オープンに
チェックを入れても確認メッセージなしで保存してくれます。

> 明日、早朝より西日本ハムフェアに行くので帰宅する3/4にゆっくり
> 宣言部分も含めてテストさせて頂きます。

いいなぁ。お楽しみください。

2014/02/28(Fri) 22:33:03  [No.494]


Re: THW_update 投稿者:JA2BQX 太田 

おはようございます。
気になり出かける前に WinXP , VB2010 にて再度テストしました。

全て Hamlog50.dll の関数使用ですが、「確認MSG」は出なくて
update出来ました。
但し「インデックスの再構築が必要」が2回出ます。これを出さない方法はありましたでしょうか?
(これは、その処理を追加すれば良いのでしょうね....)


Win7でのテストは帰宅後にします。
こちらは多分、THW2VBNET.dll を修正していただく必要があるかと思いますが。

2014/03/01(Sat) 04:21:10  [No.495]


Re: THW_update 投稿者:JA2BQX 

出かける直前にテスト...。

Win7、VB2010 x86 でテスト。
THW2VBNET.dll の THW_update そのままで大丈夫のようです。

2014/03/01(Sat) 05:26:04  [No.496]


Re: THW_update 投稿者:JA1RNR 吉田 

浜田さん、太田さん、こんにちは。

横から失礼します。


> 出かける直前にテスト...。
>
> Win7、VB2010 x86 でテスト。
> THW2VBNET.dll の THW_update そのままで大丈夫のようです。

私も、HAMLOGを開いた状態で、Updateのテストプログラムを使って、QSOデータ共有時のTHW_updateの動作を、
Win8 VB2010 x86 で、確認しました。(Hamlog50.dll Ver. 52302)

If CheckBox1.Checked = True Then
imsg = 0 ' 確認表示あり
Else
imsg = &H20 ' 確認表示なし
End If

THW_update(Th, Th2, Rno, IsQSOdata, imsg)

正常にUpdateしました。

2014/03/02(Sun) 15:24:30  [No.499]


Re: THW_update 投稿者:JO1SIM・出島 

太田OM,浜田OM

JO1SIMでしまです。
おつかれさまです。

返事が遅くなって済みません。

すでにご確認いただいているかと思いますが、THW2VBNET.dllのほうは、浜田OMのほうでご対応いただいた機能変更部分のみであれば、そのままご利用いただけるはずです。(浜田OMのおっしゃるとおり、imsgは参照渡しですが、単純なスカラー値へのポインタなので問題なく動いているはずです。)

どうもうまくパラメータが渡せないようだ…見たいな点がありましたらご連絡ください!


> おはようございます。
> 気になり出かける前に WinXP , VB2010 にて再度テストしました。
>
> 全て Hamlog50.dll の関数使用ですが、「確認MSG」は出なくて
> update出来ました。
> 但し「インデックスの再構築が必要」が2回出ます。これを出さない方法はありましたでしょうか?
> (これは、その処理を追加すれば良いのでしょうね....)
>
>
> Win7でのテストは帰宅後にします。
> こちらは多分、THW2VBNET.dll を修正していただく必要があるかと思いますが。
>

2014/03/01(Sat) 11:49:45  [No.497]


Re: THW_update 投稿者:JA2BQX 太田 

こんにちは。
皆さん、色々とありがとうございました。
今回の機能追加を有効に利用させていただこうと思います。

2014/03/04(Tue) 15:21:59  [No.503]