スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ブログランキング・にほんブログ村へ

--.--.-- | スポンサー広告

続続・ JTskLnchのバグについて

JTskLnchの起動問題ほか少しいじりましたので、暫定公開です。


前回の公開に続き、正式なリリースではないので、以下のリンクからDLしてください。
JTskLnch ver 1.14Pre2
JTskLnch ver 1.14Pre2 (for WM5)


 どうも、INIファイルのロードに失敗している様な挙動が見受けられましたので、リトライ処理の組み込みを行ったのと、少し処理じゅんを変えてみています。依然、こちらの環境では発現していないので、効果のほどはわかりませんが。 なかなか、この問題が解決しないとほかの機能実装にも身が入らないので、なんとか解消できればいいのですが…

もうひとつ、起動時の表示ページにてJTsk_PAGEの指定を行った場合の挙動を修正しました。
JTSK_PAGEはタスク管理モード用のページですので、ランチャーモード用の設定である、「フォーカス時に表示するページ」からは除外していたのですが、タスクモード起動の指定をコマンドラインオプションで行わなくても最初に表示するページをタスク管理モードに変更できて便利かと思い、有効にしました。
 この場合、「Launch<->Task」を行った場合は、JTSK_PAGEとそれ以外のページで一番最初のページとが交互に表示されます。

ではでは。

テーマ:フリーソフト - ジャンル:コンピュータ

ブログランキング・にほんブログ村へ

2010.04.05 | Comments(13) | Trackback(0) | JTskLnch

コメント

続続・ JTskLnchのバグについて

>どうも、INIファイルのロードに失敗している様な挙動が見受けられましたので、
>リトライ処理の組み込みを行ったのと、少し処理じゅんを変えてみています。

試して見たんですが私の環境だと変化ありません。

>もうひとつ、起動時の表示ページにてJTsk_PAGEの指定を行った場合の挙動を修正しました。

この修正が関係しているんだと思いますが、
JTsk_PAGEのみを指定する暫定対策でも起動しなくなってしまいました。

2010-04-05 月 10:09:11 | URL | 伊藤 #- [ 編集]

Re: 続続・ JTskLnchのバグについて

>伊藤さん

> 試して見たんですが私の環境だと変化ありません。
>
> >もうひとつ、起動時の表示ページにてJTsk_PAGEの指定を行った場合の挙動を修正しました。
>
> この修正が関係しているんだと思いますが、
> JTsk_PAGEのみを指定する暫定対策でも起動しなくなってしまいました。

うーん、よいか悪いのか、今回いじった処理周りが関連性あるようですね。
ちょっと前向きに考えて、今回いじった部分のソースを見直してみます。何らかのヒントが得られるかも…

2010-04-05 月 22:35:10 | URL | じゅんたろー #- [ 編集]

Re: 続続・ JTskLnchのバグについて

JTskLnch、便利に使わせて頂いています。
ありがとうございます。m(__)m

当方の環境でも、v1.13以降ランチャーが表示されない現象が発生しております。
こちらで確認できた限りで状況を以下にまとめました。
文章で書いたのでわかりにくくて申し訳ありませんが、デバッグの参考にして頂ければ幸いです。

【環境】
X02T(SoftBank) WM6.5

【前提条件】
確認バージョン:v1.13
JtdLnchSetの挙動による影響を排除するため、PageMng.iniを直接エディタで編集して確認。

【確認内容】
(1)PageMng.iniでJTSK_PAGEのみ1にして起動した場合、常駐(常駐A)。
 (予想:常駐Aは正常に常駐している)
 →その後PageMng.iniをJTSK_PAGEを0、JTSK_PAGE以外を1として起動(起動B)すると、
  常駐Aによりメニュー表示。ただし、JTSK_PAGEの起動アプリ一覧は表示されず。
  (予想:この挙動は、アクティブになったときに表示するページの設定に依存するかも?)

  この状態で再度起動(起動C)すると、常駐Aにより起動アプリ一覧(JTSK_PAGE)を表示。
  (予想:この挙動は、常駐A起動時のPageMng.iniの設定が生きているものと思われる)
  このことから、不具合の原因は常駐している側にあることがわかる。

  また、B、Cを起動しないで、JtdLnchSetを起動して有効ページを変更すると、常駐Aの設定に変更
  が反映され、以降は設定通りに動作。
  (予想:JtdLnchSetにより、JtskLnch常駐Aに何らかのI/Fで更新が通知されるためと思われる)

