SHIROUZU Personal Log


2016-12-08

_ [fastcopy] FastCopy v3.26正式版

FastCopy v3.26正式版をリリースしました。

ACL/副次Stream有効時の速度を改善。

シェル拡張にアイコンを表示するように。

ジョブ管理画面のジョブリスト順をメニューのジョブ順と合わせるように。

手動(or nouiによる自動)中断の場合、abortをログに記録するように。

動作環境に Windows Server 2016を追加。

インストーラ改良。

ご意見・ご要望等ありましたら、「FastCopy掲示板」等にてお知らせください。


2016-11-25

_ [comp_misc] Twitter自動画像拡大フィルタ

Chrome拡張用Twitter自動画像拡大フィルタを作ってみました。

twitterの(クリック時の)縦画像は縮小されすぎと思う方にどうぞ。(ついでにプロモーション表示削減も)

Chromeウェブストア内: Twitter自動画像拡大フィルタ

追記(2016/11/29): 比較サンプル画像などを追加してみる。

https://ipmsg.org/tools/tw_filter.html


2016-11-14

_ [ipmsg] IP Messenger v4.11正式版

IP Messenger v4.11正式版をリリースしました。

32bit版で、開封情報がログビューアに反映しないことがあったのを修正

日本語を含むユーザ名でインストールに失敗する問題の修正

その他修正(送信画面の1クリックオープンモードでの挙動問題等)

ご意見・ご要望等ありましたら、「IPMsg掲示板」等にてお知らせください。


2016-11-01

_ [ipmsg] IP Messenger v4.10正式版

IP Messenger v4.10正式版をリリースしました。

返信用送信画面は「宛先のみ表示」をデフォルトに。(横の+ボタンで全員表示。設定で変更可)

Win10 Anniv.の一部環境で着信時に固まる現象に対処。(ToastAPI側の問題。別スレッド化で回避)

ログビューア改良。(未開封フィルタボタン追加、メッセージ背景クリックでも返信を可能に)

未開封受信数上限を100→300に変更。(HKCU\Software\HSTools\IPMsg\RecvMaxで変更可)

その他リファイン。

ご意見・ご要望等ありましたら、「IPMsg掲示板」等にてお知らせください。

_ [comp_misc] Win10 anniv.のToastAPI問題

Win10では、TrayNotifyでのバルーン表示がToastAPI(WinRT)によるトーストに(シェル内で)自動変換される。

それはいいのだが変換が不十分で、IPMsgではあちこちアラが見えてしまう。

具体的には メッセージ通知/挙動も互換性のない変化をして少し困ったのだが、一番困ったのが表示中トーストをプログラム的に消去出来なくなった点。(唯一、TrayNotifyでトレイアイコンを消去すると消えるのだが…)

特に、

1.新たな着信や開封時、表示中トースト(があれば)消去&直ちに新しいトーストを表示したいが、後続トーストはキューイングされる。

2.(トーストクリック以外に)トレイアイコンのクリックでもトーストを即座に消したいが、TrayNotifyではトーストは消えてくれない。

あたりで、やむを得ずv4.0以降ではToast用APIを直接操作でToast表示&消去を行うことに(*1)。

さてそのための専用DLLを作りtoastAPI(WinRT/COM)を使うことで、トーストオブジェクトを直接操作が可能となり、自由に表示/消去ができるようになった…のだが、Win10 Anniv.の一部環境で「トースト表示で固まります」という報告が届くように。

詳細ログが取れるバージョンを使ってもらいログを解析すると、IToastNotifier::Hide()の21回目の呼び出しから、毎回綺麗/正確に120秒固まるようになっていた。

少し調べると、MSDNでも同様の報告があり、Win10 Anniv.側の問題であることはほぼ間違いなさそうだが、誰も回答を付けていない状態。

手元で発生しないので、IPMsg掲示板に報告して頂いた方に何度も実験して頂いて感謝だったのだが、おおよそ判ったことは、

STAアパート用のCOMの同期機構で固まっている可能性あり。(自前環境ではないのためあくまで挙動からの推測)

マルチスレッド化&COM MTA利用で、1トースト毎に1スレッド&関連ファクトリ&トースト生成する以外に回避は難しそう。

(ただしマルチスレッド+STAは試していないので、試す価値はあるかも)

MTAの場合、OS/API側が内部で作ったと思われるスレッド(≠トースト作成したユーザ側スレッド)がコールバックを呼んでくるので、それに配慮する必要あり。

といった点で、これらに対処してマルチスレッド&MTA化することで一応解決した様子。

ともあれMSさん、こういう(TrayNotify->Toastのような)不完全なエミュレーションで強制移行させたり、使わせたいはずのToastAPIもupdateでデグレしたまま放置なのはご勘弁(笑)

(*1) Toast用APIはWinRT/COMであり、Win7以前では使えないだけでなく、さらにビルドのターゲットバージョンの問題から、Win7以前でも動かすためには IPMsg本体のターゲットはXP用とした上で、トースト操作専用dllをこしらえ、そちらだけWin8以降用としてWinRT対応させる形にせざるを得なかったのだが、この部分は何らかの hack で1ビルド対応可能かも。何かご存じの方がいましたらご連絡下さい。


2016-10-19

_ [fastcopy] FastCopy v3.25正式版

FastCopy v3.25正式版をリリースしました。

ベリファイ用ハッシュ(MD5/SHA-1/SHA-256)を設定から選択可能に。

32bit版で、ベリファイ中にエラー終了することがあったのを修正。

ご意見・ご要望等ありましたら、「FastCopy掲示板」等にてお知らせください。