JT linker行方不明を直す

症状はJT linkerのウィンドウがどこにも見えなくなるという状態です。

JTlinkerがイベントハンドラで何か不具合があって、何らかのイベントを受けたときにあやまった値をジオメトリに書いてしまい、それがアプリ初期値として .ini ファイルに書き出されてしまいます。

この初期化ファイルはここにあります:

C:\Users\ユーザー名\AppData\Local\JA2GRC\JT_Linker

実際には「ユーザー名」には皆さんがお使いのログイン時のユーザー名が入ります。

また普通ドライブはC:だと思いますが、それ以外のドライブにWindowsをインストールしているとDとかEの場合もあり得ます。

エクスプローラーからだと、オプションで隠しファイルやシステムフォルダなどを表示するオプションをオンにしていないと表示されません。

 

行方不明になってしまったときの対応です。

エディタで上記のフォルダにあるJT_Linker.iniファイルを開き、最初の方にある内容を手で修正・保存します。

私の場合はこんな内容になっていました。

[Window Positions]
Left=-32000
Top=-32000
Width=160
Height=39

まず、左上の位置が-32000, -32000です。さらにWidthxHeightが160×39と、これはタイトルバーの最小サイズだと思われます。これを適当な数字に直してやります。

LeftとRightは、たとえばそれぞれ100に

WidthとHeightはとりあえず800×500程度に。

[Window Positions]
Left=100
Top=100
Width=800
Height=500

書き換えたら同じ名前で上書き保存します。(.txtが付かないように注意)

これでJT_linker.exeを開き直すと画面の左上に、ちょっと大きめ?に表示されるはずです。

位置とサイズを適当にドラッグして修正して、一度終了して保存してやってください。

以下は開発者の方の掲示板に匿名で書き込んだ内容とほぼ同一です。

開発者の方向けです。

これが発生しないようにするにはイベントハンドラ内でジオメトリの操作で何かおかしな事をしていないかを調べる必要があります。あるいは、初期化の過程で何らかのエラーが起きて前回保存を読み損ねた結果、変な値が入っているとか、値の更新保存時に変な値が入れられてしまっている可能性があります。

対処的には、 /missing_reinit とでもいうコマンドラインオプションを作って、これがあると初期値ファイルを上記のような適当な値に再初期化してくれるようにしておくとか。(エクスプローラーで上記 .ini ファイルを表示させる方法をご自身で思いつかない方には、エクスプローラーのオプションを変更してください、とは言いがたいので、バッチファイルなどで簡単に直せるようにしておくのが安心です。)

もしくは、なんのイベントで起こっているかわからない場合は、起動直後の初期化の最後でウィンドウ位置がマイナス・大きさが所定の大きさ以下の場合に、「ウィンドウの位置と大きさの設定に不具合が生じたため、位置と大きさを修正しました」などと数秒で消えるダイアログを出した上で、強制的に書き換えてしまうかです。

 

ユーザー側の対処方法としては、少々危険ではあるのですが、sedやperl/awkなどのツールを使ってこのファイルを書き換えてしまう(上でテキストエディターを使って、といっている操作を、ストリームエディタでやってしまう)方法もあります。

 

ひょっとしたら .ini を削除するだけで済むのかもしれませんが、消してしまうとその他の設定も全てやり直しです。

 

また、もしsetupをクリックしたらウィンドウが行方不明になる場合は、多分これ:

[SetupDialog]
SetupLeft=338
SetupTop=444
SetupWidth=616
SetupHeight=524

を直せばよいはずです。

広告

検索語から「jt9 運用法」「jtlinker out of display」

ネタ切れなので検索語から。

JT9の運用について。今の所はJT9で交信しようとするとWSJT-Xを使う必要があるはずです。

交信に使う周波数は、JT65で使われている所のすぐ上、たとえば21Mhz帯なら、JT65ではおおよそ21.076-21.0785あたりを使いますが、JT9では21.0785-21.080あたりを使うことが多いようです。他のバンドでも大体似たような傾向があります。

WSJT-Xの設定はモードとしてJT9を選ぶか、JT9+JT65を選びます。

JT9の方を選ぶと、リグに設定するQRG周波数は、標準では+2kHzアップします。リグと連動させている場合はモードを切り替えると2kHz上がるはずです。(実際には、周波数リストで設定しているそのバンド用のJT9の周波数の内の1番低いものに設定されます)
JT9+JT65の場合にはJT65の時と変わらない周波数のままです。
先に書いたように約2.5kHz上のあたりを使うことになるので、リグの方は1〜2kHz周波数をあげると良いと思います。

先日WSJT-Xの使い方を簡単に書いたのでそちらも参照してください。

交信の際のメッセージのやり取りはJT65と変わりません。

運用での注意ですが、JT65よりも被りに弱いです。もし複数局が呼びそうな場合には、DFを50Hzくらい動かして送信すると良いと思います。

どのバンドでもそれなりに運用局を見かけますが、特に混雑することが多い7/14/21MHzで運用局が特に多い様に感じます。

その他、このモードを使っている局はWSJT-Xがほぼ確定してますので、相手のクライアントは自分と同じものを使っていると仮定できます。クライアントにより送受信できるメッセージの限界とかはわかりやすいと思います。

JA国内での話としては、突如、+2000Hzのあたりで R+49とかがついた画像系の短縮urlを使って更新したい方が現れることがあります。多分普通にコールしても返事はなさそうです。

jt linker out of display
今年2月の更新で発生しづらくなっているのですが、それでもたまに起こります。

原因ですが、多分JTlinkerのソフトのプログラムのソースでイベントハンドラがきちんと実装されていないために、妙なことになっています。プログラムの内部的な事を想像すると、潰していないイベントが起きた時に呼ばれるハンドラで、初期化だけされたジオメトリー変数がウィンドウのプロパティに代入されてしまっていると思われます(C#.netなどでは、javaと同様、新しい変数は基本的には0(null)で初期化されますので、それが書き込まれているっぽいです)。

メインの画面でも、setup画面でもどちらでも起こりえます。症状としては、ウィンドウサイズが0x0になった上で座標位置も0,0になっているのではないかと思います。

直し方ですが….iniファイルをリセットするのが確実にも思いますが、私はこうしてます。(win 10)

1. 見えなくなったウィンドウをAlt+tabで切り替えて、キー入力などがJTlinkerに届く様にする
2. Alt, スペースと押してアプリウィンドウの移動のメニューを呼び出し、「移動」を選択する
3. そのままカーソルの右(→)キーを押し続けて、アプリのタイトルバーが画面内に入るまで押し続ける
4. 画面内に入って来たらタイトルバーの右下のあたりをマウスで掴んでウィンドウを拡大する

win7/8の頃は「2.」のところで「最大化」を選んだ後で、ウィンドウを右下に動かしてからリサイズすればすみました。

元のアプリがリサイズの意味がないアプリですので、イベントを受け付けない様にしたり、ジオメトリなどに書き込む際にconstで定義したアプリウィンドウの大きさを毎回書き込めばサイズは0にはならないと思いますし、どのイベントで起こっているか突き止められない場合は、いなくなった時に初期化(メインディスプレイの中央に表示する)などの対処がアプリの側に必要です。