(2)JTSK_PAGE以外を1にして起動した場合、常駐(常駐A)。(予想:常駐Aは正常に常駐していない)
 →その後で起動したものは常駐化(常駐B)し、メニューも変わらず、常駐Aがアクティブにならない。
  さらに起動しても常駐化(常駐C)するものが増えていくだけで、動作せず。
  常駐B/常駐Cの起動時には、起動直後は10KB程度のメモリ使用量で、起動から12秒程度後に
  メモリ使用量が常駐Aと同等になり常駐化する。
  (予想:常駐Aとの間で資源がバッティングして確保出来ず、結果、何らかのタイムアウトで
  抜けている感じ?)

  この状態で、さらにJTSK_PAGEのみ1にして起動した場合、常駐(常駐D)。
  このときも、常駐Dは12秒程度でメモリ使用量が増加。
  これでA~Dまでが起動している状態になるが、常駐Dのみ正常に機能する。
  さらに起動(起動E)すると、常駐Dがアクティブになるが、メニュー表示のみ。
  もう一度起動(起動F)すると、起動アプリ一覧(JTSK_PAGE)を表示。
  つまり、D~Fの挙動は(1)の場合と同じ。

  この状態で、A~Cのプロセスを殺しても、常駐Dにより正常な動作が継続する。
  逆に、A~Cを殺さずに常駐Dを殺してしまうと、次に起動するものが常駐化(常駐G)。
  以降の起動(起動H)では、常駐Gによりメニュー表示、さらに起動(起動I)でメニュー+起動アプリ一覧表示。
  ここも、G~Iの挙動は(1)の場合と同じ。

【考察】
以上より、起動時のPageMng.iniの設定により正常動作/異常動作に差が出ることが判明。
JTSK_PAGE以外が1になった状態でプロセスが起動/常駐化(常駐a)すると、次に起動したプロセスが
常駐aを検知出来ずに新たに常駐化(常駐b)しているように思われる。
v1.12では発生せず、v1.13から発生するため、この変更点に不具合要因となる部分が含まれるはず。

※常駐*:起動後、常駐するプロセスを示します。
※起動*:起動後、すでに起動しているプロセスをアクティブにして終了するプロセスを示します。

2010-04-06 火 00:02:02 | URL | D☆A #DEyHJ1Mk [ 編集]

Re: Re: 続続・ JTskLnchのバグについて

>D☆Aさん

詳細なレポートありがとうございます。

●確認内容(1)について
 これについては、常駐Aが正常に常駐しているので、2回目以降の起動ではINIファイルは読み込んでません。予想にあるように、JTdLnchSetに通知が行われないとIniファイルの再読み込みはしないようになっています。(ですので、Iniファイルの手動編集ではいったんJTskLnchを終了させるかしないと設定が有効にならないです)

●確認内容(2)について
 この内容を読んだ限りでは、正常常駐しない限りは、2重起動のチェックに漏れているようですね。 OSが2重起動したと認識していないため、いくつも常駐してしまう、と。 やはり起動途中(ウインドウが作成される前)で落ちてしまっているような感じですね。ソフトメニューも表示されていない状態でしょうか?(ウインドウの作成時(OnCreate)では、Iniファイルの読み込みとソフトメニューの構築を行なっているもので)

 初回表示のページ選択処理と、上記の問題の2つが関連してそうですね。

2010-04-06 火 00:27:10 | URL | じゅんたろー #- [ 編集]

Re: Re: 続続・ JTskLnchのバグについて

コメントありがとうございます。

確かに、2重起動をウィンドウ名でチェックする場合、ウィンドウ生成前だとチェックできないですね。

> ソフトメニューも表示されていない状態でしょうか?
目視で確認出来る限りでは、ソフトメニューの表示もされていないように見えます。

もしデバッグ用のログ出力版など、不具合発生環境で実行することで情報が得られるようであれば、ご協力致します。
#おそらくその方が、解決は早そうに思いますので。

2010-04-06 火 00:46:49 | URL | D☆A #DEyHJ1Mk [ 編集]

Re: Re: 続続・ JTskLnchのバグについて

1点追加です。

当方の使用しているTaskManagerはプロセスが生成したウィンドウの情報を参照できるのですが、
それで確認したところ、ランチャー表示されない場合でもウィンドウは生成されているようです。
複数起動した場合、上記の機動から12秒くらいの間はウィンドウがありませんが、
その後使用メモリが増えた段階ではウィンドウの存在が確認できます。
1プロセスあたり、スレッドも2つずつ存在しています。→すみません、勘違いでした。。。

2010-04-06 火 01:01:50 | URL | D☆A #DEyHJ1Mk [ 編集]

Re: Re: Re: 続続・ JTskLnchのバグについて

>D☆Aさん

> もしデバッグ用のログ出力版など、不具合発生環境で実行することで情報が得られるようであれば、ご協力致します。
> #おそらくその方が、解決は早そうに思いますので。

申し出ありがとうございます。
自分もそろそろらちが明かないなぁとか思ってたんですけど、さすがにログ取りをお願いするのも勇気がいるなぁと思ってましたので。

http://nullmo.web.fc2.com/JTskLnch/JTskLnch_114pre3DBG.CAB

これを実行してみてください。細かくログが出力されますので(もともとはTodayプラグイン用のログなので結構細かくログ出力されます)、挙動はかなり重くなりますが、正常常駐と異常常駐の2パターン採取してもらえればありがたいです。

なお、ログはメモリカードのルートにJTskLnch.logが出力されるため、メモリカード必須になります。

2010-04-06 火 23:41:23 | URL | じゅんたろー #- [ 編集]

Re: Re: Re: 続続・ JTskLnchのバグについて

ご指定のファイルですが、404 Not Foundになってしまいました。
また、メモリカードへのログ出力について、当方の環境(X02T)ではメモリカードのデバイス名は"Storage Card"となっています。
このあたりは環境により異なると思いますが、特に気にする必要はないでしょうか?
デバイス名の変更が必要であれば、Pocketの手等で変更しますので、ご指定下さい。

2010-04-07 水 03:49:20 | URL | D☆A #DEyHJ1Mk [ 編集]

Re: Re: Re: Re: 続続・ JTskLnchのバグについて

>D☆Aさん

申し訳ない。アップロードしたファイルの名前が間違ってました。
修正しておきましたので、DL出来ると思います。

ログのパスについては、メモリカードのパスは取得してますので、大丈夫です。
では、よろしくお願いいたします。

2010-04-07 水 07:32:28 | URL | じゅんたろー #- [ 編集]

ログ取得(Re: 続続・ JTskLnchのバグについて)

ログを取得しました。

【異常常駐時のログ】
→常駐A起動
20100407-19:10:35 CWndLnch::OnCreate() Start
20100407-19:10:35 CWndLnch::OnCreate() InitLnch()
20100407-19:10:35 CWndLnch::InitLnch() Start
→常駐B起動
20100407-19:11:46 CWndLnch::ChgMode( 2) Start
20100407-19:11:59 CWndLnch::OnCreate() Start
20100407-19:11:59 CWndLnch::OnCreate() InitLnch()
20100407-19:11:59 CWndLnch::InitLnch() Start

今回のものはv1.14がベースになっていると思われますが、当方の環境ではv1.14で正常常駐しないため、異常常駐のログしか採取できませんでした。
#v1.13であればJTSK_PAGEのみでの正常常駐するのですが。

2010-04-07 水 21:38:40 | URL | D☆A #DEyHJ1Mk [ 編集]

Re: ログ取得(Re: 続続・ JTskLnchのバグについて)

>D☆Aさん

> ログを取得しました。
>
> 【異常常駐時のログ】
> →常駐A起動
> 20100407-19:10:35 CWndLnch::OnCreate() Start
> 20100407-19:10:35 CWndLnch::OnCreate() InitLnch()
> 20100407-19:10:35 CWndLnch::InitLnch() Start
> →常駐B起動
> 20100407-19:11:46 CWndLnch::ChgMode( 2) Start
> 20100407-19:11:59 CWndLnch::OnCreate() Start
> 20100407-19:11:59 CWndLnch::OnCreate() InitLnch()
> 20100407-19:11:59 CWndLnch::InitLnch() Start
>
> 今回のものはv1.14がベースになっていると思われますが、当方の環境ではv1.14で正常常駐しないため、異常常駐のログしか採取できませんでした。
> #v1.13であればJTSK_PAGEのみでの正常常駐するのですが。

 異常系のログが欲しかったので、正常系はひとまずおいといてもよいですよ。
 採取したログは上記のものですべてでしょうか?「InitLnch() Start」に対して「InitLnch() End」があるはずなので、その流れも見たいのですが。
 できれば、倉庫のほうに記載しているメールアドレス宛にログを丸ごと送ってもらえないでしょうか?

 しかし、常駐Bの際にOnCreateがまた実行されているのはなんでなんだろう?

2010-04-09 金 00:34:55 | URL | じゅんたろー #- [ 編集]

Re: ログ取得(Re: 続続・ JTskLnchのバグについて)

う~ん。
詳細なログが出力されるという話だった割には少ないかな、とは思いましたが、やはり期待したログは取れていないということですね。

しかし、出力されたログはこれが全てで、これ以外のログは出力されていません。
正確には、4プロセスくらいの多重起動なども試したりしていますが、起動した分だけ後半の4つのログが増えていくだけで、これ以外の種類のログが出力されることは無い状況です。
1つ目のプロセスの起動だけだと、10分以上放置していても、最初の3つのログのまま増えません。

「InitLnch() End」が出力されず、かといって別のログが増えるわけでもないため、InitLnch()内のどこかで止まっている可能性が高そう(?)ですね。

このあたりのログを強化したもので再度試してみるというのはアリかもしれません。

2010-04-09 金 07:14:53 | URL | D☆A #DEyHJ1Mk [ 編集]

Re: Re: ログ取得(Re: 続続・ JTskLnchのバグについて)

>D☆Aさん

> 詳細なログが出力されるという話だった割には少ないかな、とは思いましたが、やはり期待したログは取れていないということですね。
>
> しかし、出力されたログはこれが全てで、これ以外のログは出力されていません。
> 正確には、4プロセスくらいの多重起動なども試したりしていますが、起動した分だけ後半の4つのログが増えていくだけで、これ以外の種類のログが出力されることは無い状況です。
> 1つ目のプロセスの起動だけだと、10分以上放置していても、最初の3つのログのまま増えません。
>
> 「InitLnch() End」が出力されず、かといって別のログが増えるわけでもないため、InitLnch()内のどこかで止まっている可能性が高そう(?)ですね。
>
> このあたりのログを強化したもので再度試してみるというのはアリかもしれません。

すみません、ほったらかしでした。

もしかしたら、こんだけしかログ出てないのかなぁという予想もしていたのですが…
それはそれで貴重な情報ですので(それの直後のログも出るはずですのでそれが出ないということはInitLnch関数呼び出し直後で落ちている?)、それを含めてチェックしなおしてみます。

2010-04-11 日 13:20:02 | URL | じゅんたろー #- [ 編集]

コメントの投稿


秘密にする

«  | HOME |  »

FC2Ad

04 | 2017/05 [GO]| 06
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 - - -

最近の記事一覧 カテゴリ一覧 コメント一覧 トラックバック一覧 プロフィール リンク一覧
[カテゴリ]
WEBコンサルティング・ホームページ制作のバンブーウエイブ

ブログ内検索

ブロとも申請フォーム

この人とブロともになる

カスタム検索

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。