/////////////////////////////////////////////////////////////////////////////////// // Ver.17.x系 /////////////////////////////////////////////////////////////////////////////////// Ver.17.0.1.0 ●不具合修正 ・インストールの際にUserImages20.bmpをユーザー情報の管理ディレクトリに複製し損ねていた不具合の修正 ・クリーンインストールをした場合、廃止したファイルを読み込もうとして起動に失敗する不具合の修正 Ver.17.0.0.0 ●機能重複および利用頻度の低い機能の削除 ・キャプションバーの廃止 ・履歴メニューボタン(アドレスバー横)を廃止  同時に更新ボタン順番の変更、レイアウトを一部変更 ・スクリプトトレーサー連携機能の廃止 ●メニューバーにヘルプ検索を追加 ・Googleのサイト検索を行うコンボボックスを追加  Enterキー押下で入力したテキストで、オンラインヘルプのサイト内検索を行う  検索履歴は10件まで保持するが、アプリ終了時に破棄 ●高DPI環境にて、ライブラリが非対応のための仕様変更 ※大きいツールバー画像は、絵心ないので元画像の外枠のサイズを変更しただけです。  絵師さんが名乗り出てくれれば仕様の公開も検討します。 ・「標準」ツールバーの画像サイズを20×20に変更し、機能アイコンを大幅に入れ替えた ・「標準」のツールバー以外は全て削除 ・カスタマイズ用のUserImages20.bmpの追加 ・大きいツールバー用の32x32の画像リソースを追加 ・アドレスバー周り/リスト下部/ステータスバーのボタンサイズは、最小値20pixかつリストのフォント依存となるように変更 ・ツールバー上から表示する機能メニューはカスタマイズ要素として「このメニュー定義を編集」を追加 ●メインメニュー ・定義ファイル_MainNormalCmd.txtを使用するように変更し、ライブラリ提供の仕組みを全廃 ※MFCカスタマイズダイアログでのメイメニューの変更は、タブ切り替えまたはAs/Rの再起動で失われます  a.キー割り当てされたショートカットの表示が増えた  b.ライブラリ依存の補正処理が全てなくなったため起動速度向上  c.ファイル読み込み/メニュー定義解析のため起動速度低下  d.Ver.17以降のみアップデート/ダウングレードの安定性の向上  e.使用頻度・有用度を基準に項目の削除/統合  f.「自動判定して名前の変更」「ヘルプ検索ボックス」「ヘルプ検索」「コマンド検索」などの追加 ●全機能メニュー ※削除したコマンドのIDも残しているので当面は使用可能ですが、いつまで使えるかは保証いたしません  a.使用頻度・有用度を基準に項目の削除/統合  b.ポップアップメニュー表示系の機能をたくさん追加  c.「自動判定して名前の変更」「ヘルプ検索ボックス」「ヘルプ検索」「コマンド検索」などの追加  d.誤操作のもとになる懸念より、一括登録/削除系のコマンドを削除 ●初期ショートカットキーの割り当ての見直し ・6、B、Xを未割当に変更 ・Rを「自動判定して名前の変更」に変更 ●MFCカスタマイズダイアログ ・全機能系の機能一覧を精査して、各機能がカテゴリ分類されるように変更 ・カスタムコマンドなどの使われないIDを削除 ・全機能メニューの精査に伴い項目が増減した ●ツリー系オプション ・フォルダーバーの動作設定のメニュー定義を、インサイドメニューと共通で使えるように修正 ・「起動時/タブセット切り替え時にツリーを同期しない(OFFは非推奨)」を追加 ※隠し機能時からの変更点:起動時コマンドライン指定は固定で同期あり、タブセット切り替えにも適用 ・「独自描画を行う(廃止予定設定)」を追加 ・「行選択」と「線あり」の相互干渉をなくした ●ツリーをカスタムドローで描画する機能の追加 ・若干描画がもたつくようになった ・フォーカス色やグラデーションが適用されるようになった ・ツリーに制限のあったOSのダークモードの影響が減少 ・ツリー表現の向上  a.オーバーレイアイコンの取得で属性情報を使う設定がONになっていると、共有やショートカットのオーバーレイアイコンを表示  b.絶対パスタグの付与されたパスにマーカーを表示  c.開閉ボタンを自前画像に変更   大きさ/色に差をつけて視認性を向上、「線あり」との親和性向上   背景色の輝度に合わせて開閉ボタンの色調を切り替えるなど ・クラシックモードは使用せずクラシックモード風の描画を実装 Ver.16.9.4.0 ●マルチメディアビューア(Seeker.exe) ・メディアプレーヤーで時間を進めるコマンドが来た場合、停止状態だと再生するように変更 ●その他 ・リストの表示カラムを全てクリップボードへコピーコマンドを暫定で追加(ID:35660) ※「並べて表示」のように変動型カラムや、「詳細一覧」で表示情報があるがカラムがない場合もあるので検討中 ・プレビューバーの背景色をテーマのドッキングウィンドウ背景色(アクティブ)に変更 ●不具合修正 ・オプションでOS番号を間違える可能性がある不具合の修正 Ver.16.9.3.0 ●不具合修正 ・プロセス分離をする際にパスが文字化けをすることがある不具合の修正 ・誤字修正 Ver.16.9.2.0 ●1フォルダあたり10万ファイル超の環境での操作性の改善 ・リストの選択状態の表示を無効にする上限設定を追加(初期値10万) ※PCの性能に依りますが、作者環境で40万件あたりから性能劣化が顕著になるため調整できるようにしたものです ●文字コード変換処理の改善(省メモリ化、OFRからのフィードバック)  a.サムネイル画像による一覧表示  b.プレビュー  c.ファイルの中身をクリップボードへ保存コマンド  d.オプション  e.テキスト文字コード変換コマンド  f.テキストビューア ●不具合修正 ・タブバーの機能ボタンのツールチップのタイトルをセットしてない不具合の修正 ・ツールチップタイトルの文字列長の上限チェックしないルートがある不具合の修正 ・ツリーの「開閉ボタンはフェイドアウト」の設定を削除  修了確認メッセージの表示時にツリーコンポーネント内部の処理で以後描画されなくなるため Ver.16.8.9.0 ●ツリーの改善 ・初期化の冗長性を解消 ・未使用変数の整理とバイト単位での省メモリ化を多数 ●その他 ・コード分析対応、主に性能向上が見込める箇所のみ200件くらい ・リスト部のレイアウト処理をブロック化して整理 ・CreateProcess()を実行する際に検証用の字句解析があったのを削除 ・メインメニューを非表示にしたとき、「表示」メニューのプレースホルダーにユーザーツールバーを追加  「カスタマイズ」もプレースホルダーに含めるように定義ファイルも修正 ・ツールバーなどのツールチップを「OSのダークモードを使用する」の影響を受けるように変更 ・タブバー/ウィンドウ管理バーのツールチップに絶対パスタグのテキストを追加 ●不具合修正 ・フォーカスがないツリーに右ボタンでアクティブになった際、フォーカスが見えるようにスクロールしないように修正 ・中ボタン押下ではアクティブにならないが類似現象が発生するので同じ対処を行った ・オプションのタブセット画面で設定を保存するとメインメニューを洗い替えしてしまう不具合の修正 ・ステータスバーのコンテキストメニューのプレースホルダーから不要なセパレータを削除 ・ツールチップのシェル拡張ツールと連携した際の脆弱性の修正 Ver.16.8.3.0 ●各種ドッキングバーのツールバーの大型化 ・タブバーを除いてドッキングバーのツールバー画像を16pix→20pixに変更 ・タブバーも含めてイメージライブラリの更新に伴い画像の変更  「このメニュー定義を編集」削除など ・利用頻度に関する観点からボタン整理に伴い各メニュー定義の見直し ・ボタン画像の大型化に合わせて、機能数が多く縦置き前提のドッキングバーの横幅を削減 a.ユーザー定義バー  1.ツールバーから削除(リストの選択アイテムを登録/現在タブを一括登録)  2.ツールバーに「新規作成メニュー」(_UserBarNew.txt)を追加  3.各種メニューの新規作成系の機能を整理  4.復元スクリプトの前身であった「この階層への一括操作」系の機能はメニューから削除  ※機能を理解せず使ってしまうケースがあることのこと、誤用した場合の復旧が面倒なため機能削除  5.カラム幅設定の多くを削除(動作設定メニューにあれば良いという判断)  6.「このメニュー定義を編集」を削除 b.ウィンドウ管理バー  1.ツールバーから削除(横に並べて表示/縦に並べて表示/子ウィンドウの最大化)  2.ツールバーに「並び替えメニュー」を追加(_TabMngBarArrangeWindow.txt)  3.各種メニューの並べる系のコマンドを整理  4.メニューのウィンドウ管理系のコマンドを上位に移動  5.メニューから利用頻度の低い選択タブにショートカットの貼り付けを削除  6.全てのウィンドウを横に並べる(ID:57652)を追加※メインメニューのものと同一  7.全てのウィンドウを縦に並べる(ID:57651)を追加  8.全てのウィンドウを重ねて表示(ID:57650)を追加  9.選択ウィンドウを横に並べるのID変更(ID:57652→47641)  10.選択ウィンドウを縦に並べるのID変更(ID:57651→47640)  11.選択ウィンドウを重ねて表示のID変更(ID:57650→47642) ●描画調整 ・デバッグバーのレイアウトの微調整 ・リストの「詳細」のヘッダソート矢印のフォントサイズを調整 ●その他 ・非推奨になったSHCONTF_FLATLISTを使用しないように変更 ・読み上げの邪魔になっていたのでユーザー定義バーのアイテムにドロップした際のメッセージの記号文字を変更、またログバーへの出力に変更 ・上下に画面分割した場合のインサイドツリーのレイアウトを修正(ステータスエリアを貫通して高さを確保) ・インサイドツリーには存在しない「タイトルバー」「ツールバー」「連動設定→タブ切り替え」を非表示に変更 ※メニュー内のセパレーターはVer.17時に定義ファイルから消します ●OSかOfficeの不具合の暫定対処 ・実体を確認しない速度優先のアクセス手法でフルパス文字列指定でナビゲーション依頼を発行すると、フォルダーとしてバインド可能でありながら列挙時に予期せぬエラーになる特殊なファイルの場合に終端を除去してリトライする処理を追加 a.ログバーに、エラー種別で「Detected a bug in windows and retried.」を出力 ※xlsxやdocx等のMicrosoft Officeの文書のみで発生します。  何かしら別の問題が発生したり、不具合が修正されたら本対策は除去します。 Ver.16.7.7.0 ●インサイドツリー ・表示切り替えボタンの位置を変更(画面分割の方向でレイアウトに差異があり) ・表示切り替えボタンの画像を切り替えように変更 ・コマンドメニューボタンを追加して(リソースをケチる動的生成型)、以下の機能を追加  定義ファイルはフォルダーバーと共用で_FolderBarAction.txtを使用  a.最新の状態にする  b,コピー  c.切り取り  d.貼り付け  e.元に戻す  f.名前の変更  g.削除  h.プロパティ ・動作設定ボタンを追加して(リソースをケチる動的生成型)、以下の機能を追加  定義ファイルはフォルダーバーと共用で_FolderBarSetting.txtを使用  a.リストの移動と連動  b.ネットワークフォルダーを連動  c.隠しアイテムを表示  d.仮想フォルダーを連動  e.オプション ※インサイドツリーには存在しない「タイトルバー」「ツールバー」「連動設定→タブ切り替え」は機能しません  フォルダーバーの廃止の段階で、定義ファイルも更新する予定です。 ●リスト描画 ・実体ありフォルダーの「コンテンツ」の高速化(効果大)  a.ファイルのサイズを内部計算にした  b.更新日を内部計算にした ・「詳細」のヘッダを自前描画に変更  よりフラットに、テーマ依存でソート順が目立つように変更 ・「一覧」のフォーカス/テキスト描画の位置を調整 ・各モードで取得するカラム項目の取得の際のオーバーヘッドを削減 ●リスト周りにあるボタン ・ボタンのツールチップに動的に変化するショートカット表記を追加 ・ツールチップメッセージをリソース化し、雑な実装になっていた部分を再構築 ・ディレクトリ内検索のボタン4個、フィルタのボタン1個をリソースをケチる動的生成に変更 ※ボタンを非表示にした場合にコンポーネントを破棄してメモリを解放する  ただしOS側のキャッシュは残るので効果は微妙 ●移動履歴のポップアップメニュー ・エクスプローラに寄せて、フルパス実体表記ではなく仮想名称の現在のパス表記に変更 ※復元スクリプトの移動履歴の保持で使う想定なので、仮想名称内の「<」と「>」は全角文字に変換 ●その他 ・配布をやめたインストーラー同梱版をドキュメントから削除 ・Windows Serverのサポート切れを受けて動作確認OSを減らした ・タブレット支援バー/ログバー/デバッグバーの非表示時の初期化省略による起動の高速化と非同期処理の整理 ・MAX_PATH定数を使っているところを削減×2 ・ウィンドウ管理バー/タブバーのドラッグでMAX_PATHを超える項目もエラーにならないようにした ・デフォルトのテーマ色の調整(格子色、ボタン色がディスプレイによって白と見分けがつかないため) ・コントロール描画のWingdings3/Webdingsをやめて、MeiryoUIに変更 ●不具合修正 ・ウィンドウ管理バーの空欄からのドラッグで、先頭行が対象になる不具合の修正 ・復元スクリプトの「現在のタブのみ」で、オプションの終了時/タブセット切替時の保存有無の設定で仮想フォルダ/ネットワーク判定の影響を受ける不具合の修正 ・ステータスバーの機能ボタンの、隠し属性を持つアイテムの表示切替の画像サイズにDPI係数を掛けていなかったのを修正 ・ネットワークの死活チェック処理がスレッドセーフになっていなかったのを修正  (ハードウェアのバスが1個なので並列処理を禁じるべきもの、ネットワークの監視を行っている環境で不安定になりやすい) Ver.16.6.8.0 ●ステータスバーの機能追加 ・バー上に配置できる各種のボタン機能と、オプションの設定画面を追加  アイコン画像と、ツールチップテキストで現在のアプリの状態を表現します。  a.通常ファイルにドロップでフォルダ作成モードの切り替え  b.ドラッグアンドドロップの標準動作(_StatusDropModeMenu.txt)  c.チェックボックス(_StatusCheckBoxMenu.txt)  d.サイズバーの表示(設定ダイアログ表示)  e.日付の色分け(設定ダイアログ表示)  f.隠し属性のアイテム表示の切り替え ・インジケーター部分の右クリックメニューを追加(_StatusContextMenu.txt)  ※並び替えはオプション画面で行う想定  a.各種の機能ボタンの表示切替  b.オプション表示 ●「並べて表示」の高速化(効果大) ・ファイルのサイズの表示をONにしている場合、シェル情報を取得するのではなく内部計算にして高速化 ・時間がかかる項目の取得設定の組み合わせを見直して高速化 ●「詳細一覧」の高速化(効果大) ・上位階層への移動などのフォーカスを当てる処理の画面崩れの原因が特定できたので大幅に高速化 ●オプションのツリーの初期値/設定の改修 ・ツリーのトップレベルノードの初期値を変更  a.Windows11用以外   デスクトップのみ  b.Windows11用   ダウンロード、デスクトップ(階層なし)、PC、ユーザー、ネットワーク、ごみ箱、最近使ったファイルの列挙 ・設定画面の変更  a.追加位置を選択アイテムの前から後ろに変更  b.項目レイアウトの調整  c.一覧をダブルクリックすると編集する機能を追加  d.表示名にカテゴリも付けて、少し分かりやすくした  e.UUID/パスの指定画面で未選択状態でOKを押すと分かりにくいエラー文言になるのを修正  f.「「すべてのフォルダーを表示」のまとめ設定」ボタンの追加  g.「Windows11用のまとめ設定」ボタンの追加 ●ツリーの挙動の追加 ・ツリー上にあるlnk属性(拡張子は見ていない)をもつアイテムはシェル実行に変更 ●リスト上のツールチップ ・ファイル名はタイトル部にセットしていたが、95文字以上の場合に本文に埋め込むように変更 ●インサイドツリーのスプリッタ ・スプリッタの再構築をしないと色設定が反映されないのを修正 ●オプションに属する子ダイアログで表示するヘルプの参照先が統一されていないので見直した  a.メニューエディタ  b.メニューコマンド編集  c.マクロ入力  d.フォルダ設定のオプション子ダイアログ  e.コマンド定義編集  f.拡張子連動コマンド  g.スクリプト編集  h.機能一覧 ●仕様変更 ・初期値および、各種テーマファイルの「フォーカス装飾」の太字をOFFに変更 ※太字や大きいフォントの場合の当たり判定の差異の課題のため、制限ありの機能に降格 ●その他 ・画像リソース名がデフォルトままで滅茶苦茶だったのを整理 ・テーマ描画のポップアップメニューで、ダイアログが親の場合はOSのダークモード適用を無視するように変更 ・カスタムテーマのツールバーの▼などの描画フォントをWebdings/Wingdings3で固定して、環境依存の文字化けしないように変更 ●不具合修正 ・自動更新ボタンのツールチップ文言を修正 ・ウィンドウに合わせてカラム幅の自動的に調整する設定が詳細以外にも干渉する現象に対処 ・1フォルダあたり1億アイテムを超えていると画面が滅茶苦茶になる不具合の修正 ※上限1億の徹底、また非常識に時間がかかるので再現テストは非推奨 Ver.16.5.9.0 ●フラット系テーマの画面分割時のスプリッタ ・テーマ配色を適用 ●インサイドツリーのスプリッタ ・テーマ配色を適用 ・ドラッグイメージを大きく変更(点線にした、テーマ配色を適用) ・描画スタイルを3Dからフラットへ変更 ・1ピクセル幅を大きくし、DPI係数を掛けるように変更 ・コントロール座標の計算を間違っているところがあったので修正 ●インサイドツリー ・フォーカスが当たった時にフォーカスアイテムがなるべく見えるように変更 ・ノード指定された場合、遅延動作でフォーカスアイテムがなるべく見えるように変更 ※フォルダーバーはリスト同士の取り合いが発生して操作性が悪くなるので未対応です ●ステータスバー ・設定フォントを適用するように変更 ・ステータスバー上のアイコン画像をフォントに合わせて拡大/縮小するように変更 ・ボタンの反応をダブルクリック→シングルクリックに変更 ●タブバー ・タブセットの一覧のプレースホルダー(ID:39996)を使用できるようにした ・上記を使うように_TabMenuSetting.txtの更新 ●ユーザー定義バー ・本体コマンドのスクリプトを自動生成するコマンドを追加 ・コマンドメニューの定義ファイル(_UserBarAction.txt)に「本体コマンドの作成」を追加(ID:47035) ●デバッグバー ・自動非表示モードの場合のアイコン表示を追加 ●ログバー ・自動非表示モードの場合のアイコン表示を追加 ・ログ種別にベンチマーク項目を追加(下記の性能チューニングの効果測定用) ・オプションに設定追加 ●テーマ微調整 ・_FILMTN(FlatDark).thを微調整 ●性能チューニング ・一覧用のフルパス生成時のメモリ転送回数を減らした ・ソートアルゴリズムのパラメータを自動調整するコマンドの追加(ID:35906) ※誠に遺憾ながら性能向上は誤差の範囲なので使用は推奨しませんが、全機能メニューには載せた ●初期設定ツール(Setting.exe) ・文言修正たくさん ・更新ファイルの一覧、ビューア画面、結果表示でウィンドウサイズに合わせて各種コントロールを動かすように変更 ●画像付きボタンの改善 ・1個当たり2~6バイト省メモリ化 ・初期化処理のメモリ転送回数の削減 ・動的生成するための派生クラスを用意 ・配布書庫からフィルタをクリアの画像を削除(FilterClear.bmp) ・配布書庫にコマンドメニュー(Command.bmp)、ツリーを閉じる(TreeClose.bmp)のボタン画像を追加 ●メインメニューバーの表示切替の追加(ID:33399) ※現行のメインメニューは、廃止予定なので当コマンドを足していません。 ※メインメニューを非表示にした場合、ALT/F10で「よく使うメインメニュー」(_MainNormalCmd.txt)のメインメニューが表示されます。  こちらのメニューは、Ver.17を想定しているため、現行のメインメニューと構成が異なりますので、ご注意ください。  またALT+F/ALT+E/ALT+V/ALT+T/ALT+W/ALT+H/ALT+Aで子メニュー(_MainNormalCmd1~7?.txt)が直接表示されます。 ・システムメニューに追加(左上の赤いフォルダーアイコン) ・全機能メニューに追加(_MainFullCmd.txt) ・よく使うメインメニューの「表示」に追加(_MainNormalCmd3V.txt) ・メインメニューをポップアップメニューで表示を追加(ID:33400) ●ツールバーなどに配置する想定のコマンド追加(暫定機能) ・画面分割時コマンドメニューの追加(ID:36804、_ToolbarDivMode.txt) ・ツールコマンドメニューの追加(ID:36805、_ToolbarTools.txt) ・ファイル操作コマンドメニューの追加(ID:36806、_ToolbarFileOperations.txt) ・新規作成コマンドメニューの追加(ID:36807、_ToolbarShellNew.txt) ●その他 ・Ver.16の初期のコンパイルオプションでの分岐を削除(ツールチップ関連) ・リソースメッセージの文言修正多数 ・デバッグバーとログバーのアイコン画像としてBaricon.bmpの更新 ・フィルタとディレクトリ内検索のイベントハンドラをフレームからビュー内に移動 ・ビューの初期化時のレイアウト調整は不要だったので削除 ・Visual Studio 2022 17.8で追加されたコード分析対応(lnt-make-member-function-const)たくさん ※マクロ定義など、MS社の管轄している未対応箇所を除く ●不具合修正 ・スクリーンセーバーを設定している場合に落ちる設定の組み合わせがある不具合の修正 ・進む/戻る/履歴ボタンの活性化状態の切り替えが機能していなかった不具合の修正 ●Windows11 23H2の不具合対応 ・未走査のデスクトップでCOM比較でのソートを行う設定になっている場合に落ちる場合がある問題への対処 ※STLかコンパイラのバグと、Windows11 23H2の性能劣化の仕様変更かバグの合わせ技  Windows7のライブラリを2回走査すると安定する不具合と同じ現象 Ver.16.4.5.0 ・クリップボードにテキストをコピーする処理の修正方法が間違っていたので修正 Ver.16.4.4.0 ●Cppcheckによる静的解析対応 ・主に初期化系の性能に関するものを40件くらい対応 ●フォルダーバー/インサイドツリーのコンポーネントの更新 ・INameSpaceTreeControl(Vista)からINameSpaceTreeControl2(7以降)に変更 ※そのうち設定反映でコンポーネントの再構築が不要になるとか、機能が追加されるとかのメリットが出てくる想定 ・Zipや7ZipのOSのアイコンが、ツリー上で見分けづらいので「その他」の指定色に変更(23H2対応の一環) ●その他 ・メニュー定義ファイルのショートカット修正 ●システムショートカット/キー割り当て/マウス操作を組み合わせることで多重表示され、操作しにくくなるためロールバック ・_ToolbarIconMode.txt/_ToolbarListMode.txt/_ViewMode.txtはMFC系のメニューに置き換えたのを戻した ・メインメニューを非表示にした場合のみ表示されるショートカットメニューが10種も同様 ●不具合修正 ・クリップボードにテキストをコピーする処理でメモリリークするルートがあった不具合の修正 ※グローバルメモリのロック失敗のイレギュラーケース ・ネットワークパスの判定処理でメモリリークするルートがあった不具合の修正 ※UNC表記のローカルファイル表記 ・起動直後などステータスバーの描画が崩れる場合がある不具合の修正 Ver.16.4.1.0 ●全スキンテーマ ・MFC系のポップアップメニューでOSのダークモードを適用 ●追加スキンテーマ ・Flat(Blue/Black/Silver/Aqua)を追加 a.フラット(ベタ塗り)イメージ描画の実装 b.ステータスバー/メインメニューなどはフレーム背景色を適用  ※ステータスバーのタブセット名の表記は変化しない c.ツールバーはテーマのボタン色を適用 d.各種ドッキングバーのキャプションをテーマのボタン色を適用 ・これらを用いた同梱テーマファイルを3つ追加 a._DarkMode(Flat).th b._FD(FlatDark).th c._FILMTN(FlatDark).th ●オプション ・機能一覧は全機能メニュー(_MainFullCmd.txt)を使用するように変更 ・テーマ設定画面の文言修正とレイアウトの修正 ・テーマの保存時に適用済みの値を使用していたのを、画面上の値を使用するように変更 ・DDX/DDVでエラーになったOK/適用の処理を修正(50画面くらい) ・ページ切り替えの際にもDDX/DDVのチェックをするように修正 ・誤字修正、綴り間違い修正 ●ステータスバー ・キーボードモードとタブセットにツールチップを追加 ・タブセット表示の最低文字数を5にした ・キーボードモード欄をダブルクリックすると_StatuskeySetMenu.txtのメニューを表示する機能を追加 ・タブセット欄をダブルクリックすると_StatusTabSetMenu.txtのメニューを表示する機能を追加 ※ウィンドウ管理バーを表示してないとき用 ・ステータスバーのテキスト/アイコン/チップテキスト描画、サイズ計算を作り直して拡張性と動作の効率化を向上 ●ウィンドウ管理バーのタブセット切替メニュー(_TabMngBarTabset.txt) ・タブセットの一覧のプレースホルダー(ID:39996)を使用できるようにした ・配布用のメニュー定義ファイルは上記のプレースホルダーを使うように変更 ※既存の書き方も可で、上記のステータスバーから表示されるメニューと使い分けしても良いでしょう ●その他 ・黒系のテーマでツールバー画像の視認性が下がらないように画像を補正 ・ショートカットキーの重複を整理 ・前回リリースしたメニュー定義ファイルの評判が悪かったので既存踏襲になるよう見直し  同様に_MainNormalCmd7A.txtを追加 ・FullStateOpen/FullStateOpenExで、当該でスクリプト1個目のみ「新しく開く」の動作に変更 ・_ToolbarIconMode.txt/_ToolbarListMode.txt/_ViewMode.txtはMFC系のメニューに置き換えた ●不具合修正 ・複数のスレッドから並列で設定を読み出す場合に予期せぬ挙動になることがある不具合の修正 ・最近閉じたウィンドウバーのツールバーの表示を切り替えた際に描画が崩れることがある不具合の修正 ・起動時のタブセットのActiveTabNoが範囲外の場合に落ちる不具合の修正 ・保存時のActiveTabNoが不適切な値になるルートが存在する不具合の修正 ・ツールチップテキストの本文は1024文字未満である必要があるのに、1024文字より長い部分を切り捨てていた不具合の修正 ※ついでに「...」の省略文字表記を追加 ・タブを保存しないモードの場合に、ウィンドウ管理バーのタブセットメニュー項目が非活性にならない不具合の修正 Ver.16.3.1.0 ●初期設定ツール ・タイトル文言を修正 ・説明テキストの文言修正 ・上書き確認画面で、ユーザーが編集したファイル/新しい版が存在する/インストール先に存在しないファイルのみ一覧に表示するように変更 ・ログの改行を修正 ●システムメニュー(タイトルバーの左のアイコンで表示されるメニュー) ・「新しく開く」を追加 ●メニュー定義構文の拡張 ・POSITIONにLEFTを追加  親ウィンドウの左上の座標を指定します。 【書式】 POSITIONLEFT ・TITLEを追加  見出し目的で使う用途です。  メニューから選択するとID:0(キャンセルと等価)するため動作しません  MENUITEMコマンドを使用すると以下の記述と同じです。  MENUITEMタイトル表記のコマンド0 【書式】 TITLEタイトル表記のコマンド ・INCLUDEを追加  同じパスにあるメニュー定義ファイルを読み込み展開します。  なおINCLUDEして読み込んだファイル内のINCLUDE、DIRECTORYは無視します。 【書式】 INCLUDEファイル名 ●メインメニュー系のメニュー定義ファイルを追加 ・全機能メニューの定義ファイルを追加(_MainFullCmd.txt、後述の隠し機能や次版の機能で使用) ・よく使う機能のメインメニューの定義ファイルを追加  _MainNormalCmd.txt内から以下の6ファイルを読み込む階層構造を持つメニュー定義ファイルです。  a.ファイル(_MainNormalCmd1F.txt)  b.編集(_MainNormalCmd2E.txt)  c.表示(_MainNormalCmd3V.txt)  d.ツール(_MainNormalCmd4T.txt)  e.ウィンドウ(_MainNormalCmd5W.txt)  f.ヘルプ(_MainNormalCmd6H.txt) ●隠し機能 ・ヘルプ作成/リファレンス用に、全機能一覧.txt/全機能一覧.htmlをasr.exeと同じ位置に出力するコマンド(ID:36223) ※旧AllCommand.txtとの比較  不足していた動的生成コマンドの追加  ツールバー等への割り当て用の重複の削減 ●その他 ・ドッキングバーのフォーカス制御の計算処理を削減 ・タブレット支援バーのフォーカス制御が一部未実装だったので追加 ※デスクトップモードはフォーカスを受け取るコントロールが無いので未対処 ●不具合修正 ・ツリーの右クリックメニューの表示の際にメモリリークが発生する場合がある不具合を修正 ・リスト上部のコントロールの再描画で、フィルタダイアログの表示後の対処漏れを修正 ・MDIモードでウィンドウを閉じる場合、メインフレームに対する再描画が下位階層のウィンドウに反映されないドライバ依存の問題への対処を追加 ・最近閉じたウィンドウバーとユーザー定義のフォーカス制御「フォーカスを失ったら非表示にする」が、テーマの「アクティブタブ背景色を使用」がFalseの場合に機能しない不具合の修正 ・最近閉じたウィンドウバーの初回表示時のみ、即座に非表示にしてしまうことがある不具合の修正 ・メニュー定義ファイルの誤記修正 Ver.16.2.0.0 ●画面描画の改善 ・リストの上部のコントロール群の表示制御を整理して、ちらつき低減と、まとめて開く系の処理効率を向上 ・最近閉じたウィンドウバーのアイコン描画位置を調整 ・デフォルトボタン画像が配色依存で視認性が悪くなるのを改善 ●各種ビットマップボタンの表現の改善 ・ホバー状態の描画を改善(テーマ色の適用) ・選択ステータス描画を改善(テーマ色の適用) ・非活性状態を実装 ●新型のツールチップの作成と適用 ・各種ツールチップのOSのダークモード適用 ・再表示等を含めたディレイ時間の調整 ・太字で描画されるタイトル表現を追加  長いファイル/フォルダ名称の確認用  タイトル部は98文字まで(コンポーネントの上限が終端NULL込みで100文字)  はみ出すなら95文字以降に省略記号(...)を付与 a.ウィンドウ管理バー  インフォチップの表示の抑制を追加  現在タブをタイトル、関連情報を文面にセット b.最近閉じたウィンドウバー  インフォチップの表示の抑制して置き換え、分割状態等の情報など表記を追加 c.タブバー  現在タブをタイトル、関連情報を文面にセット d.タブレット支援バー  対象アイテムをタイトル、補足説明を文面にセット e.ユーザー定義バー  対象アイテムをタイトル、補足説明を文面にセット f.アドレスバー付近のボタン類の全て  従来通り表示をすべて文面にセット(表示内容は改善の余地あり) g.ファイルリスト  表示トリガーを他のバーと同じ方式に変更  タグ情報の補足表記を追記  ここだけ極端に表示が遅い場合がありうるので(APIの応答待ちで最悪数分)、リスト単位でスレッド化して管理するようにした ※バックグラウンドスレッドが応答待ちの状態になったらエクスプローラーと同じように、OSから返事が来るまでツールチップが表示されなくなります。 ●全機能メニュー定義ファイル関連(主にVer.17を見据えた改修で次回以降の布石) ・メニュー定義ファイルの機能拡張が3個  機能するが不適切なロジックが残っているので調整中 ・機能要件の検証のための試作機能の追加が10個(メインメニュー) ・メインメニューの撤去に伴った、個々のメニュー呼出しショートカットの追加が6個(ALT+F等) ・F10の横取り/メインメニューの呼び出しの仕組みの追加 ・ALT装飾キーの無効化のための仕組みを追加 ●その他 ・プリコンパイル済みヘッダのコンパイラオプションを変更  (全exeのプロジェクトを変更したが、ウィルススキャンソフトの誤判定が嫌なので未ビルド) ・組み込み系のユーザー定義メニューの親ウィンドウを子フレームからメインフレームに変更 ・メニューエディタ画面のLoadTestボタンでのメニュー位置の初期値はマウス位置に修正 ・タブバーを横置きした際のサイズを調整 Ver.16.0.3.0 ●不具合修正 ・表示モードの組合せによって、高速でスクロールさせると落ちることがある不具合の修正 ●その他 ・上記の不具合修正のついでに、アイコン等の取得スレッドの計算量削減、オブジェクトの初期化ロジックの改善、同期性能改善、メモリ転送量の削減など改善点が多数であるがほぼ誤差 ・ウィンドウ管理バー/タブバーの太字の表現を複数回の重ね描きからボールドフォントに変更 ・2画面モードの、分割ウィンドウのサイズ/日付を比較モードの場合のアイコンイメージを目立つ配色に変更 ・テーマファイルの_DarkMode.thの説明を訂正 ・隠し機能でヘルプ作成用の全機能一覧の作成コマンドを作成(まだ1/5) Ver.16.0.1.0 ●インストール/更新ツールの改修 ・テーマ配布処理の追加 ・初期設定のエクスプローラー風のテーマ対応 ・画面内の説明文言を追加 ●長いファイル名の視認性の向上 ・共通  テキスト幅計算をフォーカス装飾フォントをベースで考えるように変更 ・コンテンツモードのレイアウト変更  ファイル名が折り返しできるスペースがあれば折り返し表示するように変更 ・並べて表示のレイアウトを大幅に変更  設定依存せずに、スペースがあれば常に折り返し表示するように変更  ドラッグ選択の当たり判定、ファイル名以外が分かるように格子色による塗分けするように変更  「種類」や「サイズ」は下端に詰めるように移動  表示の優先順位は「種類」よりも「サイズ」の方を優先に変更 ・一覧  フォーカス装飾描画対応の微調整 ●色・フォント設定 ・配色設定できる項目数が、従来比3倍くらいに増えた ・配色設定に名前を付けて保存する機能の追加 ・テーマファイルのアップロードサービスの追加 ・フォーカスのテキストフォントの太字、下線、斜体、大きいといった装飾設定を新規追加 ●色・フォント設定へ移動した設定項目 ・フォルダーバー(OSテーマ依存のため)  1.クラシックスタイル ・タブ共通(設定ヶ所が分散しないようにするため) 1.現在のタブと同じパスのタブが存在していたら強調表示(薄緑色  →配色指定に変更  2.ファイル操作エラー時にロック疑惑のあるタブの強調表示(赤色)   →配色指定に変更  3.現在のタブよりも下位の階層のタブの強調表示(紺色)   →配色指定に変更  4.(現在のタブ)太字にする  5.(現在のタブ)輝度を大きく変えて強調する  6.(現在のタブ)枠線を付けて強調する   配色指定を追加 ●キー割り当ての初期値の変更 ・Yにインサイドツリーの表示切り替えを追加 ●インサイドツリーの動作変更 ・インサイドツリーの表示時にカレントディレクトリを展開するように変更 ※存在しないネットワーク/リムーバブルメディア/USB接続デバイスなどを開こうとすると当分返ってこないので  起動時/下記のまとめて切り替え系コマンドも除外  またネットワークや仮想フォルダは連動設定によりスキップあり ●コマンドの追加 ・現在のリストのインサイドツリーを表示(ツリーは初期展開) ・現在のリストのインサイドツリーを非表示 ・全てのタブのインサイドツリーを表示 ・全てのタブのインサイドツリーを表示(分割を除く) ・全てのタブのインサイドツリーを非表示 ・次のウィンドウ(フレームAPI) ・前のウィンドウ(フレームAPI) ・インサイドツリーを同期 ●Windows11の機能廃止に伴う関連機能の削除 ・外部プロセスも含めたウィンドウの整列系の機能を全てリソースDLL、コマンド定義から削除 ※exeコマンド自体は残しているので必要ならご利用してください ●画像の変更 ・チェックロックモードのチェックボックス画像が見にくいとのことなので派手めに変更 ●下記3メニューを共通メニュー処理を行うように変更(互換性維持のためNONOTIFY OFF、POSITION MOUSE固定)  _ToolbarIconMode.txt(ツールバーのアイコンモードボタン)  _ToolbarListMode.txt(ツールバーの表示モードボタン)  _ViewMode.txt(リストの右下の表示モードボタン) ※共通メニュー処理にすることで、各メニュー項目を混在させることが可能になった ●メニュー定義関係の機能追加 ・名称が変動する系のプレースホルダーにキー割り当てされたキーの表記を付与する仕組みを追加 ・全機能表示メニュー用のプレースホルダーをたくさん追加 ・NONOTIFI OFFの場合にキー割り当てされたキーの表記を追加 ●その他 ・コンパイラが大きく変わっているので全ビルドしなおした ・輝度計算式を人が分かりやすい数字を使うように変更 ・デバッグバーの変数表示で、組み込み関数の場合も変数展開後の値を表示するように変更 ・アイコンや詳細情報取得スレッドの管理の見直し、CPU負荷の削減と高速化、冗長な処理の整理、イベントの最適化などを行った ※Ver.15系比で、画面サイズに依存するが10~30%くらいの負荷削減 Ver.15.9.5.0 ●不具合修正 ・フィルタ/ディレクトリ内検索のボタン押下順/キー操作順によって画面上にゴミが残る不具合の修正 ・「タブグループを閉じる」と「タブセットメニュー」のIDが重複していた不具合の修正 ・ログバー/デバッグバーの、ツールバー/タイトルバーの情報管理/復元処理が未実装だったので実装 Ver.15.9.4.0 ●不具合修正 ・画面分割時にデバッグバーで実行したスクリプトは、?nowdir?系置換マクロに反対側のパスがセットされていた不具合の修正 ・OneDriveがデスクトップに2個あるような環境の場合、更新が頻繁に発生する場合がある不具合への軽減策を追加 ※エクスプローラーで見ても取得情報が異常ですし、同じフォルダーに同じパスのものが2個存在するWindows側のバグと思われます Ver.15.9.3.0 ●アイコン/詳細情報の取得スレッド制御の不具合修正(詳細/並べて表示/コンテンツ) ・詳細情報の取得ステータスの管理に問題があり、取りこぼすルートが存在したのを修正 ・詳細情報の取得の完了済みフラグのセット漏れを修正 ・ローカルサムネイルキャッシュが存在した場合、詳細情報の取得リクエストを送らない不具合を修正 ●その他 ・配布書庫を作成する7Zipのバージョンを更新 Ver.15.9.2.0 ●安定性の向上 ・設定ファイルの保存処理で上書きではなく、テンポラリ出力+リネーム+削除する方式に変更 ●メニュー定義の機能追加 ・ユーザー定義メニューの親を子フレームからメインフレームに変更 ・メニュー定義ファイルにNONOTIFYコマンドを追加  初期値はON  NONOTIFY ONでメインメニューの状態を反映しない、OFFにすると活性状態/ラジオ/チェックボックスを反映 ・メニューエディタのNONOTIFY対応 ・メニュー定義ファイルにNONOTIFY OFF/POSITION MOUSEを追加  (この変更が必須になるのはVer.16移行とします)  _ToolbarIconMode.txt(ツールバーのアイコンモードボタン)  _ToolbarListMode.txt(ツールバーの表示モードボタン)  _ViewMode.txt(リストの右下の表示モードボタン) ・表示モード切替メニュー(リスト下部)コマンドの追加(ID:36803) ●操作性の改善 ・シェルアクション系のコマンドの実行時に未選択の場合に警告表示を追加 ※プロパティ表示、切り取り、コピーなど ●その他 ・最近閉じたウィンドウバーをダブルバッファリングするように変更 Ver.15.8.9.0 ●不具合修正 ・現在の分母を最大値とする百分率の場合に描画漏れが出る不具合の修正 ・スペルミス修正と文字化け修正が2個 ●その他 ・テーマファイルを読み込む機能を追加 Ver.15.8.8.0 ●タブセット関連 ・オプションでタブセット11~81の名称設定を追加 ※タブセット11~81はカスタマイズ用につきメインメニューには反映されません  起動速度低下を抑止するために、空文字がセットされていると以降の読み取りをしません ・タブバーとウィンドウ管理バーのタイトルバーに現在のタブセット名表記を追加 ※ステータスバーの表示は性能上の理由から削除を検討しています ・ウィンドウ管理バーのタブセットメニューを修正(コメント行を追加) ・AsrLoad.exeに/tabsetオプションとタブセットの切り替えを追加 ※続けて数値を記載することで、指定番号のタブセットに切り替える(1~81) 例)タブセット1に切り替える場合 Asrload.exe /tabset 1 ●タグ関連 ・タグ入力ダイアログに設定ボタンを追加 ・オプションで絶対タグと相対タグの初期テキストの設定を追加 ●その他 ・タブレット支援バーの未使用処理を削除 ・音声認識情報の管理構造体をクラスに変更 ・テーマ指定の設定を通常設定と同じクラス内に移動 ・その他設定をクラス化 ・メインメニューでの設定をクラス化 ・設定をカテゴリ分けしている孫クラスを整理 ・不具合じゃないレベルの不整合をたくさん修正 ・サイズバーの設定と状態の持ち方が、不思議な構成になっていたのを修正 ・タブの色、強調色なども色設定に寄せた ・現在の色設定をファイル出力する機能を追加(読み込み機能は未実装) ●不具合修正 ・MDIモードでタブを閉じた時に再描画がかからない不具合の修正 ・拡張子色分けの設定値の文字数上限をセットしていなかったので260文字に修正 ・フィルタ系のメニュー定義ファイルの説明コメントを訂正 ・相対タグの表示設定が保存されない不具合の修正 Ver.15.8.4.0 ●コード分析対応 ・警告を100個くらい減らした(主にcast系) ●生成AIによる指摘(メニュー定義ファイル解析) ・メモリ開放の可否の判定の冗長性の解消 ・ON/OFF指定するコマンドで、「ON」「OFF」以外の記述の場合に値が何もセットされない仕様を変更  (文法間違いではないので、「ON」ならtrue、それ以外をfalseに変更)  DIR_FOLDER  DIR_FILE  HIDDEN_ITEM  DIR_UP ●OS不具合対応 ・Windows10かつ、OSのダークモードを使用時かつ、ウィンドウ最大化状態で起動しようとするとタイトルバーの描画がされない件の対応 ※MS社より、当該APIはWindows11以降でのみ正式対応という事になった ●不具合修正 ・一覧/詳細一覧かつ、小さいアイコン以外の場合にEnsureVisble()で目的のアイテムが表示されないコンポーネントの不具合対応 ※再描画フラグをOFFにした状態でEnsureVisble()をするので、スクロールしていくのが見えるようになり操作性は劣化 Ver.15.8.0.0 ●高DPI環境でのレイアウト調整 ・リストのカラム幅調整  初期設定コマンド  ファイル情報コマンド  テキストコード変更コマンド  ロックしたプロセスの検索コマンド  バージョン情報コマンド  オプション(修正箇所多数、テキストレイアウトも含む)  タグ情報ダイアログ(本体) ・閉じるボタン描画  ウィンドウ管理バー  タブバー ●コード分析対応 ・警告を150個くらい減らした(主にconst、constexprの宣言) ●ユーザー定義バー ・新規作成系の説明テキストを改善 ・コマンドメニューの定義ファイルの構成と文言を修正 ・リストのパスを登録コマンドを追加 ・設定メニューの文言変更  このバーのコマンド実行後の動作→フォーカス制御  リストへフォーカス移動→コマンド実行後にリストへフォーカス移動  このバーを非表示にする→フォーカスが失われたら非表示にする ・「このバーを非表示にする」の動作を文言通りの「フォーカスが失われたら非表示にする」に変更 ・シングルクリックで開くのショートカットキーをS→Cに変更 ●最近閉じたウィンドウバー ・設定メニューの文言変更  このバーのコマンド実行後の動作→フォーカス制御  リストへフォーカス移動→コマンド実行後にリストへフォーカス移動  このバーを非表示にする→フォーカスが失われたら非表示にする ・「このバーを非表示にする」の動作を文言通りの「フォーカスが失われたら非表示にする」に変更 ●ウィンドウ管理バー ・貼り付けなどの説明テキストを改善 ・コマンドメニュー定義ファイルからタブセット系の機能を削除 ・ツールバーにタブセットメニューボタンを追加して上記で削除したものを表示する機能を追加 ※メニュー定義ファイルは新規追加 ●不具合修正 ・メモリが逼迫+CPU高負荷時+ディスクI/Oも高負荷の場合に、ごくまれに落ちる可能性がある不具合の修正 ・GDI枯渇してOSの描画も不安定な時、描画が崩れる可能性がある不具合の修正が2件 ・オプション→リスト→表示→初期値で、アプリ終了時に未開放のメモリリークしていた不具合の修正(実害無し) ●その他 ・クリティカルセクションのカプセルクラスのオーバーヘッドを削減 ・オプションの色・フォント画面の生成ロジックをブロック化して色設定の数を5倍に増やす仕組みを追加 Ver.15.7.0.0 ●フィルタ設定画面 ・フィルタ定義ファイルのフォーマットを変更 ※TSVで2項→最大3項に変更なので上位互換あります。 ・拡張子の「...」ボタンは常時使用可に、選択内容によってチェックボックスおよびテキストの活性化制御をするように変更 ・開始日時/終了日時に「...」ボタンを追加 a.メニュー表示用途で、和名による指定をするための置換マクロを6個追加 b.日時用メニュー定義ファイルを新規追加 ・ファイルサイズ指定に「...」ボタンを追加 a.メニュー表示用途で、和名による指定をするための置換マクロを2個追加 b.サイズ用メニュー定義ファイルを新規追加 ●オプション ・メニュー定義ページに機能しないボタンが残っていたので機能削除 ・フォルダー設定ページのツリーに表示する項目 a.システムで使えないものを非表示に変更 b.和名が取得できるものは、識別名(和名)という表記に変更 ●確認メッセージの非表示設定追加 ・「未選択状態で「選択アイテムを追加」を実行したときの確認」の非表示設定を追加(ユーザー定義バーのみ対象) ●サイズの単位表記の仕様変更 ・単位が切り替わる閾値を超過が発生した場合にしていたが、剰余が0になるタイミングに変更 ※エクスプローラー準拠の仕様で1024→1024/1025→1KBであったものを正しい表記にした1024→1KB ●その他 ・タブレット支援バーの未使用巻数を整理 ・サイズ変更時の再描画を一元化してちらつきを低減した ・クラスメンバーは初期化リストを極力使用してコンストラクタで初期化を行わないように変更(約70ヶ所) ●不具合修正 ・既存のウィンドウサイズ変更時のちらつき抑制処理の真偽判定が逆になっていた不具合の修正 ・CoInitialize/CoUninitializeをカプセル化し、COMの初期化と解放を自動的に行う仕組みを使うように変更 ※スレッドプールで管理されたスレッドの場合、インスタンスの再利用の際にCOMの解放を行わない現象が発生するため環境依存の問題が発生しうる Ver.15.6.4.0 ●画面更新時のちらつき低減 ・風車、時間、ステータスの自前で描いてるテキストの更新処理の見直し ・ボタン、リストの自動更新時の描画手順を見直し ●初期設定ツール(Setting.exe) ・AVX2を使えない環境では、AVX2版を選択できないように変更 ●テキスト文字コード変換 ・レイアウト/文言変更 ・一覧から削除機能を追加 ・UI制御を改善して誤操作を抑止するように変更 ・未選択状態でのコード修正の場合にエラーメッセージを出すように変更 ・変更前後でコードページが同じである場合に未処理にするように変更 ・変更前コードページが不明なものが存在する場合、エラーにして処理継続するか確認するように変更 ●オプション ・リスト→表示→表示共通に項目の追加 1.「隠し属性のアイテムの表示」 2.「.で始まるアイテムを表示(OFFにすると遅い)」 3.「ローカルサムネイルキャッシュを表示(OFFにすると遅い)」 ・全体→タグ 1.相対パスのタグび表示設定と、説明テキストの追加 ●その他 ・テーマ切替時のドッキングヘルパーの構築速度が少し改善 ●不具合対応 ・_wfullpath()にGUIDを含むパスを渡すと先頭3文字を::{→::\{と変換してしまうので仮想フォルダは処理しないように修正 ・テーマ無しの場合にグループアイコンの描画で落ちる不具合対応のため、グループアイコン画像の管理の仕組みから修正  また再描画をスキップするパターンもあったのも同時に修正 Ver.15.6.0.0 ●代替ストリーム(Alternate Data Stream)関連の正式化 ・代替ストリームの件数表示コマンドのリソース類を追加 ・「アクセスブロック属性の解除」を廃止して「代替ストリームの一括削除」に名称を変更 ※exeなどは変更なし、全ての代替ストリームを対象と認識できる機能名に変更 ●絶対タグ/相対タグ(As/Rユーザー同士の共有タグ) ・タグ登録ダイアログのUI制御/適用ロジックなどを作り直した ・タグ情報→タグ登録ダイアログのUI制御/適用ロジックなどを作り直した ・タグ登録の際に「絶対パス」/「相対パス」のラジオボタンと説明文言を追加 ・「相対パス」を「タグ削除」コマンドで消した際、最期のタグを消したら「.LocalTag」を削除するように変更 ●リストのツールチップ制御の改善 ・処理手順を最適化して効率を向上 ・デフォルトツールチップの制御を横取りして、なるべく抑制するように変更 ・設定の組合せと、特殊な操作の組み合わせることで遅延が大きくなる現象を改善 ●描画の調整 ・リスト上の選択状態の復元の際に、ビュー単位での再描画処理に戻した ※ちらつき増、開く際の速度低下ありだがOS差異を吸収 ・タブ単位でクローズ時の描画を抑制して若干の速度向上 ・アプリ終了時の再描画を抑止して若干の速度向上 ・ボタン、ドッキングバー等の部品のWM_PAINTの発生源を精査して15個くらい削減 ●フレーム/ビューの管理の仕組みを抜本的に見直した ※全体的な高速化/処理の簡易化と、デバイスドライバ依存の差異が入り込む余地の削減 ・タブセット切り替えを通常のスクリプト処理ではなく、専用の簡易スクリプト処理に変更 ※タブの挿入位置の設定を無視するように仕様改善 ・リストがアクティブになるまで走査しない動作の見直し ・画面分割の動作の全般的な見直し ・フレーム/ビューのアクティブ化制御の全般的な見直し ・フレームのウィンドウ状態/サイズを構造体からクラス化(アクティブ化制御で使用) ・起動時のフレームの1個目開かないようにする方法が見つかったので起動時処理とタブセット切替を見直した ●高DPI対応 ・ユーザー定義バーで一覧表示しない場合のアイコン画像の拡大表示の正式対応 ・タブレット支援バーのアイコン画像の拡大表示の正式対応 ・最近閉じたウィンドウバーの拡大表示対応 ●その他 ・Setting.exeでソースコードの文字コード判別を間違うコンパイラの不具合に対応 ・本体のコンパイラオプションをISO C++20に変更 ・メニューに表示しているタブグループの色見本の画像をテーマ切り替えに連動するように機能追加 ・グループの最大値が2重管理になっていたので是正 ・最近フレームワークが自動挿入するメニューの処理で警告が表示されるようになっていたので未処理になるように変更 ・次/前のタブ(Zオーダー順)の循環型が簡単にできたので試験的に機能追加(ID:35813,35812) Ver.15.4.8.0 ●アドレスバー ・ipconfigなどで取得できるIPv6アドレスを、アドレスバーへの入力でIPv6形式のナビゲート可能文字列に変換する機能を追加 ローカルホストへループバックする例) 「\\::1(%スコープID)/(共有名)\」→「\\--1.ipv6-literal.net\(共有名)\」 ●ログバー ・設定メニューの中に「名前を付けて保存」を追加 ●OSのダークモード(Windows11のみ) ・OSのダークモードを使用する設定になっている場合、アプリの描画にフックを掛けてリストのスクロールバーの描画を置き換える処理を追加 ※本体内の全てのListCtrlや、オーナードローできないComboxExにも適用される ●アクセスブロック属性の解除コマンド ※Ver.15.5.0.0で機能名を「代替データストリームの一括削除」に変更する予定です。 ・機能ボタンの表記/タイトルバーなどの文言を修正 ・「アクセスブロック属性のみを対象にする」オプションを追加  チェックを外すと、全ての代替データストリームが対象 ・文字列宣言が古い形式になっているコードを修正 ●代替データストリーム処理全般 ・代替データストリームの読み/列挙はかなり古いコードだったので、Vista以降のAPIで書き直した ※本体、Info.exe、RemoveZoneID.exeに影響 ・ファイル情報コマンドで、代替データストリームのタイプ名の種類は名前見ればわかるので表示を削除した ●上級者用タブセット ※上級者向けの機能という扱いで、スクリプトのPostMessageやメニュー定義での用途に限定 ・タブセット11~80(ID:33810~33880)まで使用可能にした ・タブセット番号が0~9の範囲外の場合に落ちる不具合の修正 ・タブセット11以降のステータスバーへの表示を追加 ●イベント駆動スクリプト「プレビュー表示発生」の改善 ・プレビュー開始トリガーに厳密に沿うように変更 ・プレビューバーへの表示と排他にして、外部のプレビューアプリを使用するスクリプトが組めるようにした ・スクリプト実行後、自身にフォーカスを戻すように努力するようにした ●その他 ・テーマ色が外部コマンドに広げられるように色設定を統合しようとしたが(全体の1/5程度) ・ビルド警告を修正(4個) ・並べて表示の描画座標を微調整 ・プレビューバーとの連携処理で、冗長な初期化/判定処理を整理した ●不具合修正 ・スキンテーマによってアドレスバーの背景が真っ黒になる不具合の修正 ※GetSystemColor(COLOR_WINDOW)をセットすべきところ、COLOR_WINDOWをセットした大ポカ Ver.15.4.0.0 ●代替ストリーム(Alternate Data Stream)関連の強化 ・サムネイル表示の最優先に、代替ストリームが存在した場合は名称を列挙する機能を追加(背景が薄黄色のテキスト)  オプション→リスト→アイコン→サムネイルに設定を追加 ・代替ストリームの件数表示コマンドの各種リソースの追加して各種バーやメニューに配置できるようにした ●見た目の変更 ・本体ダイアログを自前描画に変更し、スキンテーマに沿った配色に変更 ・ダイアログ内のコントロールは概ねカスタムドローに変更 ・各スキンテーマごとに色調の調整、特にOffice2007(黒)は全色変更  (タブ、各種背景、モード切替系など、50色くらい×11パターンを調整) ・テキストのみ型のボタンの描画を今風(凹まない)に変更 ・アドレスバー/ディレクトリ内検索/フィルタの背景色はOSのダークモードの設定ではなく、スキンテーマに依存するように変更 ・ログバー、デバッグバーでWindows11はレイアウトが崩れるのでダークモードの適用をやめた ・タブバー/ウィンドウ管理バーのフォーカス/アクティブタブを目立たせるように変更 1.選択/非選択の色調の調整 2.枠線を太くした 3.矩形の範囲の調整 5.強調のためのアクティブタブの輝度の下げ幅を調整、特にOffice2007(黒)は輝度を上げるように変更 4.グループに含まれるタブと、含まれないタブのテキスト色を変えた 5.アクティブタブの文字色をテーマごとに固定にした ●ExRunスクリプト変更 ・ExRun登場時のRunWait、ShowWindow、TimeOutを覚えない仕様バグを修正 ・BootDirが指定されている場合、ExRun登場時ではなく実行時に置換マクロを展開していた不具合の修正 ・ExRunの組み込みコマンドで、OSのシェル実行を行うShellExecuteを追加 ●不具合修正 ・マウスジェスチャで閉じる系のコマンドが実行された場合、オブジェクト破棄の順番が狂って落ちる不具合の修正 Ver.15.3.1.0 ●情報コマンドの改修(Info.exeの「フィル情報」ダイアログ) 1.レイアウトを疑似タブによる画面切り替え型、自前で画面サイズを可変に変更 2.テキストとアイコンのコピーボタンを統合 3.ファイル情報(Info)で代替ストリームの個数を表示する機能を追加  置換マクロに代替ストリームの個数を示す$AlternateDataStreamを追加 4.アイコン情報(Icon)の表示件数を増加  アイコンサイズのコンボボックスを小/中/大の3段階から、16/32/48/64/96/128/192/256ピクセルの8段階に変更 5.代替ストリーム(ADS)で、名称一覧と内容のバイナリ(HEX)/アスキー(ASCII)/混合(Mix)表示する機能を追加  指定した代替ストリームの削除機能を追加 ●パス文字列からITEMIDLISTへの変換で、全ての公開APIで変換できないパス(USB接続されたAndroidの「内部共有ストレージ」など)の動作改善 ・22H1以前で大丈夫であった相対取得もNGなので、EnumObject経由で取得して結合するように補完する処理を追加 ・テキスト変換時に、この手のパスを飛ばした文字列にならないように修正(上位階層へ移動、アドレスバー文字列、自動生成スクリプトなどに影響) ※「(フルパス)\存在するが公開APIで取得できないパス\hoge」と「(フルパス)\hoge」が同一と見なされる現象でエクスプローラーでも同様に発生 ●スクリプト変更 ※Existを使うべきという仕組みであったが分かりにくい ・IsDirecty、IsFileで対象が見つからない場合はNot Foundのメッセージを出すように変更 ●ユーザー定義バーの改善 ・「選択アイテムの登録」で未選択の場合のスクリプト名称を決定する際に、なるべく人が理解できない名称を避けるように変更  また上記のイレギュラーなパスも取得可能となった ●As/Rユーザーだけ見えるタグ(仮称、暫定) ・リンク切れタグの削除機能でローカルタグを対象にするように機能追加 ●リスト上のアイテムを走査して、代替ストリームの件数を表示するコマンドの追加(ID:33322 仮称で暫定) ※走査対象はフォルダサイズ計算と同じで、選択しているものか、未選択の場合は現在のフォルダーの全てが対象  リストの項目名の横に代替ストリームの件数を表示する  暫定実装につき、スクリプトによるPostMessageコマンド以外で使えません ●不具合修正 ・OSによってスリープから復帰した時に未走査のタブで「引数が不正です」というエラーが表示される不具合の修正 ・オプション反映時に「引数が不正です」というエラーが表示される可能性がある不具合の修正 ・パス表記の揺れを補完する処理を追加 ※結果として「\」「/」「|」などのパスとして使えない文字の含まれるフォルダーのタブやタイトルバーの表記が変わる ・一括新規作成で、パス名に使用できない文字は全角に変換するように修正 ・選択状態の判定でチェックボックスを見ない条件がある仕様の不統一を修正 1.ディレクトリ内検索の「選択/解除」 2.ユーザー定義バーの「選択アイテムの登録」 ・デバッガで未選択状態でブレイクポイントをセットしようとすると落ちる不具合の修正 ・スクリプト制御の不具合修正(?SelFile?等でフルパスではなく相対パスで渡している) 1.ユーザー定義バーから、選択状態の下位階層を開くコマンドの引数 2.ユーザー定義バーから、選択状態をスクリプトに渡すコマンドの引数 Ver.15.2.6.0 ●アドレスバーの改修 ・EraseBackGroundの塗りを追加して枠塗り領域を増やした ※オーナードロー不可なので色付けは背景のみ ・OSのダークモード時の色塗り対応 ●起動/終了/タブセット切替の高速化 ・リストの初回走査前のコントロールの初期化を更に減らした(1タブあたり2割くらいの速度向上) ・強制的に全て閉じる際に不要となる冗長な処理を飛ばすように変更 ●リストのツールチップ ・戻る/進む/上位階層の長押しの説明を追加 ・履歴と上位階層の説明が入れ替わっていた不具合の修正 ●アクセスブロック属性の解除 ・代替ストリームのサイズを0にするのではなく削除するように変更 ●その他 ・グループ内の個数を数える処理の呼び出しが残っていたので削除(個数管理に移行済み) ・未使用の変数の整理 ・タイトルバーの表示設定で無駄にグローバル変数を使っていたのを修正 ・表示モード設定ダイアログの並び順のリストの幅を動的に計算して見栄えを改善 Ver.15.2.3.0 ●独自の進捗ダイアログからOS標準のものに変更  処理に時間がかかる場合に遅延で表示され、概算の残時間が表示がある。 ※CpMv.exeは後から考えるモードがあるので不可、フォルダサイズ計算は遅延表示が遅すぎて使い物にならないため不可 1.FileDelete.exe 2.FileAttribute.exe ●ファイル一覧生成/アクセス不能状態からの復帰の手順の変更 ・パス文字列からITEMIDLISTを求める際の処理を精査し、簡単な取得で良い場合は動作の早い変換処理を使うように変更 ・上から順に移動可能なパスを求めるロジックを使わないように変更 ・デスクトップ階層にぶら下がるパスへジャンプする際、存在しない場合は通常フォルダと同じエラーになるように変更  (エラー時にアドレスバーに表示が残る) ・走査に失敗してエラー状態かつ、アドレスバーに何らかの文字列が残っている場合、アドレスバーのテキストをもとに上位階層へ移動する機能を追加 ●ダークモード ・Windows11はリストコントロールに対してAPIでダークモードにしないように変更  ※暫定対処、操作性が変わるため非推奨にしていたが、不具合と思われるので未対応にした ・詳細表示のヘッダを自前で塗るように変更 ●その他 ・15.2.0.0で修正した未走査のタブ名の取得処理の速度を改善(非推奨APIと同じ表示名になった) ・同様にお気に入りタブの名称テキストの生成速度を改善 ●不具合修正 ・リストの全更新の際に「引数が正しくありません」のエラーメッセージが表示されることがある不具合の修正 ・オプションのメニュー定義画面の「コマンド一覧ファイルを参照する」の当該ファイルは配布終了になっているのでオンランヘルプに修正 ・テーマ無しの場合、グループ無しのタブの色が黒くなる不具合の修正 Ver.15.2.0.0 ●画面周りの改修 ・2画面モードで非アクティブなリストのアドレスバーの表示テキストを暗くして、アクティブ側の視認性を向上 ・フィルタと、ディレクトリ内検索のテキストボックスの見分けにくかったので色付けした ・リスト画面上のコントロールのレイアウトと見た目に関わる属性を微調整 ・各コントロールのウィンドウハンドルの取得処理を整理と、無駄を省いた高速化が多数 ・表示モードボタンの説明ツールチップを追加(サムネイルサイズ/原版サイズも表示) ・並び順ボタンにツールチップを追加 ・スタティックコントロールに似せた描画のレイアウト微調整 ・GDIオブジェクトの使いまわし率を向上させ、一時的に使用するリソースをケチる方向に変更(一部のみ) ・リスト描画のレイアウトの微調整(全モードで数Pixの微調整が多数) ●「OSのダークモードを適用」設定がONになっている場合の動作 ・アプリ単位での適用を有効にした(ライブラリ管理外のメニューなどが影響) ・フィルタとディレクトリ内検索のテキストボックスの改修のついでにダークモードも作成 ●高DPI環境の改善 ・フィルタ、ディレクトリ内検索のサイズ補正処理を追加 ●Windows 11の非互換対応/不具合対応 ・mspaint.exeのパスが版ごとに異なる問題への対処  1.エディタで開くのスクリプト(Editor.txt)の初期値を変更  2.テンプレートの雛型のコメントを修正 ・最近のWindows11 22H2の性能低下対策として再描画処理を一部最適化 ・Windows11で発生するちらつきを低減 ・Windows11 22H2で顕著になるちらつきを低減 ・デスクトップのダウンロード/ドキュメント/ピクチャ/ミュージック/ビデオを列挙した中から除去するように変更 ※これらの下位のフォルダで更新が発生すると、デスクトップ上の項目が2件になったり挙動がおかしい  エクスプローラーでも延々と増殖するのでOS仕様か否か不明  また更新通知がループするので抑制するように変更 ●その他 ・推奨されない無名構造体の使用数を減らした ・タブを新しく開く処理速度を少し改善 ・走査していないタブも仮想名称を取得できる手法に変更した  (旧処理は速いが、非推奨になったAPIなので移行を検討中) ●不具合修正 ・ツールバー上のボタンのアイコン切替メニュー/表示モード切替メニューで、スクリプト系のコマンドが動いてなかった不具合の修正 ・アドレスバーの色変の更済みが検出できないパターンがあり、再描画の効率が悪くなっていた問題の修正 ・表示モード設定画面の初回表示時に、詳細系の並び順が表示されない不具合の修正 ・タブセットの切り替え時に正しく並ばないことがあるらしいので、スクリプトの実行は新規スレッドではなくUIスレッドで処理するようにしてみた(再現方法不明につき暫定措置) ・画面分割時の同期移動がONでネットワークパスの場合にパス名加工に失敗していた不具合の修正 Ver.15.1.2.0 ●自動更新の処理の改善 ※元々エクスプローラーと比較して桁違いの性能差があったため、よほど過酷な環境でないと体感速度に差は出ません。  消費電力やCPU使用時間が減った程度に考えてください。 ・自動更新のON/OFF切り替えボタンは、再描画した時にリセットされないように仕様変更 ・シェル通知モードはWindowsの不具合(MS社のサンプルでも再現)で通知が止まらない前提の実装に変更した ・削除を検出した際の処理速度が1~6倍速に向上(選択状態依存) ・追加/更新/リネームを検出した際の処理速度が1000~2800倍速くらい向上 ●WindowsのDefenderおよびSmartScreenの誤検出対策 ・インストーラー同梱版の7zip自己解凍モジュールを最新に更新 Ver.15.1.0.0 ●高DPIモードの改善 ・タブバーを除いて全てのドッキングバーがどこかにくっついている場合、縦横問わず幅を自前で保存/再現する仕組みを実装 ●ステータスバー ・DPI値の表示を追加 ・タブセット名を表示しているが、分かりにくいので背景色を塗ってみた ●新しく検出されるようになったC++20のエラー対応(MFCが完全対応していないので暫定) ・ローカル変数の未初期化対応 ・for earch記述を全て廃止してRange記述に変更 ・クラス特定の宣言を全て廃止 ・リテラル文字列はconst付きとして扱い、全てキャストするように修正 ・条件代入文の両辺でリテラル文字列と動的文字列の型をキャストして揃えた ・gotoによって初期化されない変数の修正 Ver.15.0.8.0 ●チップテキスト取得処理の改善 ・動作しない廃止APIの呼び出しが残っていたので削除 ・メモリ管理インターフェイスを共通からローカルに変更 ・権限関連で、情報取得に失敗した場合に落ちる可能性がある不具合の修正 ・致命的な不具合があるアプリから情報を取得する際、外部要因でメッセージの取得に失敗した旨を表示するようにした ※なるべく「ツールチップテキストから、不適切なメモリ管理をしている外部アプリを検出しました。」をチップテキストで表示します。 ●サムネイル画像の改善 ・リストの縮小版/リストの背景/ドッキングバーの背景/ローカルサムネイルキャッシュの作成コマンドで、小さい画像を拡大する際の画質を改善(Windows8以降の機能) ・リストの縮小版で元画像がある場合の画質と速度の改善 ●スレッドの停止処理 ・新方式をフォルダサイズ計算スレッドの中断処理のみに適用、中断時のレスポンスが向上 ●高DPIモードでの改善 ・ユーザー定義バー/タブレット支援バーの表示を改善 ※アイコンモードは操作できない事もない程度の暫定(アイコンが横長) ・タブバーの初期サイズを計算/描画するようにしたらDPI換算されたので採用した ●その他 ・ドライブ移動コマンドで使用する、各ドライブごとのカレントディレクトリ情報の読み書きを最近の作法に書き直した ●不具合修正 ・「現在のタブのみ」の復元スクリプトを生成する際、使えない文字が検出できない組合せがある不具合の修正 ・ユーザー定義バーの「選択アイテムを登録」コマンドの登録名で「|」、改行、タブ文字が含まれている仮想フォルダが登録できない不具合の修正  また使用できない文字は除去ではなく、半角→全角に変換するように変更した ・スクリプトのBackgroundImageでOne指定際に余計なウィンドウを対象にしていた不具合を修正 ※冗長な記述になっていたので作り直した Ver.15.0.5.0 ●その他 ・画面分割時の上下パスへの同期移動のパス文字列生成を、パス文字列クラスに置き換え「/」区切りのパスも同期移動できるようになった ・As/R同士のプロセス間通信の仕組みを実装 ※以前のアンケートにあったのでエンジンを作ってみたものの具体的な内容が不明なため利用も未定 ●不具合修正 ・輝度を上げるコマンドでBYTEの桁あふれ検出の際のキャストの解釈が変わっていたのを修正 Ver.15.0.4.0 ●Ping処理の改善と接続安定性の向上 ・初期化を遅延処理することで未使用時の起動速度を向上 ・ライブラリの動的読み込みをやめ静的リンクに変更 ・古いWindows updateで対応済みのOS不具合の補完処理を削除 ・Pingの成否と戻ってきたエラーメッセージをログバーに出力するようにした ・複数のネットワークアダプタを持っている機器の接続安定性を向上 ・ネットワークの組み方依存でipv6の疎通確認が失敗する可能性がある問題への対処 ●スクリプト ・CreateNowRestoreScriptスクリプトコマンドを追加  指定されたファイル名で、現在のタブ構成の復元スクリプトを作成する。 【書式】  CreateNowRestoreScript=[出力モード(1:現在のタブ/2:全てのタブ/3:一旦閉じる+全てのタブ/4:タブセット)],出力ファイルのフルパス ・エラーメッセージを統合/整理した ●ここからコマンドプロンプト系 ・ネットワークや仮想フォルダも起動対象に変更した(PowerShellはネットワークパスが使えるため) ●その他 ・文字列生成クラスを機能拡張  (なんちゃってStringBuilderで、終端のアイテムを消したり、間に\記号を入れた文字列を生成したり) ●不具合修正 ・ユーザー定義バーのツールバーの検索ボタンのツールチップが出ない不具合の修正 ・まれに終了時のタブ状態を保存し損ねる可能性がある不具合の修正(既存バグでスレッドのビジー状態が影響するため規則性無し) ・Windowsの終了時に現在のタブセット/最近閉じたウィンドウを保存しない場合がある不具合の修正 ・閉じた時のタブの位置の設定が機能しなくなっていた不具合の修正 Ver.15.0.0.0 ●開発環境をVisual Studio 2022に変更 ・SDKを現時点の最新に更新 ※ランタイムの更新が必要になります。ご注意ください。 ●メインメニュー ・お気に入りタブコマンドの1~10を追加(表示は設定パス) ・子ウィンドウの最大化を追加 ・ソフトウェアキーボードを起動するコマンド(ID:35520)を追加 ・タブセット1~10の切り替えコマンドを追加(ID:33800~33809)(表示は設定名) ・タブセット設定(ID:33889)を追加 ・プレースホルダー項目の整理をして生成速度が向上したが、機能追加の分だけ相殺 ●タブセットの切替機能(旧名称:アクティビティ) ・「アクティビティ」が分かりにくいという事で「タブセット」に改名、また管理レジストリや管理ファイル名も変更 ・アプリの起動時に既存の復元タブの仕組みは廃止、タブセット情報を読み込む簡易的なスクリプト解析に変更 ・アプリの終了時に現在のタブセットを保存するように変更 ・タブセットの保存時にActiveTabNoの出力を追加 ・デフォルトのキー割り当てで、Ctrl+数字にタブセット切り替えを追加 ・ウィンドウ管理バーのコマンドメニューにタブセット関連の項目を追加と、UI制御を追加 ・タブバーの設定メニューにタブセット関連の項目を追加、また項目を見直して項目を大量追加し、UI制御も大量に追加 ・ステータスバーに現在のタブセット名称の表示を追加 ・現在のタブセットを規定のディレクトリに保存するコマンド(ID:33888)を追加(キー割り当て専用) ・現在のディレクトリに現在のタブセットのバックアップ保存するコマンド(ID:33887)を追加(キー割り当て専用) ●スクリプト ・ActiveTabNoスクリプトコマンドを追加  タブバー上にあるタブの何番目を選択状態にするかを指定する。 【書式】  ActiveTabNo=[タブバーの並び順で何番目かを指定] ・CreateRestoreScriptの廃止 ※LastTab2.datの書式のバックアップを作成するコマンド、この書式の廃止に伴った措置 ●タグ ・絶対パス指定タグで、大文字小文字を区別設定を反映を追加 ・絶対パス指定タグで、非表示設定の反映を追加 ・タグ削除コマンドでローカルタグを対象にするように機能追加 ●オプション ・キー割り当て画面にて、未登録IDをセットした場合に機能一覧画面で確認できるように改善 ・タブセットの設定画面を追加 ・タグの設定画面を追加 ・性能低下が大きすぎるため、終了時のタブ保存/復元スクリプトへの移動履歴の保存を廃止 ●その他 ・Shiftを押下して起動した場合、前回のタブ構成を無視するだけではなく処理確認メッセージを表示して選択ができるように変更 ・UI操作をまとめて行い、並列可能な処理と分離することで「ロックされているウィンドウもすべて閉じる」の見た目が速くなった ・設定関連の構造体を全てクラスに変更 ・ビルドの際の警告レベルを最高に変更し、警告への修正対応(警告数が約1000→問題なしの約300個) ・パス文字列の分解アルゴリズムの改善 ・コマンドの連続起動処理をモダン化/省メモリ化/高速化 ・お気に入りタブのメニュー表示処理を共通処理にまとめた ・お気に入りタブで保持しているフォルダ情報を全て破棄するコマンドの追加(ID:35838) ・アプリの終了処理を見直して、必ずしも必要ではない処理や、冗長な仕組みを改善 ・ロックされているウィンドウもすべて閉じるコマンドの場合、最近閉じたフォルダーの履歴に含まないように変更 ・混同する問い合わせが減らないので、ステータスバーに32ビット版/64ビット版の情報表示を追加 ・アイコン画像のジャギの塗りや色相を調整 ・ヘルプと突き合わせていたら、キー割り当て不可なコマンドが見つかったのでいっぱい修正 Ver.14.7.8.0 ●ユーザー定義バー(お気に入りやランチャ等)に現在の階層以下を検索する機能を追加 ※検索ボックスではEnter/TAB/ESCでバーの一覧にフォーカスが遷移する ・Ctrl+Sで検索ボックスの表示/非表示の切替、フォーカス移動する機能を追加 ・ツールバーに検索ボックスの表示を切り替えるボタンを追加 ・検索結果の場合はディレクトリが存在しなくなるので、ツールチップのTypeの表示をやめスクリプトのフルパスを表示するようにした ・複数階層の同時表示に齟齬が生まれないように、リネーム/削除/上位階層へ移動は禁止するように変更 ・更新の際に検索モードを終了するようにした ・検索モードの際にタイトルバーの表記を変更するようにした ・ユーザ定義バーからの実行時に現在のパス情報を使用していたのを修正(走査/列挙時のパスを使うのが正) ●CMFCPopupMenuの全廃して統一 ※メニュー内のアイコン画像が消えるが、アプリ単位のダークモードにした場合に適用されるようになる  フレームワークが制御している「メインメニュー」「システムメニュー」「バー表示メニュー」は対象外 ・タブバーの右クリックメニュー ・ツールバー上のアイコンモードメニュー ・ツールバー上の表示モードメニュー ●不具合修正 ・ウィンドウ管理バーのコンテキストメニューの定義ファイルに不要なセパレータが入っていたので削除 ●その他 ・アクティビティの定義ファイルはユーザー情報の管理ディレクトリの下にActivityを作成して格納するように変更 ※どこまで使うか不透明だが個人的に10じゃ足らない気がしてきため Ver.14.7.1.0 ●詳細カラムの改善 ・ごみ箱、PCの詳細カラム情報の取得速度を向上 ・起動時に読み込んでいた詳細カラム情報を遅延読み込みするように変更 ・微妙な省メモリ化と微妙な高速化 ・管理クラスをテンプレートにして再利用可能にした(たぶん二度と使わないけど) ・通常フォルダーのカラム数上限の撤廃 ・ごみ箱、PCの詳細表示のカラム幅/項目の並び/ソート順等を覚える機能の追加 ※ただしWindows11は、OSの仕様(不具合?)で勝手に設定幅が補正されるので注意してください ●Windows11のOS不具合の対応 ・Homeなどのリストに並んでいる「デスクトップ」を実行して遷移しようとすると異常なITEMIDLIST構成を返してくるため、テキスト変換して遷移するように変更 ・Windows11の「デスクトップ」にある「デスクトップ」は無意味で邪魔なので非表示にした ●復元スクリプトの強化と改善 ・MDIモードの復元スクリプトを作成する際に「子ウィンドウを元に戻す」(PostMessage=35913)を埋め込むように変更 ・復元スクリプトの生成の際に、手作業で編集しやすいようにコメントも生成するように変更 ・復元スクリプトの生成を共通処理化 ●その他最適化 ・特殊な詳細カラム構成を持つXPのマイネットワークの検出を削除 ・並び順のセット方法に古い考え方が混じって複雑になっていたので整理 ・並び順のメニュー項目のセット方法も同様 ・タグ情報の増減処理のメモリ転送回数を減らした ・文字列をレジストリから読む際のバッファの確保をあらかじめしておきメモリの確保/解放処理を大量に減らした ●不具合修正 ・タグの削除機能が機能しなくなっていた不具合の修正 ・リンク切れタグの判定で大/小文字を区別していなかった不具合の修正 ●今後の準備 ※当面はテスト運用で、Ver.15以降で正式版とする予定の機能です。 ・アクティビティ切替(現在のタブをセットにして自動保存+まとめ切替する機能)の追加(ID:33800~33809) ・As/Rユーザーだけ見えるタグの読み込み、表示、ツールチップ表示などの諸々の処理を追加  ファイル名:リストで開いたフォルダーに「.LocalTag」があれば読み込む  書式:TSV、改行はCRLF、UNICODE、BOMの有無は問わない  [リスト上の表示名][コメント][色(RGBの10進数表記)][対象ファイルの属性] ・Windows10 1909以降でアプリケーション単位でのダークモード(ほとんどのメニューなどが黒くなる)を適用する隠し機能の追加 [HKEY_CURRENT_USER\SOFTWARE\AMA_Soft\ASR\Main001\Color] "OsDarkApp"=dword:00000001(デフォルトは0) ・タグの配下ディレクトリのタブの色分けの仕組みを作ってみたが期待する性能の1/100しか出なくて封印 ・アクティブタブ切り替えるスクリプトコマンドを追加したが、非同期で遅延処理をしまくる復元スクリプトに入れても動作しないので保留 Ver.14.4.8.0 ●Microsoft社が、正式対応する気が無さそうなWindow10の不具合対応 ・ネットワークの共有名のフォルダーに貼り付け/ドロップを行った場合、以下のメッセージを出して代替処理を選択できるようにした 「Windows10の不具合(エクスプローラーのツリーで発生します)で、共有名のパスにはシェル機能を用いた貼り付けが許可されていません。 一般的なファイル操作でファイルのコピーを試みますか?」 ※貼り付け/シェル機能を用いたドロップに失敗した場合のみ、このメッセージを出すか否かの判定をしますのでInsiderPreview等の適用済みなどMicorsoft社が不具合対応したWindow10では表示されなくなります ※既知の不具合に執筆済みですが、Micorsoft社からはBuild 19603で対処したと回答がありました。  その回答から2年半経過し、一般向けのWindow10のビルド番号が19603に到達する見込みが無いと判断したという経緯です。 ●その他 ・本体でWindows10/11の判定処理を追加 ・起動時のOSチェックにおいてWindows11の判定を厳しくした ・Windows11だけで起こるCOMインターフェイスの欠如現象(Windows updateの不具合と思われる)の回避処理を追加 ・対象フォルダにドロップ可能か否かの判定処理のインターフェイスのポインタ制御をスマートポインタに置き換えた ・タグの情報と制御処理を分離、またコードを今風に書き換えて若干の高速化と省メモリ化 ・ファイルリスト上のタグの描画を高速化 ・OSの不具合対応関連で共通関数の変更をしたので全ビルド ●不具合対応 ・フォルダー作成のダイアログ画面のサイズを変えた際に、漢数字のチェックボックスだけ動かない不具合の修正 ●プロトタイプ検証(性能評価中なので隠し機能扱い) ・既存のフルパスタイプのタグで大/小文字を区別しない設定を追加  [HKEY_CURRENT_USER\SOFTWARE\AMA_Soft\ASR\Main001\Tag]  "CaseSensitivity"=dword:00000001(0にすると大/小文字の区別をしない) ※大分マシになったけど、区別しない設定にすると若干の性能低下があります Ver.14.4.5.0 ●フォルダ作成コマンド ・連番の数字の作成で、漢数字のオプションを追加 ※「第五回」のような連番の作成用 ●不具合修正 ・ユーザー定義バー上で削除のダイアログが表示された時、背景が白くなる現象への対処 (APIへ渡す親ハンドルをリスト→メインフレームに変更しただけ) Ver.14.4.4.0 ●各種フォルダジャンプの発生時の仕様変更 ・ロックされているタブに対して、ツリーやお気に入りなどから「移動」が発生した場合にアクティブタブのグループの影響を受けるように変更 ●ウィンドウ管理バーの強化 ・タブ上の右クリックメニューの「ここから開く」「ここからバックグラウンドで開く」で対象ウィンドウ情報を渡すように変更 ・上記の定義ファイルのコメントアウトを解除 ●オプション ・オプションの表示モード管理が古くなっていたので本体に合わせた ・アイコン(隠し)/アイコンのみ(隠し)の表示モードの補正値が不適切であったのを修正 ・初期値、format系、switch文のフォロースルーコメント等、コード分析対応が63個 ●その他 ・新規ウィンドウのタブ挿入位置管理のための親ウィンドウ情報と制御を追加 ・タブのインデックスを取得するのにCWnd*を渡すと正しいのに、HWNDを渡すと間違った値を返していた潜在不具合を修正(今回初めて使った) Ver.14.4.0.0 ●ウィンドウ管理バーの強化 ・ウィンドウ管理バーからリスト部へドロップして別プロセスに分離する機能を追加 ・ウィンドウ管理バーでD&Dで並び替える機能を追加 ※ウィンドウ管理バーが並び替えを受け付けるのは、自動整列がOFFの時のみ ・内部D&Dのフォーマット名と構造を変更(古い版のAs/Rや、まめFileとの互換性が無くなった) ・シングルクリック時の動作で無駄な判定処理があったので削除 ●タブバーの強化 ・タブバーもウィンドウ管理バーの並び替えと同じ情報で並び替えができるように修正(相互にドロップ可) ・操作が速い場合のドラッグ開始座標を補正 ●その他 ・ドラッグヘルパーの実装が雑で、メモリが逼迫している時に不安定になる可能性があったのであちこち修正 ・共通関数部のGDIが枯渇時の安定性の向上×4 ・タブバーとウィンドウ管理バーのドラッグヘルパーを再度実装したけど、なぜか見えないので再封印 ・ビルドバージョンをVista以降で動くよう指定していたが、API要求の定義が多くなってきたのでWindows7に変更 ・呼び出し頻度の高い関数の型変換を見直して変換ロスを低減 ・ナビゲートロック切り替えの際に呼びだしていた、構造改編で機能しなくなっていた関数を削除 ・全ソースファイルに対してテキスト成型を掛けた ●コード分析対応 ・「推奨」レベル  2個対応(推奨レベルは完了)  完全レベル消化の影響によって発生した13件対応 ・「完全」レベル  const付与推奨を1280個くらい対応  ローカル変数の初期化を310個くらい対応  constexpr付与推奨を220くらい対応  その他140個くらい対応 ●不具合修正 ・画面分割し、選択状態を保持したまま更新コマンドを実行した瞬間、反対側のリストで自動更新のリネームが発生すると落ちる可能性がある不具合の修正 Ver.14.3.4.0 ●不具合修正 ・前回のタブ情報内の空行を処理してパス指定なしでタブを開いていた不具合の修正 ※定義ファイルの読み込み改善の影響で表面化 ●その他 ・仮想フォルダの情報を管理するクラスの追加(適用は一部のみ) ・独自状態であったUsersディレクトリ直下のソート関連情報を統合 ・スクリプトや定義ファイルを読み込み上限を50MBに変更 Ver.14.3.3.0 ●コマンドライン連携の改善 ・コマンドプロンプトやPowerShellを呼び出すパスがネットワークの場合、事前にPINGを打って疎通確認するように変更 ※存在しない/切断されたネットワークパスだと、かなり待たされるため ・CMDやPSは存在しないローカルパスの場合でも即座に応答を返すが、隠し機能のカスタマイズがされた場合を想定してパスの存在チェックを行うように変更 ●変更機能を持たない軽量文字列クラスの改修 ・自前のヒープ管理をやめて、最近の常識的な実装に変更 ・微妙に省メモリ化(1文字列あたり4バイト) ・Attachメソッドはメモリリークの危険性の方が高そうだったので廃止 ・MBCSサポートが残っていたので全廃 ・小さなメモリの遅延解放は効率が良くないケースが多くなってきたため廃止 ●クリティカルセクションの管理クラスの改修 ・微妙に省メモリ化(1タブ当たり8~40バイト) ・ロックカウンタを廃止して効率化 ●定義ファイルの読み込み速度の向上(不要な初期化をしていたのを削除) ・ローカルサムネイルキャッシュの辞書 ・前回のタブ情報 ●その他 ・自動更新の設定の「環境依存の不具合対策」リストに合致して更新を止める場合の判定の冗長性を改善 ・ローカルの自動更新の検出に関わる文言の修正 ・自身の起動中を示すフラグが不要になったので削除 ・タブバーからドラッグする情報を構造体からクラスに変更 ・不要なイメージリストの初期化処理を除去 ・ウィンドウ管理バーのアイテムの列挙の際、先頭アイテムの取得APIを推奨のものに変更 ●不具合修正 ・オプションの自動更新を無効にするアイテム数を超えても、初期状態でステータスエリアのアイコンが変わらない、また切替できない場合がある不具合の修正 Ver.14.2.8.0 ●タブの管理方法のモダン化と速度改善 ※元が数ミリ秒の処理なので、改善速度が何十倍速であっても個々の改善の体感速度は誤差です。  タブ数が多いケースなどを想定したチリツモ効果の性能向上を期待するものです。 ・タブバーで管理していた情報および操作をウィンドウ管理クラスへ移管 ・タブ情報の管理の中で、UIスレッド依存の情報/処理を全廃して同期を取る必要性をなくした ・タブの削除時のグループ解除判定を整理、また高速化(約2~40倍速) ・新しいタブグループNoの採番処理を高速化(約5~30倍速) ・グループに含まれる件数の管理テーブルを新設して都度計算しないようにした(約8~200倍速) ・グループ番号の操作をカプセル化して外部から変更できないように変更(件数管理の厳密化) ・グループ最大数を定数化した ・グループ色アイコンを静的配列から動的配列に変更 ・ウィンドウを並べる系のコマンド(MDIモード)をウィンドウ管理クラスに合わせたパラメータ構成に変更 ・タブバーでD&Dで並び替えの際のグループ管理情報の効率化 ・バッファオーバーランの防止のためのタブグループ番号の剰余計算の冗長性を改善して計算量の削減 ・ウィンドウ管理バーによる選択状態の管理を見直し、MFC汎用ポインタからvectorに変更等 ●その他 ・冗長な構成であった仮想フォルダか否かの内部フラグを廃止、また判定式をある程度まとめた ●不具合修正 ・起動時に2画面分割タブを含む場合、初期化スレッドの完了が早すぎると落ちる不具合の修正 ※同期処理が無くなった影響で表面化した問題だが、本来考慮に入れておくべき内容 Ver.14.1.6.0 ●コマンドライン/PowerShellの起動系のコマンドのカスタマイズ強化 ・各コマンドパスをレジストリ参照にしてカスタマイズ可能に変更(隠し機能扱い、ヘルプで仕様を公開) ・cmd.exeのパスを「[システムディレクトリ]+cmd.exe」から環境変数「%ComSpec%」に変更(デフォルト値) ●ドラッグアンドドロップで実体のあるファイルをドロップした時の動作の変更 ・ファイルコピー/移動(バックグラウンド)の内部処理を同期処理でも動くように拡張(未使用) ・ドロップファイルの1個目が環境変数%TMP%配下に存在する場合、バックグラウンド→同期モードに自動的に切り替える処理を追加 ※7Zip File Manager用の(最近のOutlookも?)互換対策  MArcのように一時解凍のクリーニングを統合的に行っているソフトが相手の場合は、エクスプローラー並みの性能に低下する ●高DPI環境への対応強化 ・ウィンドウ管理バーの各種アイコン画像をDPI係数で拡縮する機能の追加と、当たり判定式を拡張 ・タブバーの各種アイコン画像で、自前描画部はDPI係数で拡縮する機能を追加 ●その他 ・コード分析による指摘対応(3個) Ver.14.1.3.0 ●ウィンドウ管理バー ・コマンドメニューとコンテキストメニューのグループへ移動系のコマンド色を塗りアイコンを追加 ※タブバーのメニューは制御してないので保留、ツールバーを追加すると自動表示されるのだがリソースが増えるのを懸念 ●タブバー ・スキン適用の有無にかかわらずアプリ描画をするように変更 ※スキンが使用された場合、どうせ画像で全面上塗りするんだと速度重視で下塗りをしてなかったため透過色の使用で描画が破綻していた ●不具合修正 ・ウィンドウ管理バーのツールバー上でダブルクリックすると空欄クリックと誤認して新しいウィンドウを開いてしまう不具合の修正 ●その他 ・コード分析による指摘対応(22個) ・volatileでスレッド間のフラグとして使用している変数を管理するクラスを追加して、コード分析で警告が出る部分のみ置き換えた ・規定のフォルダの取得処理を見直して簡略化 Ver.14.1.0.0 ●オプションのタブ共通ページ ・現在のタブの表示関連の設定をグループボックスでまとめた ・現在タブで、枠線を付けて強調するを追加 ・現在のタブと同じパスのタブが存在していたら強調表示(薄緑色)を追加 ・ファイル操作エラー時にロック疑惑のあるタブの強調表示(赤色)を追加 ・現在のタブよりも下位の階層のタブの強調表示(紺色)を追加 ●追加コマンド ・タブグループ1~12へ移動コマンドを追加 ※ドッキングバーのメニューと、キー割り当て用の「全コマンド」のみに追加 ●ウィンドウ管理バー ・ウィンドウ管理バーの下位階層(階層表現)/同じパスのタブ(背景色)の描画を追加 ・ウィンドウ管理バー用タブグループ1~12へ移動コマンドを追加 ・コマンドメニューの変更  メニュー項目の並び順を見直した  開く/閉じる/ウィンドウ管理/タブグループの階層化と見直し  「同じパスのタブを閉じる」を追加  「下位階層のパスのタブを閉じる」を追加  「新しく開く」を追加  「ここから開く」を追加  「ここからバックグラウンドで開く」を追加  「クリップボードのテキストで開く」を追加  「閉じたタブを再度開く」を追加  選択タブをタブグループ1~12へ移動を追加 ・コンテキストメニューの変更(右/中ボタンクリックでアクティブタブが切り替わらない)  メニュー項目の並び順を見直した  開く/閉じる/ウィンドウ管理/タブグループの階層化と見直し  「同じパスのタブを閉じる」を追加  「下位階層のパスのタブを閉じる」を追加  「新しく開く」を追加  「クリップボードのテキストで開く」を追加  「閉じたタブを再度開く」を追加  選択タブをタブグループ1~12へ移動を追加 ※ここから開く/ここからバックグラウンドで開くは、初期値の挿入位置の設定の対象がアクティブタブなので保留 ●タブバー ・タブバーの下位階層(段組み)/同じパスのタブ(段組み)の描画を追加 ・コンテキストメニューの変更  メニュー項目の並び順を見直した  開く/閉じる/ウィンドウ管理/タブグループの階層化と見直し  「新しく開く」を追加  「同じパスのタブを閉じる」を追加  「下位階層のパスのタブを閉じる」を追加  タブグループ1~12へ移動を追加 ・設定メニューの変更  「新しく開く」を追加 ●その他 ・ナビゲートロックされているタブで、フォルダーのショートカットをフォルダーとして扱う設定の場合、新しく開くタブをグループに含めるように変更 ●不具合修正 ・同じパスのタブを閉じると下位階層のパスのタブを閉じるで、仮想フォルダがサポート対象外であったのを修正 Ver.14.0.0.0 ●デバッグバーとログバーを追加 ※機能詳細や設定項目はかなり多いので詳細はヘルプ参照 ・デバッグバーとログバーのオプション画面を追加 ・標準ツールバーへボタンへアイコンを追加 ・デバッグバーへフォーカス移動コマンドを追加 ・ログバーが新設になったことで、ステータスバーに表示していたメッセージの多くを整理  インクリメンタルサーチ/マウスジェスチャ/警告表示は読み上げ等の対象から外したなど ・音声認識関連のキャプションバーへのメッセージ出力/表示制御を、全てログバーに変更 ●ダークモード関連 ・OSのダークモード適用オプションがONの場合、タイトルバーへの反映を追加 ・起動時読み込みDLLにDwmapi.dllを追加(ダークモードのタイトルバー反映用) ・起動時読み込みDLLからD2d1.dll、Dwrite.dllを削除(Direct2D/DirectWriteモードの全廃) ●外部ツールのメモリ破壊などの検出を強化 ・ログバーの取り扱いも含めて後処理を共通化(32ヶ所) ・発生個所を示す番号を付与して発生個所を特定できるようにした ・新規のトラップを追加(アンドゥなど) ・メッセージ文言を見直した ●圧縮ファイルビューア ・たくさんのアイテムを開こうとしたときのメッセージIDが不適切な不具合の修正 ・Office文書(xlsx,pptx,docx)を書庫として扱わないように変更 ・初期値のViewer.txtのMArcの対象からxlsx,pptx,docxを削除 ●バージョン情報 ・レイアウトを調整した ・表示テキストを調整した ●Ver.14.1用のタブの見た目改修関連 ・現在のウィンドウよりも下位階層のパスのウィンドウを閉じるコマンドの追加 ・現在のウィンドウと同じパスのウィンドウを閉じるコマンドの追加 ・ロックされていて削除できないパスを削除しようとしたときの赤塗りを新方式に変更 ●その他 ・スクリプト呼び出し処理の無駄なスタック階層を整理 ・ネタで作って消し忘れてた「変形合体して人型に変形する」機能を削除 ・ウィンドウ管理バーに無駄なタイマー処理のオーバライドがあったので削除 ・ユーザー定義バーの背景色管理方法を見直した ・リストで表示位置が不適切な場合があるためInfoTipを非表示に変更 ※表示が欠けている場合に表示されるもので、自前で制御しているツールチップとは別物 ・自動更新の「旧式差分更新」モードで不要なメッセージを削除して速度を改善 ・アプリアイコンがWindows11のエクスプローラーに酷似していて見分けづらいため変更 ・メインメニューでショートカットキーが割り当てられていない機能があったので修正 ・ウィンドウ管理バーのチェックボックスの描画エリアを自前で計算するように変更し、ツリービューからチェックボックスの属性を削除した ●不具合修正 ・アンドゥの際にメモリリークが発生するルートが存在したのを修正 ※OSの不具合対策のため意図的に残していたもの ・オプションで「適用」を押下した時にメモリ破壊が起きる可能性がある不具合の修正 ・オプションの静的テキストで不適切なコントロールIDを使用していたのを修正 ・最新バージョンの確認機能でβ版が検出できなくなっていた不具合の修正 ・ウィンドウ管理バーのコンテキストメニューとアクションメニューで、同じ機能なのに文言の相違がある不具合の修正 ・ロックされていて削除できないパスを削除しようとしたときに落ちる可能性がある不具合の修正 ・タブのスキン画像が適用されている場合、ロックされていて操作できない場合のタブ描画が行われない不具合の修正 ・タブ情報管理クラスの不具合で開/閉を繰り返していると落ちることがある不具合の修正 Ver.13.5.7.0 ●不具合修正 ・一括新規作成の「OSの持つテンプレートを使用する」による活性化制御の不具合を修正 ・深いパスで新規作成を行うと異常動作をするため、新規作成ファイル名の決定ロジックおよびファイル生成処理を自前で実装  対象:Asr.exe,FileNewEx.exe ※IFileOperation::NewItem()で122文字以上のパスをセットし、処理を行うとパラメータエラーの例外になる ・リソースが確保できない等の理由でドッキングバーの生成に失敗した場合に落ちる不具合の修正 ・非常にメモリが困窮している場合に現在のタブ構造を変化させようとすると落ちる不具合の修正 ●その他 ・スキン適用の画像の情報をクラス化して不用意なバグを発生しにくくした ●今後の布石 ・新しいバー用のツールバーリソース追加とIDの予約 ・スクリプトから実行するコマンドの情報をクラスでまとめた ・スクリプトの呼び出しインターフェイスを拡張 ・スクリプトのスレッドに対して本体からブレイクポイント/再開/中断の制御を行うプロトタイプを実装 Ver.13.5.5.0 ●詳細表示の設定画面 ・カラム名の検索機能を追加して追加するカラムの探しやすさを向上 ●不具合修正 ・パスをなるべく環境変数に置換する処理において、環境変数の構成によって無限ループになる可能性がある不具合の修正(Option.exe,VersionInfo.exe) ・Finのコピー/移動先指定のコンボボックスの入力可能桁数が減っていた問題へ対処 Ver.13.5.3.0 ●タグ情報 ・抽出条件のオプションを「現在の階層以下」ではなく、「現在の階層よりも下」に変更 ・リンクの切れたタグの抽出は「現在の階層より下」もAND条件になるように変更 ・チェックボックスの組合せによる各コントロールの非活性化を分かりやすくなるように改善 ●その他 ・シェル削除の際に何かしらの理由で中断し、他のタブで下位階層を開いてると、そのタブを赤枠で目立たせるようにした ※As/Rがロックしていると疑わしきタブを通知する目的です ・Ctrl+Shift+Tabの初期値を「前のタブ」→「前のウィンドウ(Zオーダー)」に変更 ・ウィンドウハンドル指定のタブ切り替え系の処理を共通関数にまとめた ・子ウィンドウのハンドル管理で現在のタブと同じパスを探すロジックを追加 ・スクリプトのIF文の状態管理をオブジェクト化した ・バージョン情報ダイアログでAsr.exeのパスは、極力環境変数に置き換えるように変更 ●不具合修正 ・「同じグループ内に同じパスのタブがあった場合に閉じる」設定がONでグループに属さないタブの場合の初回表示フラグが、不適切な値になる場合がある不具合の修正 ・動作には問題ないが、前/次のウィンドウ(Zオーダー)のID名が逆になっていたのを修正 ・スクリプトのdebugが、本体以外から呼びだしたスクリプトの場合も半端に動作する不具合の修正 ●OSかMFC関連の不具合の暫定対処 ・WaitForInputIdle()で指定したプロセスがアイドルになっていないのに応答を返してしまう問題への暫定対処を追加 ※対象はAsrload.exeのみ Ver.13.5.0.0 ●音声認識系のオプション追加 ・起動時に自動的に認識を開始設定追加 ・開始/終了の読み上げテキストの設定追加 ・サンプルの生成、文法ファイルを登録エディタでの編集するための呼び出し機能の追加 ●メインメニューに以下のコマンドを追加 ・音声認識の切替(ID:35575) ・管理者でコマンドライン(ID:35560) ・管理者でPowerShell(ID:35561) ・管理者でエクスプローラー(ID:35562) ●描画の改善 ※今回の改修の影響で、従来と若干の描画レイアウトに差異が生じます ・高DPI環境かつ「一覧」「詳細一覧」小・中・大アイコンの場合のリストアイコンの描画計算式を修正(横方向) ・高DPI環境かつ「詳細」「コンテンツ」かつ小・中・大アイコンの場合のリストアイコンの描画計算式を修正(縦方向) ・高DPI環境かつ「並べて表示」「アイコン」「アイコンのみ」かつ小・中・大アイコンの場合のリストアイコンの描画計算式を修正 ・「アイコン」にてカーソル行およびフォント種類によりテキスト欠けが発生する現象の低減 ・「並べて表示」「アイコン」のタイル系描画のテキスト幅を調整してごみ描画が減るようにした ・「アイコン(隠し機能版)」のごみ描画が減るように調整 ・リスト上のチェックボックスの描画/クリック反応サイズにDPI比を適用した ●その他 ・サイズから単位付きの文字列を生成する関数を高速化(気持ちだけ)  Info.exe,Fin.exe,Marc.exe,FileExport.exe,FileNameCp.exeに影響 ・アイコン画像メッセージの後の再描画をイベント駆動に変更して非同期性を向上 ・エクスプローラ風のチェックボックス動作のアイコンをWindows11風に変更 ●不具合修正 ・スクリーンセーバーの設定値を0にしても、対象画像が存在すると動作する不具合の修正 ・リソースDLLが一部巻き戻っていたのを修正 Ver.13.4.4.0 ●管理者で実行コマンドの機能追加 以下のコマンドをキー割り当て、ツールバー割り当て可能にした ・管理者でコマンドライン(ID:35560) ・管理者でPowerShell(ID:35561) ・管理者でエクスプローラー(ID:35562) ●ファイルサイズ取得の改善 ・ファイルアクセスを監視されている特定環境で、ファイルサイズを求める処理の高速化 ●フォルダサイズ計算コマンドの改善 ・稼働中のスレッドを数える際、フォルダサイズ計算の中断リクエストの処理中のステータスを考慮していなかった不具合の修正 ・フォルダサイズ計算コマンドで探索中に権限無しで中断した場合はフォルダに「(探索不可)」と表示するように変更 ・画面のアニメーション速度を落として、探索速度を向上 ・リパースポイント属性のあるフォルダも集計対象に追加 Ver.13.4.2.0 ・最新版情報の取得コマンド(VersionCheck.exe)の表記を改善 ・コンパイラの不具合対応に伴い外部コマンドも全ビルドを行った ・不要IDの整理 ●その他 ・ステータスバーにAs/Rを実行したユーザー権限の表示を追加  管理者として実行時は「管理者権限」、それ以外は「ユーザー権限」 ・ついでにステータスバーの描画を最適化 ・音声認識周りの定義を定数からレジストリ設定に変更 ・音声認識周りのエラーメッセージを詳しくした ・配布書庫に不要なテンプレートが含まれていたので削除 ●シェル実行関数に管理者で実行モードの分岐を追加  以下は先行実装でPostMessageマクロコマンド等で実行できます。 ・管理者でコマンドライン(ID:35560) ・管理者でPowerShell(ID:35561) ・管理者でエクスプローラー(ID:35562) Ver.13.4.0.0 ●不具合修正 ・悪意あるテキストの読み込みに失敗した場合、バッファオーバーランが発生する可能性がある不具合の修正 ・メモリ枯渇状態での安定性を向上 ・コンパイラの不具合対応(一部の最適化オプションが効いてなかったらしい) ・乱数の初期化でtime()だと1秒以内に再度呼ばれたら同値になるのでGetTickCount64()に変更 ●DetectCodepageスクリプト追加  指定したファイルのコードページを求める。  候補が複数ある場合、コードページの判別に迷ったら日本語であると仮定した上で判別ポイントの多数決を行う。  文字コードの判別ができない場合「ERROR」と返す。 【書式】 var $codepage$ = DetectCodepage, 文字コード種を調べるフルパスファイル名 ●SetCodepageスクリプト追加  FileRead/FileAllReadで外部のファイルを読み込む場合、コードページを指定することで任意の文字コードのファイルを読み込めるようになります。 ※Windowsがサポートするすべてのコードページが使用できますが、残念ながらWindowsの変換機能をそのまま使用しているので厳密なものではありません。 【書式】 SetCodepage=932 Ver.13.3.8.0 ●Windows11の不具合か仕様変更への対応 ・新規作成の項目をレジストリから走査する際、.txt/.bmpのShellNewが見当たらなければ自前で値を補完するように変更 ●スクリプト ・BackgroundImageのターゲット指定に「One」を追加 ※画面分割状態の場合にアクティブなリストを対象とする(画面分割していない場合はNowと同じ) ●その他 ・ユーザーさんに調査を依頼するようなケースでの原因調査用ログ出力機能を追加 ※当面は無効 Ver.13.3.6.0 ●不具合修正 ・ファイル一括作成コマンドのボタン活性化制御の実装漏れを修正、ついでにビルド警告を2個潰した ・コード分析対応 ・乱数の初期化でGetTickCount()ではなくtime()を使うように変更 Ver.13.3.5.0 ・Windows 11関連する表記を修正 ・オプションの誤字修正と表現を改善 ・Windows 7が動作確認対象から外れてる旨の説明を追加 Ver.13.3.4.0 ●サポートOSにWindows 11を追加 ※当面は既知の問題点は解説ページをサイト上に掲示します ・バージョン情報はBuild 22000以上であれば「Windows 10」を「Windows 11」に置換するように変更(暫定対処) ●リスト上のフォーカス制御を厳密に行うように修正 ・↑ボタンはリストへ ・↑ボタンの長押しメニューはリストへ ・インサイドツリー切り替えはリストへ ・ディレクトリ内検索のボタン(選択/色塗り/次候補/前候補)はディレクトリ内検索のテキストボックスへ ●その他不具合修正 ・内蔵検索機能の呼び出しにて、フォルダを選択していた場合に未選択警告が出る不具合の修正 Ver.13.3.2.0 ●Windows 11の暫定対応(ISO版) ・バージョン情報で「リリースID」(ReleaseId)を表示していた箇所に「表示バージョン」(DisplayVersion)を表示するように変更 ※21H2のような版表示 ●スクリプト ・Randomコマンドのパス指定で終端の\が無い場合は付与するように修正 ※ただしワイルドカード指定ではない場合に限る ※GetSelectItemsも同じ修正 ●その他 ・文言修正 Ver.13.3.1.0 ●オプション→全体→外観→色・フォント画面の見直し ・レイアウト構成を大幅に修正 ・「黒テーマ」/「FDテーマ」/「FILMTNテーマ」の、グループ2~6の配色を見直した ・「OSのダークモードを適用する」設定の追加 ※スクロールバーなどが黒く、ツリーのWindows 10 20H1以降などの制限事項あり ●Windows 11の暫定対応(Inside preview版) ・拡張子icoはSHGetFileInfo()で画像が取得できない問題への対処 ※エクスプローラも同じように白いアイコンで表示されます Ver.13.2.9.0 ・フォルダーバー(インサイドツリー)において、Windows10だと常にクラッシック表示のみであったが制限を解除 ※サポート切れになった1809/1903/1909だとレイアウトが崩れる/見苦しいので非推奨  動作確認は21H1のみ ・存在チェックをする際にFindFirstFileEx()を使用し、ドライブルートの場合にINVALID_HANDLE_VALUEが返ってくることがある現象への対処 ※再現条件は不明、1ドライブをパーティション分けして片方だけNGもありうる  共通関数のため全exeをリビルドした Ver.13.2.7.0 ●「埋め込み型の名前の変更」でリネームに失敗した場合に、As/Rでロックしている可能性のあるタブを3秒間、赤枠で目立たせる機能の追加 ※リネームに失敗した場合の当該パスの下位階層のタブを赤枠で色塗りします ※As/Rではタブで開いていても、極力手放す仕組みを持っているのでロックしていないことが多々あります  また、よそ様のソフトでロックしていた場合には判別不能なので、あくまでロックしている可能性がある候補と考えてください Ver.13.2.4.0 ●タグ情報画面 ・「~フルパスを使用する」はファイル名絞り込みチェックに依存して非活性になるように変更 ・色のピッカーは色で絞り込むに依存して非活性になるように変更 ・分かりやすくするために依存関係にある項目の順に項目を並び替えた ●音声認識 ・メニュー定義の「全コマンド」に機能コマンドと説明リソースを追加  音声認識開始/音声認識停止/音声認識切り替え  ※MFCのカスタマイズ画面にある項目で、ここからツールバーなどにD&Dで配置できます ●その他 ・非推奨になっていたGetSimpleItemIdList()/SHSimpleIDListFromPath()を補助的に使用していたが、戻り値のITEMIDLISTが不正になってきたので利用しないように変更 ※存在しないネットワークパス、取り出し済みリムーバブル機器など、応答が極端に遅いパスの変換に使用していたため、こういったパスの応答性能は大きく劣化します ・上記の処理が2種類あったので内部統合した ・アプリ側で下位階層はチェック済みフラグを追加(一覧生成速度の向上) ・ファイル属性取得から、取得にタイムリスクのある「時間のかかるオブジェクト」「ReadOnly(ファイルやディレクトリの属性ではなく、フォルダーの属性)」のフラグを見ないようにして各種応答速度の向上 Ver.13.2.0.0 ●音声認識 ・ルール「As/R Script」を暫定廃止(Ver.13.5.0.0で正式機能になるまで機能は残します) ・ルール「As/R Command」で数値変換ができない場合、スクリプトと見なして実行するように変更 ・ルール「Task」のActionのコマンドを追加して外部アプリケーションの制御機能を拡充 UP・・・ウィンドウを100pix上へ移動 DOWN・・・ウィンドウを100pix上へ移動 LEFT・・・ウィンドウを100pix上へ移動 RIGHT・・・ウィンドウを100pix上へ移動 ICONIC・・・ウィンドウを100pix上へ移動 ZOOM・・・ウィンドウを100pix上へ移動 NORMAL・・・最大化/アイコン化を戻す ●不具合修正 ・Seekerで拡張子MP4はメディアプレーヤコンポーネントを使用するように初期値を変更 ●その他 ・Visual studio 2019の更新 ※1個前はランタイムのインストーラや排他制御に致命的な問題があったため2個前で止めていた ・並列STLのソートが遅くなってきたので自前実装に戻した Ver.13.1.6.0 ●音声認識の制御を実装 1.ルール「As/R Command」の実装  コマンドをコマンドIDとしてメインフレームに発行する(As/Rの内部機能の利用) 2.ルール「As/R Script」の実装  コマンドをAs/R用のスクリプトファイル名として認識する 3.ルール「Execute Command」の実装  コマンドをフルパス文字列としてコマンドを実行する 4.ルール「Task」の実装  コマンドをプロセス名として認識する  タスク切り替え/タスク終了のアクションを定義できる 5.ルール「Special moves」の実装  必殺技を発声する 6.ルール「その他」の実装  数値変換して0にならなければAs/R Command、0になったらExecute Commandとみなす。 ※3~6はよそ様のソフトを制御するためのものです。 ●音声認識関連のコマンド追加 ・音声認識モードの開始/終了のトグルコマンドの追加(ID:35575) ※メニューやツールバーなどに配置するとUI制御あり ・音声認識モードの開始コマンドの追加(ID:35576) ※状態を表示するためのキャプションバーが強制表示されます ・音声認識モードの終了コマンドの追加(ID:35577) ●その他 ・ILCreateFromPath系のAPI群でITEMIDLISTが取得できないパスの場合、上から順に走査してITEMIDLISTを自前構築する機能を追加 ※Windows10の不具合対策で、Androidデバイス等で各種ジャンプや、ツリークリックでの表示できるようになります Ver.13.1.0.0 ●通知メッセージの読み上げ精度の向上  インクリメンタルサーチの文言が顔文字と読み上げられるのを修正  英単語認識できてないローカルサムネイルキャッシュの読み上げ情報を日本語化  「NaviLock!」は意味不明なのでリソース化して日本語化 ●タブバーの不具合修正 ・OS依存するエッジ幅を定数に変更 ・Xボタンの位置をマウス押下であたるようになど全体を調整 ・スキン画像の適用の際の座標計算が修正漏れだったのを修正 ●その他不具合修正 ・音声合成エンジンの取得に失敗かつデフォルトエンジンも見つからない場合、更なる代替エンジンの検索に失敗する不具合の修正 ●その他 ・システムの乗っ取りが可能な欠陥のあるアプリがインストールされている環境にて、アイコン取得の際に落ちないようにした ※ステータスバーに「外部のプロセスによるメモリ破壊が検出されました\nシステムを不安定にするソフトがインストールされている可能性があります」という従来から実装しているメッセージを表示します。  なお抜本対策をする予定はありません。予告して心の準備をさせるだけのものです。 ・音声認識のエンジンを追加 Ver.13.0.7.0 ●通知の強化 ・ナビゲートロック時にナビゲート要求があった時の通知メッセージが不統一であったのを修正 ・オプション→全体→動作に通知メッセージの表示場所(?)の設定を追加  1.ステータスバーのみ  2.アクティブフレームの中央  3.メインウィンドウの中央  4.しゃべる ●スクリプト ・スクリプトのSpeach系のコマンドのタイプミス修正(→Speech) ※Ver.13系の間は両方使えます ●音声合成 ・関連処理をクラスにまとめた ・声をOSの「音声認識」の設定画面の「音声」の設定を参照するように変更 ・「音声認識」の設定が見つからない場合、TTSエンジンの設定値を参照する仕組みを追加 ・読み上げ速度  スクリプトはSpeechRateSpeedの指定  通知はOSの「音声認識」の設定の「速さ」 ●その他 ・Win32Apiの最低使用レベルをXP以降からVista以降に変更 ※結構な数のWindowsAPIの内部動作が変わっています ・コード分析対応 ●不具合修正 ・特殊な操作を行った場合、リストの全選択解除の際にドロップハイライトと切り取り属性が解除されない不具合の修正(通常操作では発生しません) ・監視イベントの名称がバッティングする可能性(1/16億くらいの確率)がある不具合の修正 ・一部のコンテキストメニューのVerb指定で不適切なキャストを行っていたのを修正 ・クリティカルセクションの生成に失敗した場合のエラー処理が間違っていたので修正 Ver.13.0.4.0 ・タブバー上の閉じるボタンの当たり判定が3ピクセルずれていたのを修正 ・プレビューで発生する例外を調整 ・エラーメッセージの文言修正 Ver.13.0.3.0 ・プレビューバーの安定性の向上  (外部コンポーネントがメモリリークしても落ちにくくした) ・プレビューバーに反映させるトリガーの設定を追加  1.リスト上のファイルを選択(従来動作)  2.リスト上のファイルの上にマウスを近づける   (ツールチップを出すタイミングで表示切り替え)  3.リストとは連動しない   下記のスクリプトコマンドで、プレビューバーを組み込みビューアとして使う場合に使用する。 ・スクリプトのExRunにプレビューバーで表示させる組み込みコマンドの追加   Filter句で対象拡張子を指定し、起動コマンドの記述を以下のようにすることで内蔵ビューアにすることが可能になる 【書式】 Filter=txt,xlsx,xls,docx,pdf ExRun=Previewbar ●その他 ・インサイドツリーでツリーのクリックイベントがジャンプの場合、ターゲットリストは現在のペインのリストに限定するように変更 ●不具合修正 ・「反対側のペインで開く」コマンドでアクティブフレームを見失っている場合に誤動作する不具合の修正 Ver.13.0.1.0 ●Setting.exeに/Fスイッチを追加  初回インストールボタンが非活性にしないオプションです。  インストール先などを変更して再インストール可能になります。  お気に入り等のサンプルスクリプトを作るようにすると上書きするので注意してください。 【書式】 Setting.exe /F ●不具合修正 ・アイコン表示の場合、プレフィックスを隠すモードになっていなかった不具合の修正 ・サイズグラフの描画の条件式が不正であったのと、初期化値の扱いを勘違いしていた不具合の修正 ・コマンドが増えていたのでAllCommand.txtを出力しなおした Ver.13.0.0.0 ●コンパイラオプションの変更 ・std:17をすべてのバイナリに適用 ※全体的に実行時の性能が向上しているが、サイズが大きくなった分だけロード時の性能が低下 ●ウィンドウ管理バー ・貼り付けなど、複数のフォルダーを対象にできることがイメージできるようなメニュー文言に修正 ・閉じる系のコマンドの並び順のほかに合わせて統一した ・メニューに「全て閉じる」を追加 ●タブバー ・メニューのセパレータを他に合わせて統一した ●メインメニュー ・メニューに「ロックされているタブも全て閉じる」を追加 ・「ホームページを開く」を追加 ・「As/Rのページを開く」を追加 ・並び順を他のメニューに合わせて修正 ●リストのメニューを修正/是正 ・リストが選択状態の場合「全選択/解除」は結果が不定なので「解除」と「全選択」に分離した ・リストが未選択状態で「全選択/解除」はあり得ないので「全選択」のみに変更 ・リストが未選択状態で「選択状態の反転」はあり得ないので削除 ・選択系のコマンドの説明文言を修正 ・「更新日付が10分以内のファイルを選択」コマンドを追加 ・「更新日付が1時間以内のファイルを選択」コマンドを追加 ・「更新日付が本日のアイテムを選択」コマンドを追加 ●新規追加コマンド ・「ホームページを開く」コマンドを追加 ・「As/Rのページを開く」コマンドを追加 ・「全て選択」コマンドを追加 ・「更新日付が10分以内のファイルを選択」コマンドを追加 ・「更新日付が1時間以内のファイルを選択」コマンドを追加 ・「更新日付が本日のアイテムを選択」コマンドを追加 ●その他 ・COMがビジーの場合のインターフェイス再取得処理を廃止  (ビジーならすぐに諦める。Ivy Bridgeより過去のCPUがビジー状態を誤認するため) Ver.12.9.5.0 ●その他 ・BOX等のシェル拡張ソフトが動作しなくなるので、スレッドでのCOMの初期化でメモリを多く割り当てて速度が向上するように変更したものをロールバックした ・プレビューバーの安定性の向上(メモリ/リソースリークする外部コンポーネント用の対策) ・リスト上のツールチップテキストの設定反映の仕組みを整理して無駄な処理を減らした ・コード分析の警告対応(122個) ・定義ファイルの読み込み処理のアルゴリズムを改善 ・旧式差分更新のアルゴリズムを改善 Ver.12.9.4.0 ●自動更新(シェル通知モード)が使い物にならないシーンが増えてきたので機能追加 ・更新検出方法に「旧式差分更新」の選択肢を追加 ※特に正確性を要求されるシーン用  常に全走査を行うため性能は低  リネームの際にフォーカスを失うので操作性も低 ・自動更新用のステータスバーのアイコン画像を追加 ・「旧式差分更新」モードのステータス表示/切り替え機能を追加 ・更新検出方法の設定画面の文言を見直した ・ローカルフォルダーの更新検出方法の設定を追加 ※設定可能項目はネットワークと同じだが、文言は異なる ●コンパイラの不具合対応 ・並列処理における最適化不具合の対応のため開発環境を更新 ・サニタイズ処理不具合の対応のため開発環境を更新 ●メディアプレイヤープラグイン(プレビューバー) ・デフォルト拡張子にmp3,mp4を追加 ●その他 ・スレッドでのCOMの初期化でメモリを多く割り当てて速度が向上するように変更 ※消費増がByte単位、速度差がナノ秒単位なのでほぼ誤差  アイコン取得  ディレクトリ走査  フォルダサイズ計算  貼り付け  削除  バックグラウンド実行のスクリプト ・リストの幅設定で「詳細一覧」以外の動作を改善 ・リストの自動幅計算で幅のDPI許容値を調整 ●その他不具合対応 ・シェル通知の自動更新の場合、対象が現在フォルダーか否かのチェック処理を暫定で追加 ※解放したはずの他のパスの更新通知を拾っている  最近のWindows10ではSHChangeNotifyDeregister()が期待通り動いてない ・リスト項目の削除後の再描画で落ちる可能性がある不具合の修正 ・フォルダ情報としてカラムも取得しているが、COMがビジーだと取得し損ねて落ちる可能性がある不具合の修正 ・リストの自動幅計算でDPI係数で割るべきところを掛けていた不具合の修正 Ver.12.8.5.0 ●スマートペーストのカスタマイズ画面をオプションに追加 ・設定項目を「全体→共通操作」から「リスト→貼り付け」に移動 ・テキスト/画像を個別指定できるように変更 ・デフォルトのテキスト/画像のファイル名を設定できるようにした ・置換マクロをたくさん正式追加 ・制御マクロを正式追加 ●その他 ・並列STLの実行ポリシーを変更(execution::par_unseq→execution::par)  30万ファイルで10ms程度速くなったため ●リストの幅の自動伸長が効かなくなる環境への暫定対処 ・計算用のリストの個数を厳密に求めるように修正  CPU依存でmax_element()が未使用領域の値を返すため Ver.12.8.4.0 ●不具合修正 ・自動更新を監視できないフォルダーか空でイベントが呼ばれた場合の状態セットが、スレッド優先度によって検出し損ねる可能性がある不具合を修正 ・監視スレッドのハンドルの命名にて、桁落ちが原因で重複する可能性があった不具合の修正 ●その他 ・SeekerでFlash Playerのサポートを終了 ・SeekerでRealPlayerのサポートを終了 ●メンテナンス ・コード分析対応2件 ・リストフォルダの制御フラグをenumで定義視しなおした Ver.12.8.3.0 ●不具合対応 ・悪意ある環境変数を設定した環境で制御不能になる可能性がある問題への対処 ※よそ様のソフトでも悪用可能なので詳細は伏せます ●その他 ・子ウィンドウ(タブ単位)管理処理の安定性の向上 ・オプションの文言修正 Ver.12.8.2.0 ●高解像度向けの改善 ・メインウィンドウのサイズにDPI係数をかけるようにした ・ウィンドウ管理バーの派生元クラスが低機能版になっていたのを変更 ●その他 ・タブバー上のホイールの回転検出をタブコントロールではなく、ドッキングウィンドウ側へ移動した ・上記と動きをそろえるためウィンドウ管理バーのホイール検出を、ツリーコントロールだけでなくドッキングウィンドウにも処理を追加 ・隠し機能(作りかけで挫折して投げ出しているもの)のレジストリ情報をまとめた ・ドライブの増減/関連付けアイコンの変更通知の受信イベントを限定的なものして複数ディレクトリ監視の衝突を緩和した ・更新検出イベントを無名にしていたがユニーク名称を付与するように変更 ・監視APIがFALSEを返してきたときに監視スレッドを停止するように変更(失敗してもTRUEを返してくる仕様なので気休め) Ver.12.8.0.0 ●不具合修正 ・ネットワーク上のディレクトリをローカルと誤認させた上で、相手サーバーのOSの種類依存で更新通知を誤認してしまう問題の対処 ・オプション画面内の「Webで探す」ボタンが機能していない不具合の修正 ●その他 ・詳細表示で折り返して2行以上になり、表示の遅いカラムを追加している場合の「名前」カラムのちらつきを低減 ・監視スレッドの省メモリ化とメモリ転送速度を若干向上 ・リリースパッケージの生成コマンドの修正(Windows10 20H2対応) ・文字列の配列を結合して1つの文字列を生成するクラス(なんちゃってStringBuilder)で状態を管理して再生成頻度を減らした Ver.12.7.9.0 ●高DPI環境向けの対応 ※通常環境を基準にしているので高DPI環境では今までの版からバージョンアップするとレイアウトが崩れます。  高DPI環境はマウスでドラッグ/設定等でサイズの再調整をお願いします。 ・オプションでのフォント設定のずれを修正  1.外観  2.テキストのサムネイル表示  3.プレビューの内蔵テキストビューア ・テキスト表示サイズ調整  1.テキストファイルのサムネイル  2.プレビューのテキスト表示 ・詳細を除く各項目の表示幅の管理を構造体からクラスに変更し、取得の際にDPI係数を掛けるようにした  1.詳細一覧  2.並べて表示  3.一覧 ・詳細のカラム幅取得/カラム幅保存にDPI係数を掛けるようにした  1.ヘッダ境界のドラッグ  2.ヘッダ境界のダブルクリック  3.自動調整  4.詳細表示の設定 ・タグテキストのフォントサイズ調整 ・タブバーのタブ幅にDPI係数を掛けるようにした ・インサイドツリーににDPI係数をを掛けるようにした  1.初期値(新しく開いたタブ)  2.保存値(スプリッタをドラッグしたときの保存値)  3.保存用ステータス文字列  4.スプリッタの幅(DPI係数をを掛けて摘まみやすいように) ・8ビットカラー環境向けのアプリアイコン画像をモダン化 ・128×128、256×256のアプリアイコン画像を追加 ●その他 ・フルパスからインデックスを求める際の安定性の向上 Ver.12.7.4.0 ・ユーザー定義バーで一覧を使わない場合のフォーカス描画を修正 ・ユーザー定義バーの破棄処理の安定性を向上 ※極めてまれにキャッシュの保存処理が行われずに終了するケースがあった ●タブを閉じる際のアイコン取得スレッドの自壊処理の見直し ・OSが応答を返さない場合にメモリリーク覚悟でスレッドを放棄していたが完全破棄の成功率が大幅に向上 ・オーバーレイアイコンの取り合いをしているシステム全体が不安定な環境での安定性を向上 ●その他 ・コンパイラバグで落ちるのを回避する処理の削除 Ver.12.7.3.0 ●不具合修正 ・新規作成時、テキストや画像が張り付けられた時のファイル名の生成に重複がある場合、連番は1から始めていたのをOSに準じて2に変更 ・ドッキングバーのフォーカスの抜け方によって(自分自身に抜ける場合)、設定によって背景色指定が乱れる不具合の修正 ・ユーザー定義バーで一覧を使わない場合の描画が見苦しかったのを修正 ●その他 ・ユーザー定義バーで一覧を使わない場合の幅にDPI係数を掛けて横幅を広げるよう変更 ・ユーザー定義バーのコンテキストメニュー系の定義ファイルに「カラム幅調整」の追加、またこのルートのメッセージ処理も追加 ※設定項目なので設定メニュー内に存在していたが気づかない人向け ・テキストや画像が張り付けられた時のファイル名をレジストリから取得し、置換マクロ展開処理を追加 ※設定画面は未実装 初期値およびレジストリの位置 [HKEY_CURRENT_USER\Software\AMA_Soft\ASR\Main001\Settings] "ClipboardText"="ClipboardText" "ClipboardImage"="ClipboardImage" ※使用可能な置換マクロは以下の通り ?Name?:ファイル名の名前(デフォルトファイル名) ?Ext?:ファイルの拡張子(デフォルトファイル名) ?FileName?:ファイル名(デフォルトファイル名) ?ParentDir?:親フォルダー名 ?Date?:現在年-月-日 ?Time?:現在時-分-秒 ?Year?:現在年 ?Month?:現在月 ?Day?:現在日 ?Hour?:現在時 ?Minute?:現在分 ?Second?:現在秒 ?Week?:現在曜日(短) ?WEEK?:現在曜日(長) ?ShellTime?:現在コントロールパネル表記 ※使用可能な制御マクロは以下の通り ?FixedNumber?:テキスト中のどこに記述していても良い、この記述があると必ず1から始まる連番を付与する Ver.12.7.1.0 ・ユーザー定義バーの描画をOS標準からカスタムドローに置き換えた ※高DPI環境でのレイアウト崩れ対応、高DPI環境でのアイコン画像の拡縮表示、フォーカス色の設定反映の目的です  見た目が若干変わります Ver.12.7.0.0 ●ファイル一括作成コマンドを作り直した ・従来のOSの自動命名に加えて、任意の名称、行政文書における名称付与の標準例に沿った命名機能を追加 ・カスタムテンプレート機能を追加 ●その他 ・リストで未選択状態のメニュー定義ファイルにファイル一括作成コマンドを追加 ・安定性の向上 ・不要な変数の削除 Ver.12.6.0.0 ●高解像度向けの改善 ・大きめのフォントを指定した場合のウィンドウ管理バーの描画の崩れを修正 ・リスト部の座標計算で、アイコンサイズよりもフォントが大きい場合の配慮を追加 ・タブバー、ウィンドウ管理バー上の閉じるボタンの横幅を2Pix大きくした ・タブバー、ウィンドウ管理バー上の閉じるボタンの高さと当たり判定を、タブの高さ÷2に変更(最小値は16pix) ●保留 ・リスト上のチェックボックスの描画を拡縮対応の描画に変更 (コントロールの持っている座標計算がおかしくなるので継続調査) Ver.12.5.9.0 ・「ロックされているタブも全て閉じる」を追加  タブバーのコンテキストメニュー  ウィンドウ管理バーの機能メニュー  コンテキストメニュー ●不具合修正 ・アドレスバーの設定を保存しても、要再起動である不具合を修正 ・いつの間にやら全ビルドで、外部コマンドがコンパイルエラーになっていたのを修正 ●その他 ・ユーティリティ系の関数を複数追加 ・オプションの画面分割の説明を修正 Ver.12.5.8.0 ●不具合修正 ・コード分析による警告の解消が合計で62ヶ所  値をセットしている変数の未初期化対応  スレッド関数への未記入のコメントを追記  オブジェクト生成の確認済みだがCOMインスタンス生成関数そのものの戻り値の不使用等 ●ファイル数の多い(数万)フォルダでの安定性の向上 ・素早く連続して更新を発行し続けると落ちることがある不具合の修正 ・素早く大量に連続して削除やリネームを検出し続けると落ちることがある不具合の修正  ※自動更新の遅延を極端に短く設定した場合に起こりやすい Ver.12.5.6.0 ・タブごとにウィンドウハンドルを管理する仕組みを実装 ・タブの列挙の処理の速度改善 ・ウィンドウハンドルから走査してタブ情報を取得していた処理をハッシュに変更 ●その他 ・起動に失敗する場合のメッセージを大量に追加 ・ソースコードのメンテナンスバッチコマンドを修正 ・タブバー縦置きなら右クリックメニューの「右を閉じる」を「下を閉じるに」、「左を閉じる」を「上を閉じるに」に置換するように変更 Ver.12.5.1.0(リリース告知前に不具合が発覚したので非公式) ●不具合修正 ・コード分析による警告の解消  (今回は設定系と、アプリケーション固有情報系で163ヶ所修正) ・スクリプト実行時にCOMのメモリリークが発生するルートがあった不具合の修正 ・アイコン取得スレッドでCOMの初期化に失敗した場合に落ちる事がある不具合の修正 ・ftp://、http://などのパス名はネットワークとみなすように修正 ・コンパイラによる最適化によって、フォルダサイズ計算のスレッドの終了フラグが立たない対策を実施 ●アドレスバーの動作改善 ・アドレスバーが空欄の場合に移動しようとすると表示が乱れる不具合の修正  また、空欄の場合は初期値フォルダを開くように変更 ・アドレスバーの終端\補完は実体のあるフォルダに限定するように修正 ●試作 ・ハードウェアレンダリングの初期化処理を高速化したが、まだ足らない ・プロトタイプのIME監視スレッドが動いてたので停止  IMEの状態を大きく表示して「(IMEがONになってて)あれ?動かない」を減らす目的の機能の試作品 Ver.12.4.8.0 ●不具合修正 ・シェル比較系のソートモードの場合、並列処理を行うと比較結果が不定になる環境が存在するようなので非並列のソートに切り替えるように修正 ・コード分析による警告の解消  (今回は影響が少なく、簡単に手が付けられるもののみ120ヶ所くらい修正) ●その他 ・更新検出後の動作を整理して分岐の発生数を減らした Ver.12.4.7.0 ・フィルタ設定の表示名の展開したテキストで「&」がプレフィックスになっていた不具合の修正 ・Speachスクリプトの再生音量が0になっていた不具合の修正 ・新規フォルダ作成(MkDir.exe)の文字列処理を改善 ・フィルタエリア/ディレクトリ内検索で、有効なショートカットキーを押下してもアラート音が鳴る不具合の修正 ・詳細一覧の属性の表示にMを追加(存在しない) ・詳細一覧の属性の表示にUを追加(ピン無し) ・詳細一覧の属性の表示にPを追加(ピンあり) ・詳細一覧の属性の表示でスパースファイルは小文字のpに変更 Ver.12.4.5.0 ●ファイル一覧出力の強化(FileExport.exe) ・未入力などのエラーチェックを厳しくした ・単位無しでファイルサイズを出力した場合、出力時にintの範囲までとなっていたのを修正 ・不正な出力ファイル名にならないように前後のスペースを除去するように修正 ●その他 ・配布書庫のディレクトリにバージョン番号を付与するように変更 ・スキンなどのなどのキャッシュが破損している場合の読み込み時に落ちる場合がある不具合の修正 ・OLEオブジェクトの生成時、メモリ割り当てインターフェイスが取得できない場合に落ちる不具合を修正 ・ドラッグ時のドロップソースを開放しないルートがあった不具合の修正 ・バックグラウンドタスクが発生した場合、アプリケーションのタスクバーアイコンを赤塗にした ※ファイルコピー/削除などのダイアログが表示されていると、どれが本体か見分けがつかないため Ver.12.4.3.0 ●名前の変更コマンドで異常な名称のリネームを許可がOFFの場合の動作の変更 ・前後のスペースを除去しているが、動作が分かりやすいように画面を更新するように変更 ●アイコン描画のスレッドの安定性の向上 ・スレッド制御でアクセス違反が起こりうるルートがあったので修正 ・何らかのアクセス違反が発生した場合に例外を捕まえて落ちないように変更(暫定対処) ●その他 ・各種のサムネイルキャッシュを読み込む際にGDIリソースリークが発生する場合がある不具合の修正 Ver.12.4.1.0 ●ウィルススキャンソフトの誤検出対策として実行ファイル/DLLの個数の削減 ・設定のない書庫系コマンド(ArcDllInfo.exe、MakeArchive.exe、MakeSelfExtract.exe)を統合した(-4個) ・設定のない情報系コマンド(DriveInfo.exe、FileInfo.exe、MemInfo.exe)を統合した(-4個) ・ShellCmd.exeにコマンドラインオプション(/RmHardware)を追加してRmHardware.exeを削除(-2個) ・ShellCmd.exeにコマンドラインオプション(/ScreenSaver)を追加してScreenSaver.exeを削除(-2個) ・SettingInitialization.exeは配布書庫から削除(-2個) ・現在休止中なのでCreateErrorReport.exe、report.batの同梱を削除(-4個) ・プレビュープラグインのRealPlayer.dllは配布書庫から削除(-1個) ●ExternalDefCommand.txtの更新 ・統合したArc.exeのコマンドを記述 ・統合したInfo.exeのコマンドを記述 ・ハードウェアの取り外し(42083)の追加 ・スクリーンセーバーの起動コマンドの修正 ●その他 ・誤字修正 ・AllCommand.txtの更新 ・_ListNoSelContextMenu.txtがENDで閉じてない不具合の修正(補完するので実害ありませんが、サンプルとして文法に問題があるのがNG) Ver.12.3.7.0 ●その他 ・リストで選択している状態のコンテキストメニューを表示し、項目を選択するとコマンド名とIDをクリップボードにコピーする機能(コマンドID:35907、隠し機能)が消えていたので再実装 ・自動更新の遅延時間が0の場合、カウンターの描画頻度を下げてレスポンスを向上 ・アクティブビューがnullの場合に落ちる可能性がある不具合の修正  (バグを組み込まない限り問題は発生しない) ・画面分割時にインサイドツリーをマウスクリックした場合にフォーカスを制御する仕組みを組み込んだ ・コンパイラの不具合により異なるループ条件のバイナリが生成される不具合対策(コンパイラの更新) ●脆弱性がある環境でも動く版のコンパイラオプションを変更 ・原因特定の検証用としてベースアドレスの固定化ON、メモリ内ランダム配置のOFF等 ※最近のWindows updateで強制的にメモリ内にランダム配置されるので効果は限定的 Ver.12.3.5.0 ●リスト描画の修正 ・アイコンのみモード(隠し機能版)は格子色を反映しないように変更 ・テキストの設定色、状態色の管理方法をまとめた ・詳細一覧で選択状態かつ、フォーカスがあり、ウィンドウがアクティブでない場合、背景色が黒系だと情報表示部が見づらくなるのを改善 ●初回設定ツール ・使用許諾条件のページを開くボタンが機能していない不具合を修正 ・コンパイルオプションの最適化をサイズ優先に変更 ●その他 ・Intel JCC erratumIntel マイクロコード更新のパフォーマンスへの影響の軽減対策を適用 Ver.12.3.3.0 ●性能の改善とライブラリ使用の変更 ・表示情報の取得の並列処理をOpenMPからPPLに変更 ・何らかのフィルタを設定した場合の速度を平均的に6~7%程度向上、ただし全てのフィルタがない場合は1~2%程度の性能低下 ・OpenMPの直接利用を廃止 ・OpenMP依存のソートや並列処理を並列STLに変更(ピーク性能の低下と全体性能の向上) ・AVX2版の場合、並列処理でベクタライズするように変更して性能を向上 ・コンパイラの更新によってAVX2版が落ちることがある不具合が解消 ・最適化オプションの調整 ●オプション ・260文字を超えるパス長の対応の設定を追加 ・CPU依存のチューニングおよび、アルゴリズム切り替えの設定を削除 ・OpenMPの直接利用を廃止 ●ランタイムテストコマンド ・GetCurrentProcess()というAPIを無駄に呼び出して、VCRUNTIME140_1.DLLを検出できるようにした ●シェル系のコマンドをShellCmd.exeに統合 ・ExternalDefCommand.txtを更新、説明文の改定 ・ShellCascadeWindows.exeの廃止 ・ShellMinimizeALL.exeの廃止 ・ShellSetTime.exeの廃止 ・ShellStartMenu.exeの廃止 ・ShellTileHorizontally.exeの廃止 ・ShellTileVertically.exeの廃止 ・ShellUndoMinimizeALL.exeの廃止 ・ShellWinHELP.exeの廃止 ・OSをシャットダウン(ID:42078)を追加 ・OSをサスペンド(ID:42079)を追加 ・ドッキングベイからPCを切り離す(ID:42080)を追加 ・ファイル名を指定して実行(ID:42081)を追加 ・コンピュータを探す(ID:42082)を追加 Ver.12.2.6.0 ●配布パッケージの変更 ・インストール/更新の手順に追加して「AVX2使用版」と「DLLプリロード等の脆弱性がある環境でも動作する版」を選択できるように変更 ※「AVX2使用版」「DLLプリロード等の脆弱性がある環境でも動作する版」の差分の配布は終了します。 ※7Zipのインストーラーに対するウィルススキャンソフトの誤検出が一向に減らないことから「インストーラー同梱版」の配布は当面見合わせます。 ●その他 ・AVX2版の速度を全体的に向上(並列最適化の向上/ロード・ストア系の命令を使用許可) ・通常版/AVX2版/DLLプリロード等の脆弱性がある環境でも動作する版をステータスバーに表示するようにした ・配布書庫を精査 ・文言修正多数 Ver.12.2.4.0 ●ウィンドウ管理バー ・ウィンドウ管理バー上にてホイール回転でタブを切り替える際、ウィンドウ管理バーでチェックを付けているアイテムが存在する場合は、チェックを付けているタブだけを対象に切り替えるように変更 ・前/次のタブに切り替えコマンドでタブを切り替える際、タブバーが非表示かつウィンドウ管理バーでチェックを付けているアイテムが存在する場合は、チェックを付けているタブだけを対象に切り替えるように変更 ・上を閉じるコマンド追加(35107) ・下を閉じるコマンド追加(35106) ●メニュー定義ファイルの更新 リストの選択状態のコンテキストメニュー(_ListContextMenu.txt) ・タグ関連のサブメニュー項目を追加 ウィンドウ管理バーのコマンドメニュー(_TabMngBarAction.txt) ・閉じる系のコマンドを追加 ウィンドウ管理バーのコンテキストメニュー(_TabMngContextMenu.txt) ・閉じる系のコマンドを追加 ●オプション ・スキン/ステータスアニメーション/スクリーンセーバーの画面に「Webで探す」ボタンを追加 ・背景の透明度の設定を子ダイアログ内へ移動 ●その他 ・アクティブになるまで走査しない設定の動作を改善して起動速度を向上した ・kiriさん作成のスキン画像を追加同梱した ・ソースコードをツールを使って自動整形した Ver.12.2.0.0 ●ウィンドウ管理バー ・自動整列を解除したときにタブバーと同じ順になるように変更 ・自動整列OFFの場合のタブの挿入位置はタブバーの設定を使うように変更 ・自動整列OFFの場合の親子関係がある場合のタブの挿入位置はタブバーの設定を使うように変更 ・マウスの左クリックでアクティブタブを切り替えた場合に、リストにフォーカス移動するように変更 ・空欄ダブルクリックで新しく開くコマンドを発行するように変更 ・アクティブタブを太字にする設定の影響を受けるように変更 ・ドライブアイコンの設定の影響を受けるように変更 ・アクティブタブに閉じるボタンの設定の影響を受けるように変更 ●オプション(タブ周りの仕様変更対応) ・「タブバー」のページを削除して、「タブ個別」ページを追加 ・「タブ共通」ページのレイアウト変更と項目の再編 ・「フラットデザインを使用する」の設定と、タブのグラデーション描画モードを削除 ・「タブ切換時に点滅させて目立たせる」設定と点滅機能を削除 ・その他文言修正多数 ・その他レイアウト修正多数 ●ユーザー定義バーのキャッシュ制御 ・制御を独立したクラスにまとめた ・削除の際にインデックスから除去する処理を追加 ・リネームの際にインデックスを更新する処理を追加 ●その他 ・Windows SDKの更新 ・バックグラウンドのシェル削除が完了したタイミングでメインウィンドウをアクティブにするように変更 ※ごみ箱のプロパティが「削除の確認メッセージを表示する」がONの場合、シェルのバックグラウンド削除を行うとフォーカスを見失うWindows10の不具合対策 ・Office2007(黒)テーマ時、タブバーのアクティブタブを太文字にする場合の見た目を改善 ・最近閉じたフォルダーバーのフォーカスの色塗りで考慮不足があったのを修正 Ver.12.1.4.0 ●不具合修正 ・最近閉じたフォルダーバーで背景黒テーマでフォーカスがない場合は、背景黒で黒文字なので選択テキストが読みにくい不具合の修正 ・環境変数を含んだパス対応の修正もれで、全てのディレクトリ名が1文字で構成され260文字を超えるパスをツリーで選択したときの動作を修正 ●スクリプト不具合修正 ・小数部があるか否かの判定でint32のキャストを使っていたが、無条件で文字列に変換して、右から「0」トリムした上で「.」トリムするように変更 ・Ver.12から変数の代入式で左右の「スペース」トリムしていたのを削除 ●スクリプトの仕様変更 ・String、TrimLeft、TrimRight、Paddingを追加 ・以下のコマンドの戻り値は数値変換をしないように、また結果が空文字であった場合に空文字を返すように変更 ReadRegString left right csv replace SubString RemoveLastSeparator GetExt GetName GetPath random ・input,inputdir,inputfileの戻り値の制御を上記の処理ど同じ仕組みを使うように修正 Ver.12.1.0.0 ●環境変数を含んだパス対応の修正もれ ・Ctrl+左クリックの動作を修正 Ver.12.0.9.0 ●プレビューバーのメディアプレーヤープラグイン ・UIモードを非表示にした(メッセージループを持たない画面には表示できない仕様らしいため) ●自動更新の環境依存の不具合対策 ・オプションにあった「ごみ箱」と「マイコンピュータ」の自動更新抑制を削除 ・任意フォルダーをワイルドカードで複数指定できる機能を追加(上限20個) ●スクリーンセーバー機能の追加 ・隠し機能のステータスバー上のアニメーションの動作を作り直した ・アニメーションの描画個数の変更を追加 ・描画場所の設定を追加 ・開始時間の設定を追加 ・選択UIを追加 ●その他 ・シングルスレッド版をプロジェクトから削除 ・スキンやステータスアニメーションの説明のテキストを文字コード判別して表示するように変更 ・ディスクの増減/関連付けの変更監視の通知受信で再帰取得しないようにして通知の受信量を削減した ・自動更新の通知の最適化処理を改善(速度の向上と省メモリ化) ・同梱用の画像にドキュメントを追加 ●不具合対応 ・ツリーの各種の動作に内部データ転送の目印を追加して、環境変数を含んだパスにリスト以外で遷移できない問題への対策を多数盛り込んだ ・特定条件でディスクの増減/関連付けの変更監視と、ネットワーク上のフォルダの監視の通知が混ざる現象への対処を盛り込んだ(Windows10の不具合) Ver.12.0.0.0 ●開発環境を変更(Visual studio 2015→2019) ・移行に関する問題を大量に修正 ・コンパイラオプションの調整 ・全てのWindowsSDKを8.1→10の最新に変更 ・リストの破棄処理をPPLで並列化した ・リストのテキスト幅の最大値を求める処理をPPLで作り直した ・使用可能コア数の動的管理の仕組みを追加(シングルコア版は無くなりました) ・C++17に対応していないWindowsAPIはDLL化 ●スレッド管理方法の改善 ・サムネイル/アイコン取得のスレッドプールのインスタンス管理を調整して速度と安定性の向上 ・リストの破棄処理を調整して、一度にタブを大量に閉じる際の安定性を向上させた ・フォルダサイズ計算時に背景の画面の描画を止めて安定性を向上させた ●名前の変更コマンド(FileRename.exe) ・長いファイル名が増えてきたことからファイル名のエリアが狭く感じるようになったため、レイアウトを大幅に変更した ・画面サイズを変更した上で、並び順の反転/拡張子分割のモードを切り替えるとレイアウトが崩れる不具合の修正 ・スペース以下を除去ボタンを追加 ・異常な名称のリネームを許可がOFFの場合、前後のスペースを除去するように変更 ●FirstSetting.exeとUpdateAsr.exeの統合 ・更新の手順を1個減らした ・動きとメッセージを見直した ・Setting.exeで更新時、ファイルコピーに失敗した場合に再試行の選択肢を追加 ●設定の仕様変更 ・ユーザー情報の管理ディレクトリの初期値をプロファイルで管理された~ではなく、アプリケーションフォルダーに初期値を変更 ●バージョン情報(VersionInfo.exe) ・OS情報を平たい表記に変更 ・最近使わなくなった情報を削除(ShellVersion,サービスパックの有無) ●スクリプト ・16進数変換は1行に複数の値を記載できるようにした ・代入文で四則演算を記載できるようにした ・ExRun句で複数のアプリケーションを指定した場合、ポップアップメニューで表示していたものをTaskDialogで表示するように変更した ※ショートカットキーは使えなくなりましたが、複数のファイルを開こうとした場合等に有用な情報表示が増えてます ●不具合修正 ・外部コマンドのファイル一覧が、属性Mを持つファイルの場合にアイコン取得に失敗してチラつく不具合を修正 ・リンクを開く際にフォルダ移動が発生し、それが何らかの理由でキャンセルされ場合、現在パスを見失う設定の組み合わせがある不具合の修正(フォーカスナビゲーション) ・リンクを開く際にフォルダ移動が発生し、それが何らかの理由でキャンセルされ場合、現在パスを見失う設定の組み合わせがある不具合の修正(選択ナビゲーション) /////////////////////////////////////////////////////////////////////////////////// // Ver.11.x系 /////////////////////////////////////////////////////////////////////////////////// Ver.11.8.6.0 ・自動更新の検出スレッドのループが特定の環境の場合に、ノーウェイトでループすることがある不具合の修正 ・パスの存在確認関数が、ドライブルートを検出できない不具合の修正 Ver.11.8.5.0 ・詳細一覧の日付の描画で縦にはみ出して描画する組み合わせがあったのを修正 ・チェックボックスのモード管理が無駄に階層化されていたので1階層に修正 ・CLSIDから文字列に変換する際、レジストリ情報が破損して不整合があると落ちる可能性がある不具合の修正 ・ファイル読み込み系のプレビューで開けても読めない場合に落ちる可能性がある不具合の修正 Ver.11.8.4.0 ・コード分析により検出した警告のうち、クラッシュおよび脆弱性の原因となりうる項目を修正(23件) ・長パス対応により低下していた走査性能を3割くらい回復 Ver.11.8.3.0 ●不具合修正 ・外部コマンドの入力補完コンボボックスの候補の選択時に、マウスで選択した場合に省略文字列を取得してしまう不具合を修正 ・ネットワーク上のファイルの長パス解析で不適切なパス変換を行う不具合の修正 ・テキストファイルビューアでコマンドラインで指定されたファイルを2回読んでいた不具合の修正(速度が遅い以外に実害はない) ●動作改善 ・?SelFile?、?selfile?の置換マクロで渡す場合、MAX_PATHを超えるがショートファイル名の置換が可能であればショートファイル名で渡すように変更 (長パス対応していないアプリケーションに対する救済措置) ・無駄な試行を減らす目的でショートファイル名か否かの判定を厳しくした (7文字以内に~があり、次の文字が数字か否かで判定) Ver.11.8.2.0 ●深いパス対応 ・ネットワーク対応したデバイス名の取得関数を追加 ・長パス対応のパス分割関数の関数を作成 ・長パス対応のGetFileAttributes()のラッパ関数を追加 ・長パス対応のファイル存在チェック関数を作成 ・検索系の一連の処理を作り直した ・従来のロングファイル名の取得関数(今まで未使用)をチューニングして0.85~30,000倍速に向上 ・ShellExecute()対応 ・更新検出処理の見直し ・更新通知の受け取り処理の見直し ・更新インデックスの管理を見直した ・_tsplitpath_s/_wsplitpath_sのパスの分割関数を使わないように変更 ・GetFileAttributes()を使わないように変更 ・FileExistance()を使わないように変更 ・ファイルオープン系の処理の長パス対応 ・DragQueryFile()の長パス対応関数を追加 ・レジストリの文字列読み込みの最大長を32K文字に変更 ・StrRetToBuf()の長パス対応関数を追加 ・入力補完コンボボックスの長パス対応(MArcを除く) ・PathAppend()を使用しないように変更 ・GetIconLocation()を使用しないように変更 ・ショートカットから実体名を取り出す処理の長パス対応(上限があるので可能な範囲のみ) ・外部プロセスの起動モードで、終了を待つタイプの動作のパス長の制限を解除 ・ITEMIDLISTからフルパスを取得する関数のパス長の制限を解除 ・shell32.dllから文字列を取得する関数の文字列長を32KBに拡張 ・指定したexeからウィンドウハンドルを求める関数の長パス対応 ・古いOSを対象としたロングファイル名取得関数の長パス対応 ・Shell_GetCachedImageIndexを使うアイコン画像の取得処理の長パス対応 ・ツリーのコンテキストメニューのOS部分の長パス対応(※悪意あるシェル拡張ソフトの検出用) ・ユーザー操作以外では_wrename()を使用しないように変更 ・CStdioFileクラスを使用しないように変更 ・CFileクラスを使用しないように変更 ・TxvのみMFCのコマンドライン解析を使用しないようにして長パス対応アプリにした ・Finのファイルの探索を長パス対応とした(制限付きなので完全対応とはしない) ●高速動作する関数を用意しているに未適用であった項目 ・GetWindowsDirectory()の置き換え(多数) ・GetSystemDirectory()を置き換え(多数) ●テキスト文字コード変換コマンド ・UNICODEの場合BOMを付与するオプションでUTF8を対象に追加した ●その他 ・ファイルサイズを求める関数を抜本的に作り直して大幅に高速化した ・lnkファイル解析処理で、無駄なメモリ転送と確保があったので省略して速度向上させた ・拡張子分割文字列の生成で文字列長のカウントしないようにして高速化 ・複数あったフルパスを分解してファイル名を返す処理を速い方に統一して使うように変更 ・文字コード判定の日本語対応を強化、ただし非日本語圏は劣化 ・ファイル情報コマンドのテンプレート(FileInfo.tmp)の読み込み文字コードがSJISになっていたのでUNICODEに変更 ●不具合修正 ・オプションから本体のexeを探すパスの扱いで未処理の相対パス指定があった不具合の修正 ・テキストをサムネイル画像にする際にメモリリークする可能性がある不具合の修正 ・リストの「選択状態」のコンテキストメニューの「シェル項目を上に表示する」が、「未選択状態」の設定値を使用していた不具合の修正 ・タブバーでの左クリック動作を丸ごと作り直した ・スクリプトのFileOpenMode、BomOutで0がセットできない不具合の修正 ・本体起動時に必要な画像が存在しない場合に起動できない不具合の修正 Ver.11.3.7.0 ●細かい改善 ・リスト未選択のコンテキストメニューで、サイズグラフ、日付の色分けの状態をチェックで表示するようにした ・クリップボードのテキストから開くコマンドで、フォルダを判別して終端の\を補完して開くように変更した ・パスの終端の\を取り除く処理で/も対象にした(パス表記に/が混じっていると/を対象とする) ・終端に\を付ける処理で/も対象にした ・フルパスで520文字を超えるパスをドロップで受け取れるように修正 ・タブのD&D構造体サイズを可変長にして省メモリ化 ・かなり深いパスの場合に更新通知を拾えない現象を解消 ●一時的にカレントディレクトリを切り替える処理を作り直した ・カレントパスの保持を可変長で管理するようにして省メモリ化 ・パスが深過ぎるとカレントフォルダが取得できなかったが最大32KB文字に変更 ・リスト関連付け実行(フォーカスナビゲーション)に適用 ・リスト関連付け実行(選択ナビゲーション)に適用 ・リストのコンテキストメニューに適用 ・リスト空欄のコンテキストメニューに適用 ●ファイル属性変更 ・圧縮属性の変更に失敗した場合にシステムメッセージを出すように変更 ・暗号化属性の変更に失敗した場合にシステムメッセージを出すように変更 ●不具合修正 ・選択中のディレクトリをツリーに追加コマンドで、インサイドツリーが更新されない不具合の修正 ・フォルダーバーを一度も表示させていない状態だと、オプションで設定変更をしてもインサイドツリーが更新されない不具合の修正 ・1040文字を超えるローカルディレクトリの場合、更新通知の受信に失敗する場合がある不具合の修正 ・1040文字を超えるディレクトリの場合、タブをD&Dで並び替えたときに不定なパスになる可能性がある不具合の修正 Ver.11.3.3.0 ・リスト未選択時のコンテキストメニューのメニュー定義を修正(ショートカットキーの付与、構成の修正等) ・option.exeと本体のオプション画面のIDがずれて設定変更したオプションページの終端イベントが発行されず、画面が更新されなくなっていた不具合の修正 Ver.11.3.2.0 ●外部コマンドの改善 ・対象ファイルの一覧を持つ画面のアイコン画像の取得の仕組みを作り直して大幅にレスポンス性能を改善した(ファイル一覧を持つ機能全てが対象) ●その他 ・アドレスバーの「ダブルクリックした位置の示すパスへジャンプ」は対象を開くではなく、対象をディレクトリとしてジャンプに戻した Ver.11.3.0.0 ●アドレスバーの入力補完の強化 ・先頭が\:;でなく、2文字目が:でなく、:/や:\を含まない場合、現在のパスの下位階層とみなした補完を追加 ・「.」「..」の相対パス指定の展開を追加 ・相対パス指定や環境変数などを展開済みの状態で履歴に保存するように変更(相対パス指定の代償) ・終端に\がつかない場合、対象がディレクトリか否かを判断して\を補完する機能の追加 ※フォルダーにフォーカスを当てる動作はできなくなりました ・フォルダーをドロップしたときに終端に\を付与する機能の追加 ・http等のパス区切り文字が/の場合の階層パスの検出処理を追加 ・候補の補完と候補の列挙を1文字以下なら従来どおり先頭一致、2文字以上は部分一致に変更 ●アドレスバー右クリックメニューを追加 ・メニュー定義ファイルの_AddressBar.txtを追加 ・貼り付けて移動を追加 ・元に戻すを追加 ・切り取りを追加 ・コピーを追加 ・貼り付けを追加 ・削除を追加 ・全て選択を追加 ・全て削除を追加 ・フルパスをコピーを追加 ・終端パスを削除を追加 ・選択候補の表示を追加 ・履歴候補の表示を追加 ・履歴の削除を追加 ●アドレスバーのオプション追加 ・ダブルクリックで履歴を表示モードを追加 ・ダブルクリックで候補を表示モードを追加 ・ダブルクリックでクリック位置のパスへ移動するモードを追加 ・ダブルクリックでクリック位置のパスの階層メニューを表示するモードを追加 ・選択候補にファイル含める設定の追加 ●アドレスバーその他 ・アドレスバーからタブキーを押下した次のフォーカス遷移先をリスト固定になるように制御を追加 ●入力補完コンボボックス(入力補完コンボボックスのある機能全てが対象) ・候補の補完と候補の列挙を1文字以下なら従来どおり先頭一致、2文字以上は部分一致に変更 ・アドレスバーと同様に選択候補を5000件に制限した ●クリップボードのテキストから開く ・テキストを前後の空白をトリミングするように変更 ・複数行のテキストで、まとめて複数ウィンドウを開く際に数が多いと警告メッセージを表示するように修正 ●ダイアログのサイズを変えたときにレイアウトが崩れる不具合の修正 ・FileCpMv.exe ・FileExecute.exe ・FileRename.exe ・VersionInfo.exe ●exe,lnk,ico,cur,sln,ani,scr以外のアイコン画像は1回しか読み込まない設定 ・圧縮属性がついている場合は、キャッシュを探さないように修正(Windows10の圧縮オーバーレイ対策) Ver.11.2.1.0 ●オプションのフォルダーバーの設定画面の調整 ※フォルダーバーの歯車アイコンで設定可能な項目ですが、インサイドツリーと共用なのでこちらにも設けました ・レイアウト変更して表示/操作/連動項目をカテゴリ分けした ・隠しアイテムの表示を追加 ・リストのフォルダー移動に連動するを追加 ・タブ切り替えに連動するを追加 ・リストが仮想フォルダーの場合に連動するを追加 ・リストがネットワークの場合に連動するを追加 ●その他オプション ・型変換のワーニングが出てたのでキャストした×4 ・日付の書式の初期値をyyyy/MM/dd HH:mmに変更 ・ユーザー定義バーの並び順で、フォルダー優先しないモードを2種類増やした ●不具合修正 ・キー割り当てをファイルに出力で、出力不能なフォルダを指定した場合にエラーにならない不具合の修正 ・アドレスバーの選択候補を5000件に制限した Ver.11.1.7.0 ・日付の書式化処理を作り直した ※1600~1900年の表示やミリ秒表示などの機能が追加されたが、置換文字の抜本的な仕様変更のため日付の書式設定は引き継ぎません ●Zip書庫と見なす拡張子の追加(圧縮/展開/圧縮ファイルビューア) ・apk、crx、docx、xlsx、pptx、ipa、ipg、odt、ods、odp、odb、odg、odf、wsz、wmzをzip書庫と認識するように変更 ・インストーラーのViewer.txtを更新 ●exe,lnk,ico,cur,sln,ani,scr以外のアイコン画像は1回しか読み込まない設定 ・丸ごと再構築しなおして、スレッドセーフで速度も十分確保できるように改修 ・タイムアウトしたものをキャッシュに積まないように修正 ・2次遅延処理をしないように変更 ・不正確な状態を検出したらキャッシュを開放して取得しなおす処理を追加 ・OSから拡張子との関連付け情報の変更が大量(1000個くらい)に発行された場合に落ちる場合がある不具合の修正 ・簡易アイコンの取得モードよりもキャッシュを優先するように変更 ・アイコン取得のオプションページで設定を保存した場合にキャッシュを開放するように修正 ・長い拡張子は拡張子と見なさないように修正 ●その他 ・OpenMPのスレッド分割スケジュールを動的に最適化するように変更 ●不具合修正 ・詳細表示の設定で「取得に時間がかかる項目」の設定が反映に要再起動である不具合の修正 ・VersionCheck.exeのダイアログ表示中に負荷が下がらない不具合への回避処理を追加 Ver.11.1.0.0 ●フォルダーバー/インサイドツリー ・更新処理等の非同期処理を有効に変更 ●ドッキングバーの初期値の変更 ・タブレット支援バーの初期位置を下段に変更 ・ウィンドウ管理バーの初期位置を右側に変更 ・キャプションバーの初期状態を非表示に変更 ・タブバーのタイトルバーを非表示に変更 ●セキュリティ対策 ・ベースアドレスの難読化 ●不具合修正 ・タブ幅が自動で横置きの場合、フォルダ移動で高さ調整をするように修正 ・ペイン切り替えでアクティブになる場合に、フォーカスを見失っていたら強制的にリストにフォーカスを当てるようにした(OS依存で発生) Ver.11.0.7.0 ●タブのデザイン変更と設定の追加 ・タブの幅で0を指定可に変更し、0にした場合はテキストの幅に合わせた自動計算モードになる機能の追加 ※複数段表示がONで縦置きにした場合は、自動で横幅の調整を行わなくなります ・アクティブタブの輝度を下げる設定の場合、60%→40%に変更 ・アクティブタブの輝度を下げる設定を、ウィンドウ管理バーにも反映するように変更 ・タブをWindows10を意識したフラットデザインに変更(スキン未適用の場合に適用) ●サムネイル ・フォルダー遷移後に開放できるメモリがあったので、積極的に開放するように変更 ●オプションの変更(Option.exe) ・タブの旧デザインが使えるようにオプションを追加(将来は削除予定) ・アクティブタブの輝度を下げる設定を共通へ移動 ・アイコン画像取得で、exe,lnk,ico,cur,sln,ani,scr以外のアイコン画像を1回しか読み込まない設定を追加 ※例外として、OSが管理しているアイコン画像の更新通知には反応して再度読み込みます ●一括リネームコマンド(FileRenameEx.exe) ・各種の置換系のロジックを、ほぼ丸ごと作り直した ・レイアウト微調整 ●不具合修正 ・ステータスエリアやタブバーのアイコンのサイズ計算で、大きいアイコンサイズの倍率が適用されない不具合の修正 ・オプションで色・フォントを切り替えても、インサイドツリーに即時適用されない不具合の修正 ・オプションでリスト再構築が必要な場合に表示が消える場合がある不具合の修正 ●その他 ・MD2~MD5,SHA1~SHA512、CRC32を計算する関数を追加 Ver.11.0.2.0 ●一括で名前の変更コマンド(FileRenameEx.exe) ・検索/置換テキストを、それぞれ3つに増やした ・ファイル名生成処理の順番を入れ替え、検索/置換を先頭で行うように変更 ●サムネイル ・画像を1個ずつ生成していたのを、まとめて100個ずつ生成するようにして高速化 ・サムネイル⇔アイコン表示の切替でメモリを開放していなかった不具合の修正(タブを閉じると解放される) ●その他 ・小分けになっていたフィルタの判定処理をまとめた Ver.11.0.0.0 ●アンドゥ/リドゥ改善 ・確認メッセージを表示している場合、メッセージ内にどのような操作を行うか補助テキストを追加 ●スマートペースト機能の追加 ・テキストや画像のデータを貼り付けた場合、そのテキストのファイルやPNGファイルを生成する機能を追加 ・オプションにスマートペースト機能を無効にする設定を追加 ・設定可能な確認メッセージを追加 ●「ユーザー」ディレクトリの扱いの変更 ・ユーザーディレクトリの場合、リダイレクトして一般のディレクトリとして扱うように変更 ※デスクトップからユーザーフォルダーに潜った場合も、上位階層への移動先はデスクトップではなくC:\Usersになります ※パス表記が「ユーザー名」から「ユーザーID」の実体表記になります ●インサイドツリーを追加(リストと1対1で紐づくフォルダーバー) ・メインメニューに表示切替コマンドを追加 ・メニュー定義にたくさん追加 ・リスト上に表示切替ボタンを配置した ・オプションのリストの初期表示にインサイドツリーの表示設定を追加 ・表示モード設定でインサイドツリーの表示の指定を追加 ●サムネイル表示用の画像の一本化 ・Ctrl+ホイール、アイコンサイズを大きく/小さくコマンドで、サムネイルの画像サイズを16~400ピクセルの任意のサイズに変更できるようにした ・各タブごとにサムネイル画像サイズを保持できるようにした ・オプションにサムネイル画像の原版サイズの設定を追加 ・「縮小版」が「縮小画像」混在していたので「サムネイル」に統一した(リソース、メニュー定義ファイル等) ・表示モードのメニュー定義ファイルを抜本的に見直した ・アイコンを小さく/大きくコマンドをメインフレームから子ウィンドウに変更してメニュー定義からアクセスできるように変更 ・アイコンを小さく/大きくコマンドのホイールの回転方向をエクスプローラーに合わせて逆にした ・サムネイルのテキストは原画サイズを256に固定して表示サイズの部分のみを切り取って表示するようにした(表示サイズの方が大き場合は拡大) ●ローカルサムネイルキャッシュ作成コマンド(CreateLocalTumb.exe) ・大/中/小サイズの指定を削除 ・サブフォルダを対象にする動作モードの追加 ・不要になったローカルサムネイルキャッシュの自動削除モードの追加 ●バージョン情報(VersionInfo.exe) ・CPUのファミリーネームを表示を追加 ・SIMD拡張命令のサポート状況を追加 ●epubファイル対応(ArcUnPack.exe,MArc.exe) ※拡張子の関連付けは相応しくないので書庫閲覧と解凍機能のみの対応 ・展開コマンドでZipファイルとして認識させるように追加 ・圧縮ファイルビューアでの閲覧対象に追加 ・配布用のViewer.txtの圧縮ファイルビューアの対象拡張子にepub,nar,xpi(7z系)、ar,xz(tar系)を追加 ●セキュリティ対策 ・ファイルにドロップでフォルダ作成モードの場合に生成するフォルダ名を決定するロジックを修正 ・外部からスクリプトの実行を指示された時に表示する確認メッセージを追加 ●追加コマンド ・テキストの中身をコピーするコマンドを追加(複数選択している場合は先頭のファイルのみ対象) ・画面の分割方向を変えるコマンドをメインメニューに追加 ・ドッキングウィンドウを全て閉じる/復元コマンドを追加 ・.で始まるアイテムの表示を切り替えるコマンドを追加 ・ローカルサムネイルキャッシュファイルの表示を切り替えるコマンドを追加  (SAMBA採用のNAS等の隠し属性が付与できない環境用で、名称の先頭4文字が「~asr」であるかで判断する) ・ユーザー定義バーに「開く」コマンドを追加(標準動作という扱いの「開く」でマウスクリックと等価) ・メインメニューの編集に「やり直し」を追加 ●その他 ・カスタマイズ/機能一覧の「初期メニューに無いコマンド」を解体して、再構成しなおした ・機能一覧画面のレイアウトを微調整 ・ツールバーに置けるスクリプトコマンドを20→50個に増やした ・共有コマンドを編集→ツールへ移動 ・フォルダーのカスタマイズコマンドをファイル→ツールへ移動 ・誤字修正多数 ・AVX2使用版の追加 ●不具合修正 ・並べて表示で、アイコン小のときにレイアウトが崩れる不具合を修正 ・ユーザー用のコマンドディレクトリに、いつの間にかコマンドラインのテストコマンドが混じっていたので削除 (検証のためにコマンドライン引数をポップアップ表示するコマンドです) ・Asrload.exeに/searchスイッチを追加 /////////////////////////////////////////////////////////////////////////////////// // Ver.10.x系 /////////////////////////////////////////////////////////////////////////////////// Ver.10.6.9.0 ・誤字の修正 ・回りくどい説明表記を修正 Ver.10.6.8.0 ・悪意を込めたファイル名をスクリプトに渡した場合に想定外の動作をする可能性がある不具合の修正 Ver.10.6.7.0 ・各種のヘルプ等のURLをすべてHTTPSに変更 Ver.10.6.6.0 ●不具合修正 ・チェックボックスが非表示の状態で、チェックを付与できる場合がある不具合を修正した ・スコープが間違っていて外部コマンドがビルドできない状態になっていたのを修正 ●インサイドツリー(仮名) ・スプリッタを動かして初期幅を覚えるようにした ・新しく開いた時に表示できる仕組みを追加 Ver.10.6.5.0 ●フォルダーバーの部品化 ・サブクラス用プロシージャを整理 ・スタティックのデフォルトプロシージャの管理方法を修正 ●タブ内のコントロール制御を拡張 ・リストのサイズ制御で冗長な箇所があったのでまとめた ・スプリッタ制御を追加 ・インサイドツリーの表示切替コマンドを追加(ID:33359、プロトタイプ実装につき低機能) ●スクリプト ・SetClipboardTextコマンド追加 指定されたテキストをクリップボードにコピーする 【書式】 SetClipboardText=文字列 【例】 クリップボードのテキストをSQLと見なして整形してくれるツール「SQLFix」の前処理として、\t,\r,\nを半角スペースに置換してクリップボードにセットしなおすサンプル ※「SQLFix」はnagavさんが公開されているソフトです。(http://hp.vector.co.jp/authors/VA033418/) var $text$ = GetClipboardText var $a$ $text$ = Replace,\t, ,$text$ $text$ = Replace,\r, ,$text$ $text$ = Replace,\n, ,$text$ SetClipboardText=$text$ CommandlineOption= OpenMode=0 MultiCommandMode=0 ShiftSilentMode=0 BootDir=1 BootMode=0 Run=(インストール先のフルパス)\SQLFix.exe Ver.10.6.4.0 ●タブバー ・ドライブアイコンを使用する場合に、ドライブレターの描画に影をつけて見やすくした ・アクティブタブのテキストに影をつけて視認性を向上 ●サムネイル時のオーバーレイアイコン ・サイズを見て余裕があれば大きい画像を使用するように変更 ・描画の分岐ロジックを見直した ●ハードウェアの安全な取り外しコマンドを配布書庫に追加(RmHardware.exe) ※マイナーアップデート時にはメニューやキー割り当ての一覧には追加しないのでexeを直接起動してください ●オプション(Option.exe) ・機能一覧画面に説明テキストの表示を追加 ●フォルダーバーの部品化 ・リネーム、アンドゥ、更新、次のウィンドウコマンドをフォルダーバーからツリーコンポーネントへ移動 ・WM_TIMER、WM_SYSKEYDOWN、WM_KEYDOWNのメッセージイベントをフォルダーバーからツリーコンポーネントへ移動 ・更新の描画速度を改善 ・あちこち処理効率が悪い状態になっていたので全体的に見直した ※タブ内に置いてみたが、全部のツリーの動作が遅くなって使い物にならない ●その他 ・Office2007(黒)のテーマ適用時の配色を調整した ・ナビゲートロックされている場合「画面分割」「パスを入れ替え」「アクティブパスに揃える」は動作しないように変更 ・画面分割されていない場合「パスを入れ替え」「アクティブパスに揃える」は動作しないように変更 ・画面分割コマンドは同期処理を行うようにして、ビジーの場合にはコンポーネントに自殺を命じてリトライしないように変更 ・画面分割方向を一時的に変えるコマンドを追加(ID:48103) ※ナビゲートロックされている場合は動作しませんし、非分割状態では画面の変化はありません ●不具合修正 ・「タブ切り替えと連動」がOFFでも切り替えていた不具合の修正 ・大量にファイルを選択してスクリプト実行を行った場合の警告表示で「今後このメッセージを表示しない」が押せない不具合の修正 Ver.10.6.0.0 ●フォルダーバーの部品化 ・コンポーネント内のメッセージクラッカーを追加 ・コピー、切り取り、張り付け、プロパティ表示機能をフォルダーバーからツリーコンポーネントへ移動 ・フォルダーバー内で使用している関数を統合して数を減らした ●不具合修正 ・サムネイル表示時に画像を持っていないアイテムをリネームすると異なる画像が表示される不具合の修正 ・アイコンなしモードの場合にも描画を試みていた不具合の修正 ・オーバーレイアイコンのインデックスをchar→shortに戻した ・すでに分割されたタブが存在する場合に画面分割方向の設定を変えると、ビューを参照したタイミングで落ちる不具合の修正  (次回の分割から適用→新しく開いたタブから適用に変更) ・複製の作成コマンドで連番の数字が不適切な値になることがある不具合を修正 Ver.10.5.8.0 ●縮小版の描画 ・拡縮描画の速度を改善 ・縮小画像を持たないアイテムや画像取得しないアイテムの画像生成をやめ、アイコン番号を取得してシェルイメージリストを用いて描画するように変更 ※省メモリ化と高速化のメリットがあるが、デメリットとして画像以外の表示サイズが最大で48×48になる ・アイコン(画像なし)、テキスト(拡縮小なし、ピープホール)、画像(拡縮小あり)の分岐の仕組みを実装 ・ローカルサムネイルでサムネイル画像フラグをセットするように変更 ・ローカルサムネイルび新しい書式の辞書ファイルの読み込みを追加(性能検証用) ●ローカルサムネイルキャッシュ作成コマンド ※アイコン交じりのフォルダなら差異は出ますが、表示の変化が気にならないなら再生成する必要はありません ・縮小画像を持たないファイルは出力しないようにした ・メモリリークしていたのを修正 ・画像生成の無駄を省いて生成速度を向上 ・ファイルがロックされていてサムネイル生成に失敗した場合、インデックスの番号がずれる不具合の修正 ・内蔵のテキスト展開エンジンによって画像を生成する仕組みを追加(性能検証用) ●その他 ・アイコンの上にチェックボックスを重ね描画する場合のフラグセット処理を改善 ・MDIモードでウィンドウを最大化すると、最小化していたタブのチラつきが発生していた現象を抑制した ※タイトルバーの最大化ボタンを押した場合はシステムに制御が渡っているので未対処です Ver.10.5.4.0 ●ローカルサムネイルキャッシュがあるディレクトリの場合の不具合修正 ・画像フラグがセットされていなくて表示できない不具合を修正 ・ダミーのイメージリストではなく、実体のイメージリストを紐づけていた不具合の修正 Ver.10.5.3.0 ●CImageListを拡張して拡大縮小できるようにした ・サイズ/時刻比較のオーバーレイアイコン表示に適用 ・サムネイル画像の表示に適用 ・縮小画像表示時のドラッグヘルパーも拡大縮小に適用 ●不具合修正 ・選択アイテムと同じ拡張子を選択コマンドが正しく動作していなかった不具合の修正 ・フォルダサイズ計算のプログレス表示が不正になるパターンがあった不具合の修正 ●内部データ構造の変更 ・選択アイテムを走査する処理の一部をMFCからSTLのコンテナに置き換えた ・走査の際の縮小画像の初期化が冗長になっていたのを整理 ・オーバーレイアイコンのインデックスをshort→charに変更してファイル1個当たり1バイト節約 ・自前で生成した縮小画像か否か、テキストの縮小画像か否かのフラグを追加(既存フラグの空きビットを使用) ・縮小画像のイメージリストと、リストに紐付けるイメージリストを分離した Ver.10.4.7.0 ●AsrLoad.exe ・終端の\記号がメタ文字のエスケープとして扱われるので「"」は全て除去するように変更 ●その他 ・aniのアイコンの取得速度を向上 ・個別のアイコン画像の取得順を、存在確率に合わせた順番に変更して速度を向上 ・拡張子/アイコンのインデックスにANIを追加 ・x86版のコンパイラオプションをサイズ優先から速度優先に変更 Ver.10.4.6.0 ●詳細一覧の改修 ・表示速度の改善 ・仮想オブジェクトは日付欄に[System]と表示するように変更 ・マイコンピュータの場合、サイズ欄に空き容量とサイズグラフを表示するように変更 ●その他 ・ダークモードにあわせて、Offce2007(黒)の補完色の輝度を下げた ・Windows10に合わないのでタブバーの背景のグラデーションをやめた ・今時256色環境なんてないので、アプリケーションアイコンに24bit色のアイコン画像を追加 ・外部コマンドの実行後の後処理の動作を改善 ・CUR,SCR,LNKのアイコンの取得速度を向上 ●不具合修正 ・Windows10でOSがダークモードになっていると、フォルダーバーのスクロールバーなどが黒くなるので、強制的にクラッシクスタイルを適用するように変更 ・共通のフォルダ指定ダイアログのメッセージが文字化けしている不具合の修正 ●ICO,EXE,CUR,SCR,LNK以外の拡張子/アイコンのインデックスを作成して、アイコンインデックスをオンメモリで求める仕組みを実装 ※ディスクアクセスが減少して表示性能が大幅に向上しますが、仕様満足度の確認のため当面は隠し機能 [HKEY_CURRENT_USER\Software\AMA_Soft\ASR\Main001\ListDraw] "UseCache_IconIdx"=dword:00000001(デフォルトは0でOFF) Ver.10.4.3.0 ●ソート順を管理する処理の作り直し ・仮想フォルダーのソート種別を覚えるようになった ・仮想フォルダーの昇降順を覚えるようになった ※仮想フォルダーは、ごみ箱、マイコンピュータ、ユーザーディレクトリ、その他の4種類に分類します ●リスト描画 ・マイコンピュータで詳細モードで空き容量に使用割合のサイズグラフ(使用率の百分率)を表示するようにした ・マイコンピュータでコンテンツモードで2行以上の場合に使用割合のサイズグラフを表示するようにした ・コンテンツモードで2行以上の場合のレイアウトを調整 ・サイズグラフのグラデーションの色を背景色から、格子色に固定した ●仕様変更 ・本体の機能を使ってディレクトリを作成する際に、フルパスで255文字以上のパスは作れないように変更した ※外部のソフトやウィルススキャンソフトが問題を起こすことが多いため ●その他 ・スクリプトの大小比較のif文の数字か否かの判定処理を厳密なものに修正 ※先頭のみ+/-の符号を許可、半角数字のみ数値と見なすようにした ●不具合修正 ・同一グループ内に同じパスのタブが存在していたら閉じるがONで、ナビゲートロックかかった状態で更新して閉じようとする不具合を修正 ・表示モード設定で全てのタブを対象にした場合、仮想フォルダのタブも変更してしまいソート順が不定(名前順の扱い)になる不具合の修正 Ver.10.3.9.0 ●テキスト文字コード変換コマンド(ChgTxtFmt.exe) ・レイアウトを調整 ・文字コード判別は日本語を最優先で判定するように変更 ※日本語SJIS/EUC/UTF8の検出精度は向上したが、かなり遅いので他への適用は保留 ●表示のON/OFFが切り替えられるメッセージ ・メッセージボックスからTaskDialogに変更 ・全てのメッセージを対象に画面内から非表示に設定できるようにした ・オプションの場所を示すメッセージ定義を「今後このメッセージを表示しない」に変更した(流用) ●高DPI環境対応 ・本体のダイアログのレイアウトを大量に調整 ・オプションのレイアウトを大量に調整 ●その他 ・タブバーで「同一グループに同じパスのタブが存在していたら閉じる」がONの場合に「ここから開く」が全く機能しないので初回ナビゲーションは無視するように変更した ・オプションのバージョンチェックの画面にプライバシーポリシーに関する文言を追記 ●スクリプト ・if文の大小比較で、両辺とも半角数字のみであれば数値として比較をするように変更した ※数字とみなす判定方法は暫定仕様です ●不具合修正 ・MDIモードの場合、画面分割直後の幅調整が効かない不具合の修正 ・分割モードで「更新コマンド実行時は両方を対象にする」がONの場合にアドレスバーの更新ボタンには適用されないのを修正 ・スクリプトのGetTabIndexで分割しているタブのパスの両方をカウントしていた不具合の修正 Ver.10.3.0.0 ●プレビューバー ・IStreamのインターフェイスがあって初期化でエラーになるファイルの場合に落ちる不具合の修正 ・内部テキストエンジンでUTF16(BE)を表示できるようにした ・UTF16(LE)の場合の描画改善 ・文字コード判別/変換で検出精度の向上が効いていなかったのを修正(気休め程度) ●縮小版 ・内部テキストエンジンでUTF16(BE)を表示できるようにした ・UTF16(LE)の場合の描画改善 ・文字コード判別/変換で検出精度の向上が効いていなかったのを修正(気休め程度) ●画面分割モードのサイズ/日付比較の描画 ・サイズの大小、日付の新旧のオーバーレイアイコンをアイコンサイズとスケーリングに合わせて拡大描画するようにした Ver.10.2.8.0 ●オプション ・フィルタ/ディレクトリ内検索/タグ検索の絞り込みテキストで、AND/OR/NOTが使用できる拡張構文を使用する設定を追加 ●高DPI環境向けの対応 ・高DPI対応アプリケーションとしての宣言を追加 ・アイコンサイズ小~大の描画サイズをスケーリング補正するように修正 ・シェルのオーバーレイアイコンの座標をスケーリング補正するように修正 ・アイコン、アイコンのみ、並べて表示の描画をスケーリング補正するように修正 ・テキスト幅の自動調整の計算式をスケーリング補正するように修正 ●バージョン情報(VersionInfo.exe) ・高DPI対応アプリケーションとしての宣言を追加 ・サポート連絡用の必須情報にDPI、スクリーンサイズを追加 ・今まで使ったことがないので全情報のコピーボタンを削除 ・メインメニューにあるので最新バージョンの確認機能を削除 ●終了時スクリプト ・前回のタブ情報を展開する処理の省メモリ化と、若干の高速化 ・終了時アクティブの情報の保存処理を追加 ・アクティブタブの指定の復元動作を追加 ※アクティブになるまで走査しないオプションがONでもフレームワークが作る1タブ目は走査してしまうので改善の余地有り ●タグ入力ダイアログ ・タグ入力ダイアログのタブオーダーを修正 ・タグ入力ダイアログのレイアウトを微調整 ・新規作成時の色は、前回保存時の値を使用するように変更 ・選択数と処理番号を表示するように変更 ・「以降の全てに適用する」はキャンセルボタンも対象にするように変更(メインフレーム) ・「以降の全てに適用する」はキャンセルボタンも対象にするように変更(タブ情報) ●アップデートツール ・各種定義ファイルの上書き確認のファイル参照を、エディットボックス2個からリストビューで並べて表示するように変更 ・差分のある行を色塗りするようにした ●スクリプト ・FileAllRead/FileReadで読み込んだテキストデータを変数を展開しないで格納するように変更 ※変数の利用時に展開するので動作は変わらない認識です ・クリップボードのテキストを取得するGetClipboardTextコマンドを追加 ●その他 ・FindFirstChangeNotification系の自動更新通知(現在は未使用)の停止レスポンスを向上 ●不具合修正 ・自動更新を監視しているフォルダーを外部から消された場合にCPU使用率が上がる不具合を修正 Ver.10.2.0.0 ●スクリプト仕様の追加と変更 ・if文の論理式の評価を関数化した ・do/while/continue/breakによる繰り返し構文を追加 ・varコマンドで配列の宣言の仕様を追加 ・varコマンドで連想配列の宣言の仕様を追加 ・変数の置換を再帰展開するように変更(最大10回) ・for/next、do/whileのループ外で、continue,breakが出現したらエラーになるように変更 ●タグ入力ダイアログ ・タグ入力ダイアログをサイズ可変に変更 ・対象ファイルの表示をディスエブルからReadOnlyに変更 ・対象ファイルの表示を複数行表示に変更(ダイアログサイズを変更すると自動調整する) ●テキスト文字コード変換コマンド ・複数選択可能にし、一括でコード訂正できるようにした ・全て選択ボタンを追加 ・改行コードの変更は文字種によって信頼性が低下するので封印した ・文字コード検出の優先コードページをSJISからシステムのデフォルトコードページに変更 ・テキスト文字コード変換の検証として、As/R本体のソースコードを全てUNICODEに変換した ●文字コード判別エンジン ・OSのエンジンが頻繁に間違えるので、前処理でUTF8/16/32のBOM判定をするようにした ※本体プレビュー/サムネイル、テキスト文字コード変換コマンド、テキストビューアに影響 ●不具合修正 ・設定でツールバーアイコンのサイズを大きくした場合、リスト下部のボタン幅とエリア高さの計算が不正になる不具合の修正 Ver.10.1.3.0 ●不具合修正 ・ウィンドウ管理バーのツールバーから表示させたメニューのチェック項目が、タブバーの状態をになっていた不具合の修正 ・次のウィンドウ(Zオーダー順)と、前のウィンドウ(Zオーダー順)が逆になっているのを修正 ※IDはそのままで、機能名と説明を入れ替えた ・最大化状態で起動した場合、ボタンサイズの計算前にタブバーが描画されていたのを修正 ・一部のリストの画面遷移で無条件で監視スレッドを止めていた不具合の修正 ●外的要因の不具合への対処 ・特定の拡張子のみ簡易アイコンモードにする設定を追加 ・マイコンピュータの自動更新を動作させない設定を追加 ・ごみ箱の自動更新を動作させない設定を追加 ●仮想フォルダーの自動更新の仕様変更 ・マイコンピュータ  ネットワークドライブが存在し、ドメインのネームサーバーが不安定な場合に断続的に全更新の通知が発生することがあるので無視するようにした ・ごみ箱  OSに対して不適切な通知を行い続けるソフトがインストールされている環境対策として、全更新の通知を無視するようにした ●その他 ・タブバーのツールバー制御だけ他のバーと異なっていたのを修正、また非表示設定の場合にサイズ0にしていたので非表示に変更した Ver.10.1.0.0 ●高解像度ディスプレイ対応の強化と描画の最適化 ※従来のタブ数は160~170個で1プロセスあたりのGDIリソースの上限に達するため、GDI上限の95%に達すると安全装置としてエラーを出していた  今回の実装で1タブあたりの使用GDIハンドルの数を減らした(43→11)  また高解像度ディスプレイ対応の一環として、フォントサイズが12ポイント以上の場合にサイズ拡大も実装したので2D描画が弱い環境だと若干描画がもたつく ・タブバーとリストにある、全てのボタンをオーナードローに変更 ・ホバー状態をコールバックで通知する仕組みを追加 ・「ボタン押下」を自前で描画して、全てのボタンの「ボタン押下画像」を使わないように変更した ・ボタンサイズから計算して、ボタンがに対して画像が小さすぎる場合は拡大するようにした  (デフォルトの画像サイズが16×16、12ポイントのフォント指定でボタンサイズが28×28となり差が12pixを超えると拡大する) ・どうやっても1プロセスあたりのGDIリソースの上限値に達しなくなったのでエラー判定を削除した ・MDIの限界数を超えた場合にフレームワーク内でリソースリークや、各種スレッドの起動失敗が多発するようになるので、余裕をもってタブ数が200個を超えたらエラーになるようにした ・GDIの上限に達したエラーメッセージを、タブ数の上限に達した旨へと変更した ・「進む」/「戻る」/「上へ」の長押しできるボタンの描画を調整 ・デザイン的に浮いていた並び順のボタンを自前で描画に変更 ●その他 ・監視スレッドの内部エラーで終了する際に、監視モード切替ボタンの画像を変更する処理を追加 ・ボタン画像の切替が速くなったので、監視モードのボタンをリアルタイムで切り替えるように変更 ・アドレスバーの手入力で/を\に置き換える処理を追加(ftp://、http://、https://、:、;で始まるフォルダは除外) ・フォントのDPI計算で生成フォントは使い捨てにして丸め誤差が出ないようにした ・タブに画像を貼れることを周知するため、配布書庫にスキンサンプルを同梱するようにした ●オプション(キー割り当て) ・IDの手入力欄を追加 ・手入力欄から検索する機能を追加 ・逆引き用に全機能一覧のヘルプページを開くボタンを追加 ●タグ ・フォルダーにタグを付けた場合、タブバーとウィンドウ管理バーにタグ色のラベルを描画するようにした ●MDIモード ・ウィンドウを極端に小さくした時にフォームビューのスクロールバーが表示されないようにした ・新規で開いた時のウィンドウサイズをメインウィンドウのサイズ依存となるように変更した ●文言修正 ・各表示モードの説明テキストを修正した ●プレビューバー ・選択が外れた場合に表示を消すように変更 ●不具合修正 ・設定とマウス座標の組み合わせによって、埋め込みリネームが発動する可能性がある不具合の修正 ・プレビューハンドラの成否判定の結果の値が不正で、組み込みのテキストプレビューができなくなっていた不具合の修正 ・上位階層へ移動がナビゲートロックで阻害された場合も走査スレッドの停止を試みていたのをやめた ●プレビューバーの試験実装  環境によってOfficeドキュメントも閲覧できる内蔵ビューアとしての活用法の検証です。 ・プレビューバーの表示のトリガーの設定 [HKEY_CURRENT_USER\Software\AMA_Soft\ASR\Main001\PreView] "EventType"=dword:00000000 0:リスト上での選択で表示 1:マウスオーバーで表示(予約) 2:スクリプト(ExRun=PreviewBar)やコマンド(ID:33321)で表示 ※トリガー2かつ、プレビューバーが表示されていないと動作しません ・プレビューバーで閲覧コマンドを追加(ID:33321)、キー割り当て可にした ・スクリプトのExRunコマンドで「PreviewBar」が指定してあると、拡張子判別でプレビューバーで表示する機能を追加 例) Filter=html,cshtml,mp4,vbs,sql,pdf,xlsx,docx ExRun=PreviewBar Ver.10.0.0.0 ●メインメニューに追加 ・タグを付けるコマンドを追加 ・タグを削除コマンドを追加 ・タグ情報コマンドを追加 ・リンク切れタグの削除コマンドを追加 ・最新バージョンの確認を追加 ●オプションの再配置と新しい設定項目の追加 ○リスト→動作 ・散らばっていたナビゲートロックの動作をまとめた  バー→タブ共通→「ロック時にナビゲート依頼が来ると、新しく開く」をこちらに移動 ※「ナビゲートロック状態で新たにナビゲート依頼があると「新しいタブで開く」」に文言と初期値を変更 ・「起動時にタグを読み込む」を削除 ○リスト→マウスを、選択クリック/空欄クリック/ホイールに3分割 ・リスト→マウス、「空き領域を左クリックして実行するスクリプト」を移動 ・リスト→マウス、「空き領域を左ダブルクリックして実行するスクリプト」を移動 ・空き領域を中クリックして実行するスクリプトを追加 ・空き領域を中ダブルクリックして実行するスクリプトを追加 ・隠し機能だったホイール関連の設定を画面から設定できるようにした ○リスト→分割(新規追加) ・リスト→動作、「2画面分割は横方向にする」を移動 ・「更新コマンド実行時は、両方の一覧を対象にする」を追加 ・「上下階層移動を同期する」の初期値を追加 ・「フォーカス移動を同期する」の初期値を追加 ・「サイズ/日付比較を行う」の初期値を追加 ○バー→タブ共通 ・「同一グループに同じパスのタブが存在していたら閉じる」を追加 ●初期値の変更 ・コマンドモード/インクリメンタルサーチモードのCtrl+F5に全てのタブを更新コマンドを割り当てた ・コマンドモード/インクリメンタルサーチモードのCtrl+Iにタグ情報を割り当てた ・コマンドモード/インクリメンタルサーチモードのCtrl+Oにタグを付けるを割り当てた ・コマンドモードモードの@にオプションを割り当てた ・外観の初期状態の配色で、アクティブ背景色を有効に変更 ●リソースへの追加(キー割り当て等に追加される) ・全てのタブを更新コマンドの追加(ID:33320) ・シフトロック範囲選択の開始コマンドを追加(ID:35629)  (シングルクリック2回で範囲選択を行うモード) ●スクリプトの追加コマンド ・Left追加 ・Right追加 ・Find追加 ・Replace追加 ・Csv追加 ・AppendCsvSelectItem追加 ・FileReadを追加 ・SpeachFlag追加 ・SpeachVolume追加 ・SpeachRateSpeed追加 ・FileAllReadを追加 ●スクリプトの削除コマンド ・互換性がなくなったのでタグ操作関連の隠し機能を全て削除した ・試作品のFileCreateOpenが残っていたので削除 ●その他 ・exe,lnkファイルのアイコン画像取得で試行回数を減らして速度を改善 ・詳細表示設定ダイアログでF1押下でヘルプページへ飛ぶようにした ・配列をファイルに保存するクラスを作成して以下に適用(1行ずつ書き込むのではなく、大バッファでまとめて書き込む)  タグの保存  最近閉じたタブの保存  ユーザー定義バーのアイコンインデックスキャッシュ保存  復元スクリプトの保存  終了時のタブの保存 ・フィルタテキストの入力時のチラつきを減らした ・風車アニメーション制御のチラつきを減らした ・アイコンモードの埋め込みリネームの発動を止める処理を追加 ●高解像度環境への対応 ・仮想フォルダーかつ、詳細表示の場合のカラム幅を広くした ・タブバー上のボタンの計算元を大きいサイズを使用する設定ではなく、フォントサイズに変更 ●不具合修正 ・ITEMIDLIST→文字列変換時のメモリ解放で、並列度が高くなると解放をし忘れる現象への対処 ※規則性が不明だがWindows updateの適用状況/Windowsのバージョンに影響を受けているように見える ・FAT16/32の環境でFATを直接書き換えてイレギュラーなファイル名を作成した場合に落ちる不具合の修正 ※ドライブごとOSから認識されなくなる可能性があるので検証は自重ください ・ステータスエリアの表示モードを示すアイコンが切り替わらない操作がある不具合の修正 /////////////////////////////////////////////////////////////////////////////////// // Ver.9.x系 /////////////////////////////////////////////////////////////////////////////////// Ver.9.7.6.0 ●不具合修正 ・サイズ0のファイルをプレビューハンドラでプレビューすると落ちたり不安定になる不具合を修正 ・コマンド定義ファイル編集画面の誤字修正と、曖昧な表現の修正 Ver.9.7.5.0 ●スクリプト追加 ・GetTabPathコマンドを追加 ・PostMessageTabコマンドを追加 ・GetTabIndexコマンドを追加 ●不具合修正 ・アイコンモードで、先頭のアイテムだけマウスクリックによる埋め込み編集のリネームが発動しない不具合の修正 ●オプション ・リスト上のマウスボタン割り当て可能なスクリプトのID範囲に40001~40010を追加(エディタで開く等) ●Ver.10に向けた準備 ・画面分割時に「更新」/「選択状態を保持したまま更新」コマンドの実行時に、両方に対して更新する動作を実装 ・画面分割時の3種の動作モードの初期値の動作を実装 ・全てのタブを更新コマンドの追加(ID:33320) ・空欄を中クリック/中ダブルクリック時に実行するスクリプトの実装 [HKEY_CURRENT_USER\Software\AMA_Soft\ASR\Main001\ListMouse] "SpaceMClk"=""(初期値空白) "SpaceMDblClk"=""(初期値空白) ※ユーザー情報の管理ディレクトリの下のScriptディレクトリに存在するスクリプトであること Ver.9.7.2.0 ●スクリプト追加 レジストリを直接制御して、ほとんどの設定を読み書きできるようにした ・WriteRegNum、WriteRegString、LoadSettingの仕様公開 ・レジストリ操作系のスクリプトコマンドに対する保護を追加 ・WriteRegNumの数値指定で16進数を可能にした ・ReadRegNum追加 ・ReadRegString追加 ●その他 ・スクリプトのラベル管理で、行番号を文字列にして処理していたのを整数に修正 ・不要になった旧来の詳細情報/アイコン取得スレッドの中断の仕組みと、死活監視の機能を全て削除 ・コマンド定義ファイルの読み込み/展開をモダンな記述で作り直した ・タグ情報の絞込み/検索の仕組みを追加 ・タグに属性情報を追加 ・リストの更新インデックスの生成処理を高速化(1000万ファイルの列挙で0.01秒程度の改善) ・シングルクリック範囲選択コマンドを追加  ID:35629でコマンド発行後、左クリックしたアイテム~フォーカスアイテムを選択する  空欄シングルクリック(タブレット機用)や、中ボタン(だらだらマウスのみで操作したい自宅用)などに割り当てられることを想定 ●不具合修正 ・詳細情報の取得でタイムアウトした場合に、諦めないでチャレンジし続ける場合がある不具合の修正 ・走査中断したメッセージを上書きしてしまい読めない不具合の修正 ・アイコンモードで必要としないファイルの詳細情報(簡易版)を取得していたので削除 ・詳細情報取得スレッドで取得カラムの数がUIスレッドで変更された時に落ちる不具合を修正 ●隠し機能の不具合修正 ・例外動作を数箇所修正 Ver.9.6.7.0 ●不具合修正 ・アイコン(タイル流用版)のクリック判定座標がずれていたのを修正 Ver.9.6.6.0 ●性能向上 ・タイル系のShift+マウスクリックでの範囲選択操作を高速化 ●アイコン(タイル流用版)でドラッグによる範囲選択を改善しようとして挫折した残骸 ・検証用のログ出力を大量に追加 ・検証用の矩形範囲の描画を追加 ※長期課題に切り替えますのでドラッグによる範囲選択を必要な場合は、IDが32908のアイコン(旧)モードをご利用ください ●不具合修正 ・アイコン(タイル流用版)でマウスで埋め込みリネームができない場合がある不具合の修正 ・アイコンのみ(タイル流用版)で、どうやってもマウスで埋め込みリネームができない不具合の修正 ・アイコンのみ(旧)で、どうやってもマウスで埋め込みリネームができない不具合の修正 ・タイル系の表示モードでShift+マウスクリックで1000個以上選択しようとすると機能制限のメッセージが表示されていたのを削除 ●隠し機能 ・ナビゲーション時に同じグループ内に同一パスのタブが存在していると自動的に閉じる機能を追加 ※有用度が不明につき内輪での検証用 ・テキスト表示幅を0にすることで、高さ/幅を自動調整するモードを追加 ※「並べて表示」モードでドラッグによる範囲選択可能になりますが、サイズグラフのスケールが不正確でタグテキストの表示が潰れる Ver.9.6.3.0 ●表示性能の改善 ・更新用のインデックスが空の場合に呼び出さないようにして、安全装置の空フラグを削除 ・一覧の全削除の際に例外ハンドラを呼ばないメソッドに置き換えて高速化 ・各種設定ファイルやスクリプトの読み込みで改行やBOMの処理を一元化、不要な除去処理を精査して速度を向上させた ・アイコン取得が完了してUIスレッドに送る通知を、キューに積めるようにした(安定性とキャンセルのレスポンスの向上) ●環境によって運用しづらいと報告があった項目 ・外部プロセス起動のタイムアウト値を10秒から20秒へ変更 ●分かりにくいとの意見があった項目 ・タグ情報をツールチップに出す場合に改行を入れた ●不具合修正 ・ドライブ切り替えコマンドで、移動履歴の無いドライブに移動できなくなっていた不具合の修正 ●ウィルススキャンソフトによるリアルタイムスキャンでアイコン画像の取得が遅い環境向けの対策 ・アイコン/詳細情報取得のスレッドプールのキャンセル処理で、APIの終了を待たないで自壊する仕組みを実装 ※応答性能は向上してますがバックグラウンドでAPIの終了を待っているので、アプリの終了/タブのクローズ/画面分割などで遅延が発生する場合があります Ver.9.6.0.0 ●表示モード依存の設定画面 ・モード順に並び替えた ・アイコンモードのテキスト最低幅の追加 ・アイコンモードの表示行の追加 ●分かりにくいとの意見があった項目 ・走査中に中断した場合にあらゆる情報の取得をやめていた、ファイル名などの最低限の情報を取得してから応答を返すように変更した ・ユーザー定義バーにドロップした際にチュートリアルメッセージを追加 ※従来のユーザーさんは「上級者向けの設定」ボタンでも解除可能です ●C++11/14機能の適用 ※言語仕様のレベルで無駄なコピーコンストラクタが呼ばれるのを抑制する改善ですが、1つの改善につきナノ秒単位の差しかありません  適用可能箇所は大量に存在しますが、何度も呼ばれる処理を中心に対処してチリが積もることを期待しています ・STLのpush_backを全てemplace_backに置き換えた ■CSringArray→vector ・カンマ区切りなどトークン分割する処理の高速化と省メモリ化 ・更新キューの最適化処理と、キュー管理を改善 ・ユーザー定義バーへの一括登録の際のlnkファイル判定処理が冗長だったので整理した ・ドライブ切り替えメニューのテキスト生成処理の高速化と省メモリ化 ・拡張子色分けの展開/比較処理の高速化 ・ワイルドカードによる一致判定処理の高速化 ・ウィンドウ制御文字列の展開処理の高速化 ・詳細カラムの幅と表示有無を管理する配列の高速化 ・最近閉じたタブの設定ファイルの読み込み処理の高速化 ・詳細表示のカラム配列を管理する配列の高速化 ・シェルでの削除のアイテムを管理する配列の高速化 ・コードページを管理する配列 ・コード名を管理する配列 ■CMap→unordered_map ・ScriptTrace.exeへ送る行番号とファイル位置のポインタを置き換えた ・ユーザー定義バーのアイコンインデックスを置き換えた ・ドライブレター/カレントディレクトリ(ドライブ切り替え用)を置き換えた ・メッセージID/メッセージ文言を置き換えた ・タグの情報を置き換えて拡張用のメンバーを追加した ・コードページ/コード名を削除 ●不具合修正 ・表示モード設定ダイアログで表示モードを切り替えても、表示モードボタンの画像が切り替わらない不具合の修正 ・リストの表示上限/キャンセルした場合にステータスメッセージが表示されない場合がある不具合の修正 ●ダブルバッファリングモードの修正(動作が不安定なので当面は非公開) ・移動のキャンセル後に更新をかけると、キャンセルした移動先を表示してしまう不具合の修正 ・キャンセルした際にフォーカスを見失う不具合の修正 ●その他 ・大型アップデート用にメッセージIDを確保 Ver.9.5.0.0 ●「アイコン」「アイコンのみ」表示モードの再構築 ・本体やオプションなど、あちこちにあったアイコンモードの機能制限警告を削除 ・タイル表示を流用した独自描画の「アイコン」「アイコンのみ」と、従来の「アイコン」「アイコンのみ」モードを入れ替えた ・メインメニューに「アイコン」「アイコンのみ」を追加 ・各種メニュー定義ファイルに「アイコン」と「アイコンのみ」を追加 ●性能改善 ・一覧表示の分岐を減らした ・改善により不要になった変数を削除 ●不具合修正 ・縮小画像でテキストを対象とする場合、設定の読み込み時にクリアせず追加していた不具合を修正 ●分かりにくいとの意見があった項目 ・「選択の切り替え」のチップテキストをWindows10に合わせた Ver.9.4.6.0 ・一覧生成時、デスクトップである場合に除去すべきアイテムの比較をITEMIDLISTでの比較をやめて、文字列で比較するように変更 ※ユーザーディレクトリから潜ってデスクトップを表示した場合に消せないため ・6コア以上の環境向けのバランス調整 ・一覧生成の際の判定処理を減らすように調整 ・ローカルサムネイルキャッシュの読み込みで、画像の初期化処理を省略して大幅に高速化 ・埋め込みリネームの属性判定で、フォルダー属性とストリーム属性がある場合にファイル扱いするように変更 ●補完機能付きのコンボボックスでCtrl+BackSpaceで、末尾の¥か末尾のフォルダー項目を削除する機能の追加(Ctrl+Kと同じ) ・本体 ・圧縮(ArcPack.exe) ・解凍(ArcUnPack.exe) ・リンクの作成(CreateLink.exe) ・拡張ファイルコピー/移動(FileCpMv.exe) ・ショートカットの作成(FileShortcut.exe) ・フォルダ移動(MoveFolder.exe) ・似ているフォルダーにコピー/移動(SimilarCopy.exe) ●タイル表示(並べて表示)の流用型の「アイコン」「アイコンのみ」での埋め込みリネームを自前で実装した ※大きな問題がなければ、次版で通常の「アイコン」「アイコンのみ」と入れ替えます Ver.9.4.0.0 ●コマンド定義ファイル設定 ・設定ダイアログのUIを作り直した ・コマンドの呼び出しの抑止モードBの追加 ●自動更新のレスポンス向上と動作の可視化 ・通常アイコン表示時の自動更新(リネーム検知)で拡張子が同じ場合はアイコンインデックスの再取得をしないように変更 ・更新通知が5,000件以上たまった場合に諦めて破棄していたが上限値を1万件にした ・更新キューが1万を超えている場合のメッセージとエラー表示を追加 ・更新検出中のメッセージ表示を10ms程度でまとめるように変更 ・更新検出メッセージに件数表示を追加して1万を超えたらカウンターも赤塗りのエラー表示するようにした ・更新処理中のメッセージを追加 ・一覧がロックできず、更新リトライする場合のメッセージを追加 ●メッセージボックスのアイコンの見直し ・設定可能メッセージに付与 ・FirstSetting.exeの報告 ●コードの整理 ・コマンド定義ファイルの読み込みロジックで未使用ブロックがあったので削除 ■エラーメッセージの日本語化 ●本体 ・ユーザー定義バーのリネーム失敗エラーをリソース参照に変更 ・アイコンモードで1,000個以上選択した時のエラーをリソース参照に変更 ・GDIリソースが9,500を超える場合のエラーメッセージをリソース参照に変更 ・コマンド定義ファイルの読み込みエラーをリソース参照に変更 ・ユーザー情報の格納ディレクトリの構成エラーをリソース参照に変更 ・ユーザー定義バーでディレクトリ移動に失敗をリソース参照に変更 ・スクリプトのテンプレートの読み込み失敗をリソース参照に変更 ・自動生成スクリプト生成失敗をリソース参照に変更 ・自動補完コンボボックスでの履歴の削除確認をリソース参照に変更 ●圧縮(ArcPack) ・自動補完コンボボックスでの履歴の削除確認をリソース参照に変更 ・タブが見つからないエラーをリソース参照に変更 ・お気に入りフォルダーが見つからないエラーをリソース参照に変更 ●解凍(ArcUnPack) ・自動補完コンボボックスでの履歴の削除確認をリソース参照に変更 ・タブが見つからないエラーをリソース参照に変更 ・お気に入りフォルダーが見つからないエラーをリソース参照に変更 ●似ている名前のフォルダーへコピ-/移動(SimilarCopy) ・自動補完コンボボックスでの履歴の削除確認をリソース参照に変更 ・タブが見つからないエラーをリソース参照に変更 ・お気に入りフォルダーが見つからないエラーをリソース参照に変更 ●拡張ファイルのコピー/移動(FileCpMv) ・自動補完コンボボックスでの履歴の削除確認をリソース参照に変更 ・タブが見つからないエラーをリソース参照に変更 ・お気に入りフォルダーが見つからないエラーをリソース参照に変更 ●リンクの作成(CreateLink) ・自動補完コンボボックスでの履歴の削除確認をリソース参照に変更 ●ショートカットの作成(FileShortcut) ・自動補完コンボボックスでの履歴の削除確認をリソース参照に変更 ●巨大ファイルの作成(MakeBigFile) ・自動補完コンボボックスでの履歴の削除確認をリソース参照に変更 ●フォルダ移動(MoveFolder) ・自動補完コンボボックスでの履歴の削除確認をリソース参照に変更 ●テキスト文字コードの変換(ChgTxtFmt) ・リネームエラーをリソース参照に変更 ・コンバートエラーをリソース参照に変更 ・書き込みエラーをリソース参照に変更 Ver.9.2.5.0 ・新規作成のメニューテキストの取得を、XP時代の手順からVista以降の手順に変更した ・オプションのレイアウトの微調整 ・埋め込みリネームの際にフォルダー属性とショートカット属性を見て選択範囲を全体にするようにした ※ファイル名やディレクトリの属性は見ていないので、ネットワークプレースやごみ箱などOSによって動きが変わります ・一定時間操作しない場合にキーレイアウトを自動的に切り替える設定を追加 ※一時的にインクリメンタルサーチモードにして戻し忘れる方を想定 Ver.9.2.1.0 ●Windows10の不具合対策 ・Windows10で、SHParseDisplayName()やSHGetPathFromIDListEx()などで正しく変換できないパスへの暫定対策を追加 ※今回の補正がかかるのは「終端の名称のみ」の制限があります  リスト上の選択状態をピックアップして外部コマンドへ渡すパスを生成する際に補正が適用されます  これにより前後に半角スペースや「.」がある名称のリネームやパス名のコピーなどが可能になります ●性能向上 ・リストのアイテムの初期化処理をコンストラクタに一元化して一覧生成や更新の速度を向上 ・リストのフルパスのITEMIDLISTの取得を並列処理にした ・一覧生成時の初期フォーカスを並列ループ外に配置した ・イレギュラー、デスクトップの不要項目、フィルタなどのリストに表示しないアイテムの除去を1度のループにまとめて一覧速度を向上 ●試験実装 ・タイルでのアイコン表示の課題であった埋め込みリネーム問題を緩和した Ver.9.1.9.0 ・リスト上の選択状態にあるアイテムをピックアップする処理を高速化 ・オーバーレイアイコンを取得しない設定の判定分岐を改善 ・属性のオーバーレイアイコンを発見した場合に、以降のオーバーレイアイコンの取得をキャンセルしないように変更した Ver.9.1.8.0 ●不具合修正 ・オプションのタブ共通→「タブの復元に移動履歴を含める」が機能していない不具合の修正 ●機能改善 ・ユーザー定義バーで存在しないパスに移動しようとした場合はルートに戻すように変更 ※外部のツールで管理ディレクトリを削除してしまった場合に抜け出せなくなるため ●拡張ファイル名の変更コマンド ・異常な名称のリネームを許可するモードを追加 ※拡張ファイル名の変更コマンドで追加された機能によって、本来は許されないファイル名やフォルダ名のリネームが可能になります。  例えば、末尾が「.」、ハードウェアを示す予約語、前後にスペースありなどの名称が扱えます。(半角スペースのみ、「...」「COM1」など)  この機能は悪意あるソフトにより作成されてしまったファイルやフォルダーを処分、啓蒙する、対策ソフトを開発するといった目的で作られた機能です。  本稿執筆時点で出回っている売り物のウィルススキャンソフトでも、スキャンできなかったり、別のディレクトリをスキャンしたり、隔離不能だったりと、対応状況は酷い状況です。  本ソフトウェアを悪用した場合は使用許諾違反になりますので、決して悪用しないでください。 Ver.9.1.7.0 ・HTMLビューアーでスクリプトエラーを表示させないようにした ・ローカルサムネイルキャッシュ作成コマンドのレイアウト調整と、注意書きの追加 ・拡張フォルダ作成コマンドで、末尾が「.」の場合に自動的に除去するように変更 ・Windows10でタブバーを横置きしている場合にレイアウト調整に失敗する場合の調査用隠しコマンドを追加 Ver.9.1.6.0 ・フィルタでフォルダーを対象外にする設定を追加 ・コンテンツモードのレイアウトの微調整 ・同じ機能を持つ関数が2個あったので1つ削除 ・設定の読み込み順番の最適化をした Ver.9.1.5.0 ●起動速度の向上 ・リストがアクティブになるまで走査しない設定を追加(オプション→リスト→動作) ・起動時にタグ情報を読み込む設定を追加(オプション→リスト→動作) ※ファイルにタグを付けるには、ヘルプの「隠し機能」を参照してください ●ローカルのサムネイルキャッシュの動作改善 ・安定性の向上のため、ローカルのサムネイルキャッシュの読み込みを走査スレッドではなくUIスレッドへ移動 ・ローカルのサムネイルキャッシュを適用する条件を緩和した ●コンテキストメニューのカスタマイズ機能を追加 ・オプション→インターフェイス→コンテキストメニューを追加 ●縮小版 ・縮小画像を表示できる最大数を500→3,000に変更 ●ローカルサムネイルキャッシュ作成 ・生成できるローカルサムネイルキャッシュの最大数を3,000に制限するようにした ・対象ファイルが3,000以上ある場合は確認メッセージ表示するようにした ・画像サイズ×画像数が262,143を超える場合は、As/Rで表示できない場合がある警告メッセージを表示するようにした ●スレッド管理フラグの構造の変更 ・アイコン取得のみでスレッドの生成を決定していたが、詳細情報もスレッド生成のトリガーに追加した ・表示モードごとにスレッド生成の仕組みを追加 ・ローカルサムネイルキャッシュが適用された場合の詳細、コンテンツ、並べて表示の詳細情報が欠落していたのを改善 ●コンテンツモード ※Windows10のエクスプローラーに見た目を合わせた変更 ・3列表示から2列表示に変更 ・動画の場合にフレーム高さ、フレーム幅の表示を削除 ・画像の場合に更新日付を表示するように変更 ●隠し機能 ・存在しないファイルに紐づいたタグがあるか調べて削除するコマンドを追加 ・リストのアイテムをダブルバッファリングするモードを追加(安定稼働していないので当面は非公開) ・フィルタでフォルダーを対象外にする設定を追加(次版で公開予定) ●不具合修正 ・フォントフォルダの下の階層で外部コマンドの実行を許していたのを禁止した ・Windowsの終了の際に、ビジー状態からキャンセルする場合に落ちるパターンがあったのを修正 ・Windowsの終了の際の終了メッセージが衝突する可能性を減らした ・リストで未選択のコンテキストメニューで、サイズグラフと日付色分けにチェックが付与されていたのを削除 ・ローカルサムネイルキャッシュの作成コマンドの処理中にチェックボックスを押せてしまう不具合の修正 ・オプションのトラッキング選択が再起動しないと反映されない不具合の修正 Ver.9.0.2.0 ●パス表記の仮想フォルダで、外部コマンドを実行できるようにしてみた ・ライブラリ以下で::で始まらないパス、ユーザーディレクトリなどが可能になった ・フォントフォルダ、圧縮フォルダーを対象外 ●その他 ・ネットワークを仮想フォルダーとして扱う設定の廃止 Ver.9.0.1.0 ・機能説明のリソーステキストが欠けていたものを記述 ・ハードウェアレンダリングを封印 ●隠し機能 ・オプションのキー割り当て画面で、Ctrl+Altを押しながら機能リストを表示させた場合にAllCommand.htmlを出力するようにした ・上記出力の際に説明テキストが欠落していたらエラーメッセージを表示するようにした Ver.9.0.0.0 ●現在のディレクトリのサムネイルキャッシュの改善(オプション→リスト→アイコン→縮小版の設定項目です) ※Ver.8とは互換性がありませんので、現在運用中のサムネイルキャッシュは再構築してください ・本体コマンドの「サムネイルキャッシュ生成」(35211)、「サムネイルキャッシュ削除」(35212)を削除 ・「ローカルサムネイルキャッシュ生成コマンド」(42043)を新規作成(CreateLocalTumb.exe) ・サムネイルキャッシュを検出した場合、ヒット数とキャッシュ総数をステータスバーに表示するようにした ・10以上のヒットミスがあったら再構築を促すメッセージをステータスバーに表示するようにした ・従来の「サムネイルキャッシュ生成」を「システムのネイルキャッシュ生成」に改名 ・メインメニューの表示に、ローカルのサムネイルキャッシュ生成を追加 ●サイズグラフ ※Ver.8以前のサイズグラフの設定を引き継ぎません ・設定項目が冗長になっていたのでまとめた ・サイズグラフの設定画面を、オプションから本体コマンドの方へ移動 ●非表示設定のできる確認メッセージの追加 ・オプションに確認メッセージのページを追加 ・アプリケーションの終了確認(要望) ・選択ディレクトリをフォルダーバーに追加の確認(分かりにくいとの意見あり) ・キー割り当てファイルの作成(出力内容の説明が足らないため) ・元に戻す確認(誤操作によるファイル喪失対応) ・やり直す確認(誤操作によるファイル喪失対応) ・スクリプトファイルの上書き確認(要望) ・拡張子連動スクリプトファイルの上書き確認(要望) ・コマンド定義ファイルの上書き確認(要望) ・ローカルのサムネイルキャッシュ生成を追加 ・大量のアイテムを開こうとしたときの確認(統合) ・大量のフォルダーを開こうとしたときの確認(統合) ●キー割り当てセットの追加 ・オプションのキー割り当てセットの3~9を追加と切り替えの仕組みを追加 ・メニューリソースへIDを追加 ●メモリ情報表示(MemInfo.exe) ・低性能PCでのちらつきの低減 ●リストの描画改善 ※省メモリ化、レイアウトの適正化、最大タブ数の増加、速度向上など ・カスタマイズしたスタティックコントロールを全て削除した ・リスト下部のステータスエリアの並び順を変更(ボタンを右端にまとめた) ・リスト下部のテキスト、ディレクトリ内検索、フィルタのテキストをコントロールではなく、自前で描画するように変更 ・機能廃止した不要コントロールを削除 ・フィルタ、ディレクトリ内検索の入力欄のサイズを補正した ・アドレスバーサイズの微調整 ●定義ファイル ・ファイル名のコピーコマンドは、仮想ディレクトリでも動作するように定義ファイルを変更した ●その他 ・オプションの文言修正多数 ・オプションのタブオーダーの修正多数 ・メッセージ63016を削除 ・メッセージ63009を削除 ・メインメニューの文言修正 ・ハードウェアレンダリングの基底クラスを準備した ●不具合修正 ・コマンド定義ファイルの起動制御がNで仮想フォルダ禁止であっても、圧縮フォルダーの2階層下を実体フォルダと誤認する不具合の修正 /////////////////////////////////////////////////////////////////////////////////// // Ver.8.x系 /////////////////////////////////////////////////////////////////////////////////// Ver.8.8.8.0 ●コマンド定義ファイル編集ダイアログ ・「コマンドライン」に、マクロ入力ヘルパーを追加 ●ユーザー定義バーのスクリプトコマンドの簡易設定ダイアログ ・コマンドラインに「環境変数に置換」ボタンを追加 ・起動フォルダにに「環境変数に置換」ボタンを追加 ・起動コマンドに「環境変数に置換」ボタンを追加 ・横長になりすぎたのでレイアウトの調整 ●拡張子連動コマンド編集の簡易設定ダイアログ ・「起動コマンド」に「環境変数に置換」ボタンを追加 ●MAX_PATHを超えるパス制限の緩和 ・SHGetPathFromIDListを使用しないように変更 ●タブバー ・閉じるボタンのチャタリング防止フラグが不適切な値になる手順があったので修正 Ver.8.8.6.0 ●終了処理の改善 ・アプリケーションの終了処理の高速化(終了リトライ回数の削減) ・終了処理でリトライが発生する際のウェイトを削除 ・安定性向上のためWindowsの終了する際のタブ保存を早めに行うように変更 ・Windowsの終了に巻き込まれた際に、なるべく穏便に終了処理をするように変更 ・Windowsの終了告知メッセージの戻り値を厳密に処理するようにした(Windows10の非互換性への対応) ●高解像度対応(ツールバーボタンを大きく表示している場合のウィンドウレイアウト) ・リスト下部のステータス表示などを大きく表示するようにした ●その他 ・誤操作が多いようなので、互換性維持のためだけに残っていた2画面モード切替コマンドIDに応答しないように変更 ・無駄なシェル通知の応答処理が残っていたので削除(NT4~XP用のコード) Ver.8.8.4.0 ●不具合修正 ・Windows10の場合、CD/DVD-ROM内のファイルの属性値が不適切な値になるので例外処理を追加 ●その他 ・キー割り当てセット切り替え用のコマンドIDを追加 ※今回追加されたIDの範囲は35581~35587で、キー割り当てファイル名はMode3.key~Mode9.keyになります。  キー割り当ての設定画面で作成したCommandMode.keyまたはSerchMode.keyをリネームしてご利用ください。  またコマンド発動はスクリプトのPostMessageコマンドをご利用ください。  正式なキー割り当てセットの追加はVer.9以降となります。 Ver.8.8.3.0 ●その他 ・右クリックメニュー系の処理で、外部のアプリによるメモリ破壊の検出を強化して落ちにくくした ・Windowsディレクトリの取得速度の高速化 ・System32ディレクトリの取得速度の高速化 ・リスト上のフォルダアイコンの初期値のインデックスを固定値からWindowsディレクトリのアイコンインデックスを使用するように変更  (Atom機などの低性能な環境でのレスポンスが向上) ●Meltdown/Spectre対策 ・CPUが8スレッド以上の環境で有効になっていた投機的実行を廃止した ※作者環境で、100万ファイルの一覧作成に約3秒かかっていたのですが、約130msほど表示速度が遅くなりました。  これはSandyBridge世代でのベンチマーク結果ですが、おそらくCPUの世代に関係なく劣化するものと思われます。  無論、OSの方に脆弱性が残っていたら全く無意味な対処なので、なるべくWindows Updateは適用しましょう。  (同じフォルダをエクスプローラで表示させると110秒もかかる規模なので、誤差の世界かもしれません) ●Fall Creaters Update限定でドラッグ選択でマウスカーソルが飛んでしまう現象への対処 ・圧縮ファイルビューア(MArc.exe) ・内蔵検索(Fin.exe) Ver.8.8.0.0 ●詳細一覧/一覧 ・ファイル名の幅が0で自動設定の場合、最小値を50pixにしていたが80pixに変更 ●シェル通知モードの動作の変更 ・従来捨てていた更新通知を積極的に拾って部分更新を行うように変更 ・「まとめて大量に更新した」という通知が来たら、「選択状態を保持して全更新」コマンドを実行するように変更 ※更新性能は大きく劣化したが、正確さを改善するという目的  具体的には10ファイルくらい追加/削除/変更されるとOS側でメッセージがまとめられる ●圧縮コマンド(ArcPack.exe)で7-zip32.dllの使い方を変更 ・マルチスレッドモードの明示的な宣言を追加 ・LZMA2の場合にスレッド数の上限は2になるように修正  7zの仕組みで、最高圧縮率の場合2スレッドで(709MB)、4スレッドで(2221MB)のメモリが必要になる  7-zip32.dllで扱えるメモリの上限が2GBになっているように見えるが、これを超えてヒープを要求してしまうのでエラーになるものと思われる ●MArc.exe ・GetArcCompressedSizeEx()系のインターフェイスを追加 ・zip系の書庫は7-zip32.dllを使用するように変更 ※zip系の書庫内ファイルの削除が使用不可になりました。  7-zip32.dllのdコマンド実行後にERROR_FATALが発生する  (処理済のテンポラリファイルを生成しているが、ファイルの上書き更新に失敗しているように見えるため) ●その他 ・オプションの色、フォント指定で配色によってフォルダーバーのスタイル設定と相性が悪いので注意書きを追加 ・マウスのチルトホイールで横スクロールするようにした ●一括で名前の変更コマンド(FileRenameEx.exe) ・リネーム時にシェル通知を行うように変更 ●インストール時のランタイムチェックコマンド(Test32.exe、Test64.exe) ・全く無意味な分散処理を追加してOpenMPの使用チェックに引っかかるようにした ●不具合修正 ・システムがビジー状態でディレクトリ内検索での選択/選択解除とリストの自動更新(削除/リネーム)が重なった時に、落ちる可能性がある不具合の修正 ・スクリプトの新規作成時にフォーカスを見失ってしまう不具合の修正 ●DLLプリロードの脆弱性対策 ・全コマンドが対象で、Windows updateが適用されている環境のみ脆弱性対策モードに切り替わるようにした ・遅延ロードDLLを増やした ※WinMainが呼ばれる前のMFC由来のものは対象外 ●Fall Creaters Updateの不具合対策 ・メインリスト/ユーザー定義バーでマーキー時にFall Creaters Updateを検出した場合に再描画を発行するように変更 ※Fall Creaters Update限定でドラッグ選択でマウスカーソルが飛んでしまう現象への対処しています Windowsの不具合なので様子見の暫定対処ですので、MArcやFinへの対処は保留にしております Ver.8.6.5.0 ●Windows由来の脆弱性の対応 ・Windows10RS2の不具合で仮想名称が取得できないフォルダーの場合に実体名称を表示するようにした ※Windows10のエクスプローラーは、いわゆるGodModeなど、一部の特殊なフォルダの名称が表示されない ・仮想名称の設定にしている場合に、名称が空になる場合は実体名を表示するようにした ※OSの設定が拡張子が初期値の非表示の場合、悪意のある「.exe」「.com」「.lnk」などラベルに何も表示されない ●ユーザー定義バー ・カラム幅の設定ダイアログの表示時に現在の設定値を表示するようにした ●タブレット支援バー ・カラム幅の設定ダイアログの表示時に現在の設定値を表示するようにした ●見た目の調整 ・サイズグラフの枠線を背景色の補色と背景色の35%中間色に変更 ・アイコン/アイコンのみ/アイコン(並べて表示版)/アイコンのみ(並べて表示版)で、縮小画像ではない場合に枠線を表示しないように変更 ●その他 ・意味を成していなかったのでアイコン/詳細情報の取得スレッドのキューのクリティカルセクションを削除 ・不要になったアイコン取得のバックグラウンド動作を無効にするフラグ制御を削除 ・サムネイル画像の取得中に現在のフォルダーの更新を検出した場合、更新キューを破棄していたがリトライするように変更 ・履歴ありで強制的に複数のタブを閉じる時の安定性を向上 ・タブを閉じる際のリトライ処理で無駄な履歴管理をしていたので簡略化 ・アプリケーションの終了処理を高速化 ・速すぎて読めないため存在を忘れてしまっていた自動更新/自動全更新の途中のメッセージを削除した ・フィルタやディレクトリ内検索のボタンレイアウトが崩れる問題へ暫定対処  (ユーザー操作によるものなので応答速度が求められるものではないが、描画効率が芳しくないので暫定扱いとする) Ver.8.6.2.0 ●見た目の調整 ・ウィンドウ管理バーとタブバーの配色を、やや明るめに調整 ●タブバー ・マウスボタンイベントの選択肢に「上位階層へ移動」を追加 ●問題のあるシェル拡張ツールがインストールされている時の安定性の向上 ・集計結果を反映させる画面更新が発生した場合のデータのロックが適切に機能しない場合がある現象を修正 ・フォルダーバーを表示させている場合、コールバック関数のウィンドウハンドルにNULL or 不正な値を渡してくる場合に巻き込まれて落ちる問題への対処 ・フォルダーバーのカスタムドローの構造体に不適切なポインタをセットして渡してくる場合に落ちる問題への対処 ・Windows7以降のフォルダーバーのコントロール属性を下位階層を参照するフラグを除去 ・INameSpaceTreeControlEventsで処理内容が空のメンバーの戻り値をS_OKからE_NOTIMPLに変更 ※原因は不明ですが、TC4Shell v17.6.21.0がインストールされていると、頻繁にAs/Rが落ちます。  安定性の向上は、これを対象とした対策であり、7割ぐらいの不正終了が今回の対処で回避できています。  いずれの対処も偶然発見されたものであり、当方で狙って再現できるものではありませんし、他にも巻き込まれ要因が無いか継続調査していますので、発生頻度が変わるような設定などがありましたらご連絡ください。  (今回の対処は、フォルダーバーを非表示にしておくと落ちにくくなったというヒントから見つかったもの) Ver.8.6.0.0 ●サイズグラフ ・現在のフォルダーの合計値を分母とする%表示を正式な機能としてオプションで設定可能にした ・現在のフォルダーの最大値を分母とする%表示を正式な機能としてオプションで設定可能にした ●日付色分け機能  抜本的に作り直し、ダイアログUIを持つように変更  常用可能で、最近更新されたものへ視点を移しやすくする目的とした ・色分けとグラデーション表現を廃止して、指定期間に含まれなければ背景色と70%の合成を行って目立たなくするように変更 ・日付色分け、時刻色分けの未使用コレクションの削除 ・日付色分けのレジストリ参照している配色の配列を削除 ・設定ダイアログの追加  システム日時を起点(システム日付を起点として、期間指定)  リスト内の最新日時を起点(リスト内での相対期間を指定する。遅延集計)  指定日時を起点  今日更新されたアイテム(今日の0:00~23:59)  今週更新されたアイテム(今週の日曜日を起点として7日間)  今月更新されたアイテム(今日の1日 0:00~末日の23:59)  今年更新されたアイテム(今年の1月1日 0:00~12月31日の23:59) ●ウィンドウ管理バー ・「同じグループを選択」で既に全て選択されている場合は選択解除にするように変更 ・「同じドライブを選択」で既に全て選択されている場合は選択解除にするように変更 ・「ネットワークを選択」で既に全て選択されている場合は選択解除にするように変更 ・「仮想フォルダーを選択」で既に全て選択されている場合は選択解除にするように変更 ・Ctrl+Wでウィンドウを閉じるように変更  (DELが分かりにくいとのことなので、将来的にDELは廃止の方向) ・オプションへ飛べるように機能を追加 ・上記の機能追加に伴い、配布メニュー定義を更新  _TabMngBarAction.txt  _TabMngBarSetting.txt  _TabMngContextMenu.txt ●リスト表示 ・詳細一覧でAs/Rにフォーカスがない場合、フォーカス色をベースにするのではなく無効色を使用するように変更 ・ステータスエリアにネットワークでもディスク容量を取得する設定を追加 ●ディレクトリ内検索 ・ワイルドカードを除いてファイル名として使えない文字は無視するように変更 旧)te"s<>t→*te"s<>t* 新)te"s<>t→*test* ・スペースをセパレーターとして扱う場合、ダブルクォーテーションで括られた範囲は同一トークンとみなすように変更 旧)"tes t" tes t→*"tes*;*t"*;*tes*;*t* 新)"tes t" tes t→*tes t*;*tes*;*t* ●メニューエディタ ・Expand and conversion to macroにチェックが入っている場合、指定パスを可能な限りAs/R固有の環境変数に置き換えていたが、OSの環境変数も可能な限り対象にした (OSの環境変数は展開後の文字列が長い順にチェックする) ●フォルダの作成コマンド(MkDir.exe) ・テキストエリアでCtrl+Aを押下するとテキストを全選択する機能を追加 ●展開コマンド(ArcUnPack.exe) ・zip書庫の解凍は7zip32.dllを使用するように変更 ※他のコマンドや自己解凍形式の判別にはunzip32.dllを使用している ●スクリプトの機能追加 ・RemoveSelectItemsは選択アイテムの配列を全削除であったが、ワイルドカードのパラメータ指定記述を追加 【書式】 ・従来通りの全件削除 RemoveSelectItems ・*.txt;*.slnにマッチするものを削除 RemoveSelectItems = *.txt;*.sln ・*.txt;*.slnにマッチしないものを削除 RemoveSelectItems = !*.txt;*.sln RemoveSelectItems = ! *.txt;*.sln ※ワイルドカードのパラメータの先頭に!がある場合は否定の意味として扱う ●その他 ・ウィンドウ情報文字列のファイル出力処理をまとめた ・復元スクリプトの作成時に子ウィンドウを最大化している状態の場合は、子ウィンドウを最大化コマンドを追記するようにした ・フォルダの監視スレッドの生成タイミングを調整して初回初期化時のオーバーヘッドを減らした ・監視ボタン押下処理で無意味にアイテムのロックしていたのを削除 ・無駄なSHGetDesktopFolder()の呼び出しが沢山あったので片っ端から削除 ・リストの初期化処理で無駄な初期化があったので削除 ・OSの終了の強制終了で、アプリケーションエラーになるケースを減らした ・ネットワークの場合に圧縮フォルダの判定処理をすると遅くなる場合があるので作り直して、階層にも対応して高速化した ・マウスジェスチャのコマンド実行とキャンセルをステータスバーに表示するようにした ●不具合修正 ・詳細表示で環境によりマウス押下座標を間違えることがあるので、リスト上での右クリックのイベント内での処理をやめて事前にイベントを横取りするように変更 ・環境によって自動更新が無効になっている場合に監視状況・切り替えボタンの表示が変わらない不具合の修正 ・リストの中断/エラーになった場合に、自動更新の監視スレッドが止まらない場合がある不具合の修正 ・仮想フォルダーでサイズ色分けや日付色分けが無効になっていなかった不具合の修正 ・フォルダーバーでBSキーによる上位階層へ移動を「カーソルキーの移動でフォルダを開く」の適用対象に含めるように修正 ・テキストからITEMIDLIST変換してアクセスする場合、接続してないネットワークに接続できない不具合の修正 ・接続してないネットワークにアクセスしようとしてダイアログが表示され認証が通るシナリオの場合、途中のIShellFoderの取得に失敗しているので親フォルダへアクセスして、ターゲットを選択状態にするように仕様変更 ●隠し機能 ・マウスのホイール回転でスクリプトを呼び出す仕組みに分岐する設定を追加 ●試験実装(テストモードのみ発動) ・走査結果のダブルバッファリング化 ・走査結果の破棄のタイミングを一覧生成の成功時のみとした ・リストの走査結果の配列をスタックからヒープへ移動 ・リストから走査結果のクラスに現在のパス情報を移動 ・現在のパス情報のデータ構造を変更と整理 ・フォルダのパス情報(GUID表記、アドレスバー書式、ITEMIDLIST等)の参照を制限しメソッド化、アクセス権限を変更 ・リスト上の初期フォーカス位置の制御処理を整理 ・ダブルバッファリングモードの際にフリーズする場合がある不具合の発生確率を軽減したが全然足りてない Ver.8.4.6.0 ●不具合修正 ・Runコマンド編集のマクロヘルパーで入力可能なマクロが表示されない不具合の修正 ・オプションのステータスエリア画面のレイアウトのずれを修正 ・ユーザー定義バーの実行時の自動判別で、アクセス不能の場合はフォルダ扱いではなくエラーメッセージを表示していたのを戻した Ver.8.4.5.0 ●リスト表示 ・詳細一覧のテキスト幅を微調整(サイズの表示エリアを4pix右に移動した) ・時刻の色分けで無駄な処理があったので整理 ・タイトルバーの表示処理の整理して効率化した ・ウィンドウ管理バーの更新処理の改善 ・現在のフォルダの総ファイルサイズ、選択数、選択ファイルのサイズの計算処理の結果の受け渡しのオーバーヘッドを改善 ●リスト生成スレッド ・フルパスで1000文字超の実体のあるパスを、仮想フォルダと認識しないように変更 ・リストの取得アイテムの属性値をまとめた ●サイズグラフの表示 ・描画方法を抜本的に変更 ・フォルダサイズ計算でアクセス不能なアイテムが存在した場合、再帰計算から抜けるように変更 ・サイズグラフの計算方法の設定を隠し機能から昇格してオプションに追加 ●Migemo/インクリメンタルサーチ ・ユーザー定義バーのMigemo検索でヒットしない場合、先頭検索に切り替えてヒット率を上げる処理を追加 ・Migemo/インクリメンタルサーチの検索の際の冗長な処理をまとめた ・インクリメンタルサーチを行うリスト上に、設定値以上の項目が存在するとMigemo検索を自動的に無効にする設定を追加 ●フォルダーバー ・Enterキーを押下した場合、ジャンプ後にリストにフォーカス移動するように変更 ・同じことをやってるので更新と再構築のメソッドを共通化 ●タブバー/ウィンドウ管理バー ・ウィンドウ管理バーのナビゲートロック/2画面モード/閉じるボタンの描画判定処理を軽量化 ・タブバーのナビゲートロック/2画面モード/閉じるボタンの描画判定処理を軽量化 ・タブバーのドライブアイコンを、実環境から取得するように変更する設定を追加 ●オプション ・文言修正たくさん、レイアウト調整たくさん ●似ている名前のフォルダーへコピー/移動コマンド ・類似性の判定で片仮名と平仮名を同一視するように変更 ・類似性の判定で記号は全角/半角を同一視するように変更 ●その他 ・画面分割時のサイズ/時刻比較を遅延描画するようにして全体的な負荷の総量を減らした ・クリップボードの監視をクリップボードチェインを処理する方式からクリップボードリスナーへ登録する仕組みに変更 ・ユーザー定義バーの実行時の自動判別で、アクセス不能の場合はフォルダ扱いではなくエラーメッセージを表示するように変更 ●不具合修正 ・画面分割時で、上下階層移動がONで、サイズ/時刻比較がONの場合、描画が不適切になる不具合の修正 ・コントロールパネル配下でリストから下位階層に潜れる不具合の修正 ・リスト走査中に負荷が低く、描画が完了した直後に高負荷の場合に描画が崩れる場合がある不具合の修正(Windows7) ・オプションのマクロ入力画面の切り替えボタンの名称が「置換マクロ」と「As/R関連パス」が逆になっていたのを修正 ・描画の遅いグラフィックカードを使用している環境で、フォルダ設定されているディレクトリから遷移時にゴミが表示される現象を緩和した1 ・描画の遅いグラフィックカードを使用している環境で、フォルダ設定されているディレクトリから遷移時にゴミが表示される現象を緩和した2 ・コンテンツモードかつ、若干スクロールさせた状態で遷移すると表示が消えてしまう不具合の発生率の緩和と復帰可能に改善(原因不明につき暫定対処) ・レジストリ読み込み後にハンドルを解放しそこねる不具合の修正(全コマンド対象) ・リスト破棄時に自動更新スレッドのイベントオブジェクトを解放しない場合がある不具合の修正 ・デスクトップで名前の取得ができない場合のリトライ処理に入らなかった不具合の修正 ・似ている名前のフォルダーへコピー/移動コマンドで再評価の際に前回の評価値のリセットが不十分であった不具合の修正 ●試作品 ・タイル表示(並べて表示)の流用型の「アイコンのみ」の描画内容、初期値を色々変更 ・テストモードかつタッチパネルが使える環境の場合、タッチパネルの初期化処理とイベントを拾う処理を入れてみたが中途半端にしか動かないので破棄 ・サイズグラフで現在のディレクトリのサイズ総和を分母として%表記するモードを追加 ・サイズグラフで現在のディレクトリの最大サイズを分母として%表記するモードを追加 ・起動時に管理者で実行したか否か、権限昇格のステータスを取得する仕組みを追加 Ver.8.3.0.0 ●安定性の向上 ・Ver.8.2.6.0で発生していた最大パス長の制限を撤廃 ・詳細から他のモードに切り替えた際に、画面が再描画がされない環境がある問題への対処  ※複合フォルダの表示崩れ対応も含む ・サイズ色分け、日付の色分けの配色をソース固定からレジストリ参照に変更 ●その他 ・日付の色分けが見難いそうなので、2pix→3pixに戻した ・Migemo検索が有効な場合で対象がユーザー定義バーの場合のステータスバー文字列もリストと同様にMigemoの正規表現文字列に変更 ●オプションの改善 ・ヘルプ参照が減らせるように、各画面に設定項目の概要説明を大量に追加 ・レイアウトの調整多数 Ver.8.2.6.0 ●安定性の向上 ・リストの一覧生成のビジーステータスの管理方法を調整 ・Windows 10 RS2で、エクスプローラーで名前が表示されなくなったOSの隠し機能のフォルダー(通称GodMode等)を開くと落ちる問題に対処 ●その他 ・抑止モードに「A」指定を追加 Ver.8.2.5.0 ●その他 ・リストのモード切替えのポップアップメニュー表示でリストのロックが必要なかったので除去 ・テンプレートから新規作成の処理を「テンプレートを元にして新規作成」から「テンプレートのコピー」に置き換えた ・進捗ダイアログを自前のものからIProgressDialogのものへ置き換えることを想定してクラスを実装(現行は未使用) ・未使用変数の削除などの極めて細かい最適化を実施 ・Windows 10 Creators Update対応に伴い、Technical Preveiew版(正式リリース前のバージョン)対応を削除 ・ファイルのプロパティの説明を更新 ・同時実行するスクリプトの数の初期値を1→5に変更 ●オプションの動作改善 ・「Migemo」を使用しない場合、その他のコントロールをグレイアウトするようにした ・「マウスジェスチャ」使わない場合、その他のコントロールをグレイアウトするようにした ●オプション(リスト-動作) ・Enterキーやダブルクリックでコマンド実行する際の動作の設定を追加 Ver.8.2.0.0 ●オプション ・アイコンの取得のタイムアウトの初期値を1秒→5秒に変更し、設定値を初期化した  (設定可能な値であることの認識が薄く、トラブルが多いようなので、設定をリセットします) ・アイコンの取得スレッドの設定を廃止して常にバックグラウンド固定にした  (他の選択肢はWindows10のデフォルトで使い物にならない、誤設定の防止のため削除) ●初期設定ツール(FirstSetting.exe) ・MkDir.exeやOption等のロケール依存のテキストをexe等から分離して配布書の冗長性が小さくなるようにした ●フォルダ作成コマンド(MkDir.exe) ・サンプル事例の入力コマンドのメニューに、設定フォルダを開く[Open folder]コマンドを追加 ●更新ツール(UpdateAsr.exe)スクリプトや定義ファイルの上書き確認画面の改修 ・カテゴリごとにグループ分けするようにした ・上書き確認のアイテム走査を再帰にして、下位階層が同じグループに含まれるように変更した ・MkDir.exeやOption等のロケール依存のテキストを上書き確認画面に含めるようにした ・現在のチェックの個数を表示するようにした ・コピーに失敗した祭のメッセージをシステムから取得するように変更した ・新しいものは全て選択ボタンを追加 ・未編集の新しいものを選択ボタンを追加 ●隠し機能 ・サイズグラフの計算方法の設定を追加  [HKEY_CURRENT_USER\Software\AMA_Soft\ASR\Main001\ListDraw]  "SizeGraphMode"=dword:00000000・・・比例  "SizeGraphMode"=dword:00000001・・・対数(デフォルト) ・隠し機能の「ファイルにタグを付け」でコメントを付記した場合に、ファイル名の後ろに表示するようにした  (一覧/詳細一覧/詳細/並べて表示が対象、コンテンツ/アイコンは描画位置の設計をしてないため未実装) ・リストで選択している状態のコンテキストメニューを表示し、項目を選択するとコマンド名とIDをクリップボードにコピーする機能を追加(ID:35907)  (ContextCommandText/ContextCommandIDを作成する際の補助用) ・タイル表示(並べて表示)の流用型の「アイコンのみ」モードを試験実装(ID:32909) ・タイル表示(並べて表示)の流用型の「アイコン」モードを試験実装(ID:32908)  最低幅が指定可能で、アイコンの横幅より大きくする場合に適用される  [HKEY_CURRENT_USER\Software\AMA_Soft\ASR\Main001\ListInit]  "IconMinWidth"=dword:00000040・・・デフォルトは64pix  ファイル名は一行表示で、2行目移行にタイムスタンプ/サイズの表示が可能  [HKEY_CURRENT_USER\Software\AMA_Soft\ASR\Main001\ListInit]  "IconLine"=dword:00000001・・・デフォルトは1行(1~3) ●ステータステキストの描画の負荷を調整(リスト上でのカーソル移動速度などに影響) ・タイマー停止の無駄な記述を削除 ・タイマー値の調整 ・静的テキストの表示コントロールのブラシの初期化飛ばしが原因で、描画ズレが発生することがあるので封印した ●その他 ・リネームを検出した自動更新でシェルの属性情報を再取得しないように変更 ・ネットワーク上のファルにFILE_ATTRIBUTE_SYSTEMがついてると、正しく属性が取得できない場合があるOS不具合が修正されたので補完処理を除去 ・サイズの色分けの描画の順番や位置を微調整(3pix→5pix) ・日付の色分けの描画の順番や位置を微調整(3pix→2pix) ・誤操作が多いようなので、リストの初期化直後のキャンセルを禁止にした ・リスト1個当たりのGDIオブジェクトを3個減らした ●スクリプト ・Speachコマンドで出力デバイスをデフォルトのオーディオデバイスに明示的に指定するように変更 ・ContextCommandTextの追加 現在、リスト上で選択しているアイテムに対して右クリックメニューのコマンドをテキスト形式で指定して実行する ※右クリックメニューに対して前方一致するコマンドを実行します。 ※下位階層のメニューコマンドは対象外となります。 【書式】 ContextCommandText=[コマンドテキスト] 【例】 ContextCommandText=プロパティ ContextCommandText=SVN 更新 ・ContextCommandIDの追加  現在、リスト上で選択しているアイテムに対して右クリックメニューのコマンドをIDで指定して実行する ※選択しているファイルが異なる場合、同じIDでも動作が異なる場合があります。 ※使用しているソフトウェアや設定などの環境によってIDと動作が一致しない場合がありますので、異なるPC間での運用の際にはご注意ください。 【書式】 ContextCommandID=[コマンドID] 【例】 ContextCommandID=48000 ・CreateRestoreScriptコマンドの追加 指定されたファイル名で、現在のタブ構成の復元スクリプトを作成する ※イベントコマンドや既存のスクリプトへの組み込み目的で、現在のタブ状態のバックアップを取る目的のコマンドです。 【書式】 CreateRestoreScript=復元スクリプトのフルパス 【例】 CreateRestoreScript=c:\text.txt ・コマンド呼び出しの抑止条件Xを追加(無条件でコマンドの呼び出しでリストとの連携あり) Ver.8.1.0.0 ・再起動マネージャの登録を解除して、クラッシュ時に自動再起動しないようにした ※ヘルプにWindows update後の再起動時と、Visual studioのインストール時にはランタイムが更新され、強制終了される旨の記述を追加 ※新規の障害報告の受付は様子見で残している ●オプション(Option.exe) ・「マウスジェスチャを使う」設定を、未使用/右ボタンで発動/戻るボタンで発動/進むボタンで発動に変更  進む/戻るだとファイル上でも、ドラッグ開始にならないという点がメリットですが進む/戻るは無効になります ●検証用の機能の追加 ・OS内部で発生したエラーの件数をカウントする仕組みを実装 ・隠しコマンド(35906)で検出したシステムエラーのカウント値をステータスバーに表示する仕組みを実装 ●安定性の向上 ・終了時の例外を捕まえるように変更 ・ビジー通知のメッセージを非同期に変更してレスポンス性能を向上した ・微小な例外のキャッチを大量に追加 ●フォルダー作成(MkDir.exe) ・フォルダー構成のテンプレート読み込み機能の追加 ・テンプレートファイルを大量に追加 ●MakeBigFileDlg.exe ・シェルのエラーメッセージを使用するように変更 ●β版からのロールバック ・zipの展開で7-zip32.dllを使うように変更したものを戻した ・拡張削除(FileDelete.exe)で長いファイル名対応をやめた Ver.8.0.3.0 ●本体/リソースDLL/メッセージメンテナンス ・Shell32.DLLのリソースから文字列を取得する処理を追加し、一部適用した 【メインメニュー】 ・キー割り当て一覧のファイルを出力コマンドを追加 【初期メニューに含まれていないコマンド】 ・やり直し(リドゥ)を追加 ・縮小画像のキャッシュを出力コマンドを追加 ・縮小画像のキャッシュを削除コマンドを追加 【Msg.ja-JP.txt】 ・メッセージの統廃合で整理した ●本体 【オプションの反映】 ・タブの高さ設定を反映 ・リスト-フィルタ・検索の設定ページの反映 ・フィルタ設定ダイアログからオプションの「フィルタ・検索」の設定ページ呼び出しを追加 ・フィルタ設定ダイアログから「半角スペースをOR条件にする」を削除 ・現在の縮小画像のサイズのキャッシュが存在する場合に読み込む処理の追加 【各種モード切り替えの精査】 ・無駄な描画処理と複数回発生する描画を排除した ・アイコンモードの切り替え時にフォーカスと選択状態を保持するように変更 ・リスト表示モードの切り替え時にフォーカスと選択状態を保持するように変更 ・表示モード設定ダイアログでのモード切り替えでフォーカスと選択状態を保持するように変更と、切り替え速度を大きく改善 ・リストの初期化処理を整理して処理数を減らした 【その他】 ・進む/戻るができない場合はメインメニューを無効化するように変更 ・フォルダのサイズ計算の進捗描画を改善 ・システム属性がないファイルであるのにシステム属性があるかのように表示されるOS不具合の回避処理を追加 ・勘違いする人が多いので仮想フォルダーは、ここからコマンドプロンプト、ここからPowerShellを実行できないように変更した ・ステータスエリアの描画タイマーを明示的に止めるように変更 ・マウスの中ボタンクリックでの当たり判定を、左クリックと同じになるように変更 ・自動更新後のソートの速度を微妙に改善 ●安定性の向上 ・全削除+上位階層へ移動対策でOnLvnOdcachehint()でアイテム数のチェックを入れた ・走査用のインデックスの排他制御を一部見直し ・属性/タイムスタンプの更新の検出の場合の取得情報を大幅に減らした ※新しいアイコン/オーバーレイアイコン/名称/ITEMIDLISTなどの取得をやめている  ログファイルや、動画のエンコードなどと組み合わせた場合の負荷低減、接続が不安定な場合の動作の安定性の向上が目的 ・細かい調整が多数 ・ILCreateFromPath()の系統のAPIが情報を取得している最中にファイルが削除されると、API内部でハードウェアエラーが起こる現象への対処 ・上記の例外をキャッチするために構造化例外のキャッチをするコンパイラオプションを有効にしたため全般的に大きく応答性能が劣化した ・落ちるよりはマシということでLVN_GETDISPINFO、NM_CUSTOMDRAWで例外が発生したら無視するように変更 ・アイテム削除時のフォーカス位置のセットで、0件の場合のフォーカス遷移処理を修正 ●その他 ・メモリの大量破棄の処理を並列処理に変更 ●外部コマンド全般 ・タイトルバーへ動作モードを表示するのをやめた(スクリーンリーダーでの読み上げ量の削減) ●オプション(Option.exe) ・全体に渡って文言修正 ・キー割り当てをファイル出力する/KEYLISTコマンドラインオプションの追加 ・マクロ入力補助ダイアログと置換マクロ入力補助ダイアログを統一して作り直した 【バー-タブ共通-タブバー】 ・タブの高さ設定を追加 【リスト-フィルタ・検索】 ・設定場所がわかりにくかったので設定項目をまとめてページを独立させた 【リスト-アイコン-縮小版】 ・「現在のディレクトリにキャッシュがある場合は読み込む」を追加 【キー割当初期値】 ・コマンドモード/インクリメンタルサーチモードともにCtrl+Yをリドゥに割り当てた ●「現在のフォルダーのアイコン」の機能名を変更(FolderIconChange.exe) ・コマンド名を「フォルダーのカスタマイズ」に変更(FolderIconChange.exe、ExternalDefCommand.txt、Asr.ja-JP.dll) ・仮想名称の変更の付与をサポートし、フォルダーの表示名を変更できるようにした ・Desktop.iniが存在しない場合、UNICODEでファイルを生成するようにした ・レイアウトや文言の微修正 ・サイズ変更方向の調整 ・コントロールの表示をいっぱい調整 ●テキストビューア(Txv.exe) ・文字処理を本体と共通化して、読み込み可能な文字セットが6→150種類ぐらいに増えた ・「文字コードを指定して開く」コマンドを追加 ・メニューから不要になったコマンドを削除(新規作成、自動判定、EUC、JIS、SJIS、UNICODE、UTF7、UTF8) ・アクセラレータのCtrl+Nを削除 ・オプションの文字コードの判定サイズ設定を削除 ・オプションの「初期の文字コード」を「優先文字コード」に変更 ・オンラインヘルプを表示するコマンドを追加 ・ツールバー画像の総入替えと増減 ●検索ツール(Fin.exe) ・文言修正 /////////////////////////////////////////////////////////////////////////////////// // Ver.7.x系 /////////////////////////////////////////////////////////////////////////////////// Ver.7.9.0.0 ●スレッド管理方法の改修 ・各種のスレッド停止監視スレッドをリスト単位で管理するように変更 ・一覧走査スレッドの単一スレッドをスレッドプール化した(OpenMPによる並列化は除外) ・各種スレッド停止の監視スレッドの投げっぱなしからスレッドプール化した ・APIの応答待ちでスレッドが停止できない場合、各種スレッド停止の監視スレッドがずっと待つので10ミリ秒間隔で10回しか試行しないように変更 ・詳細情報/アイコン/縮小版の取得スレッドの投げっぱなしからスレッドプール化した ・アイコン/縮小版/詳細情報の取得スレッドの停止レスポンスを向上させた ・リスト走査でのスレッド停止スレッドを10回リトライしてダメなら諦めていた場合に、ステータスエリアにメッセージ表示を追加した ・リスト走査のリトライ制限を、リフレッシュ/上位階層/停止にも適用 ●スレッド管理方法の変更に伴うステータスエリアの表示制御の改修 ・10回しかリトライしないのでスレッド停止アニメーションを当面廃止 ・死活風車を止めるのをやめた、スレッド死活フラグを見て自律して回すように変更(アイコン取得/更新も反映されるようになった) ・死活メッセージの初期化を追加 ・結果位置の表示に困るので、走査中のアイテム数の表示位置と表示タイミングを変更 ・自動更新中の進捗ステータスの表示の追加 ・アイコン画像取得中の進捗ステータスの表示の追加 ●安定性の向上 ・LVN_GETDISPINFO、LVN_ODCACHEHINTが呼ばれたタイミングでリストアイテムをロックできなければ諦めるように変更  (ビジー時に表示崩れを起こしますが落ちるよりましという判断です、例えばフォルダサイズ計算などで途中経過の画面崩れが発生します) ・戻る/更新の連打で落ちる場合への緩和策を適用 ・SafeRelease()の使用範囲を広げた ●仮想アイテムでもパス名を取得できるように変更(ダイアログ型の機能と差別化の意味合いで、初期メニューに存在しないコマンド群) ・フルパスをクリップボードにコピー ・ファイル名をクリップボードにコピー ・拡張子なしでファイル名をクリップボードにコピー ●微妙な性能向上 ・リスト周りのコマンドアイコンセット処理の冗長性を緩和してリストの構築/ボタンアイコンの更新速度を向上 ・色々なシーンで使われる、現在の選択アイテムをピックアップする処理を高速化 ・ステータステキストの更新のタイマーで、無意味に2回停止をかけていたので片方削除 ●その他 ・コマンドが使用できない場合、メニューの「詳細表示のカラム自動調整」をグレイアウトするように変更 ・アイコン画像、縮小画像、オーバーレイアイコンの取得に時間がかかる場合、再入処理が発生していたので事前に抑制するように変更、また取得後の再入抑止処理を除去した ・性能評価用のCPUクロックの取得を起動時の1回目のみにしていたが毎回取得するように変更 ●不具合修正 ・フォルダの更新を検出した際に、環境によってフリーズする可能性がある不具合を修正 ・タブへ移動、タブへコピーのメニュー定義コマンドが1ファイルずつ処理される不具合の修正 ・タブへコピー/移動のコマンドでファイル処理中フラグを立ててなかった不具合の修正 ・スレッドインジケーターが機能していない処理があったので整理した ・詳細系のリストの付随情報の取得中に中断させるとメモリの開放忘れが発生しうる不具合の修正 ・画像フォーマット変換コマンドのキャプションが不適切である不具合の修正 ・フォルダーバーのコンテキストメニューでコマンド文字列が取得できない場合にバッファオーバーランが発生する不具合の修正(デバッグモードのみなので、ユーザーさんには無関係) ・アイコン取得スレッドを中断した際に、メモリリークが発生する可能性がある不具合の修正 Ver.7.8.2.0 ・OS終了時に独自メッセージボックスでの処理はしないように変更 ・OS終了時にバックグラウンドでファイル処理をしている場合、OSに対してメッセージを渡すように変更  (OSシャットダウン処理をキャンセル+復帰してから、通常のAs/R側の確認メッセージ後に強制終了をするという流れになります) ・他のアプリなどでクリップボードの状態が変化した時、ロックできなければ諦めるように変更 ・エラーレポート作成コマンド(CreateErrorReport)で報告項目への置換が間違っていた不具合の修正 ・クリティカルセクションをカプセル化する専用のクラスを追加 ・クリティカルセクションの初期化でスピンカウントを指定するように変更  (更新監視スレッドがカーネルモードからユーザーモードの切り替えが減ってレスポンスが上がってるが、総CPU時間は増えてる) Ver.7.8.1.0 ●不具合修正 ・詳細一覧で、テキスト幅の自動調整かつ、キーボード操作の場合のみ「最新の情報に更新」で先頭行にスクロール移動しない不具合の修正 ・詳細/コンテンツで、キーボード操作の場合のみ「最新の情報に更新」で先頭行にスクロール移動しない不具合の修正 ・アイコン/アイコンのみで、キーボード操作の場合のみ「最新の情報に更新」で先頭行にスクロール移動しない不具合の修正 ・並べて表示で、キーボード操作の場合のみ「最新の情報に更新」で先頭行にスクロール移動しない不具合の修正 ・スキンアイコンの取得に失敗した場合にNULLを返していなかったせいで例外処理がされないケースがあった不具合の修正 ●その他 ・更新の受信の際のトレースメッセージの整理とメモリ解放タイミングを変更した(後述の注釈の調査用) ●更新ツール(UpdateAsr.exe) ・文言修正 ●特定の環境に対する安定性の向上 ・良かれと思って実施した、プレビューバーが原因で落ちる(言語系のトラブル)が悪化したようなので処理を戻した ・プレビューバー/縮小版の文字コード判別を「日本語(自動判別)」から「自動判別」に変更 ※マカフィーのオンデマンドスキャンの不具合か、EXCELの不具合か私に知るすべはありませんが、システムを不安定にする現象が確認されました。  ダウンロードフォルダーで、EXCELファイルを開くとシェルへ断続的に更新通知が大量に発行されます。  エクスプローラーを始めOS全体に対して負荷をかけ続けている状態です。  習慣的に、ダウンロードフォルダにて作業するという行為はやめたほうが良いと思われます。 Ver.7.7.9.0 ・フォルダーバーのクラッシックモードで、フォーカス(非アクティブ)が反映されるようにした (クラッシックスタイルの場合フォーカス色の指定が反映されるが、主に黒テーマ系への対処となります) ・一覧、詳細一覧で一部のスクリーンリーダーの読み上げを改善 ・一部のスクリーンリーダーで外部コマンドのリスト読み上げない問題を改善 ●安定性の向上 ・文字コード処理のインターフェイスを必要になった時に読み込むのではなく、固定で起動時に読みこむように変更 ・ステータスバー文字列の生成タイミングで同期フラグを参照するように変更 ●不具合修正 ・一覧、詳細一覧でファイル名の幅が0で再計算される場合に画面が崩れる不具合を修正 Ver.7.7.7.0 ●ファイル一覧出力(FileExport.exe) ・HTMLファイル出力でDOCTYPEの出力を追加 ・HTMLファイル出力でテーブルヘッダの記述を修正 ・HTMLファイル出力でテーブルタグへサマリの追加 ・HTMLファイル出力でタグの閉じ忘れがあったのを修正 ・ダイアログのサイズ変更対応 ●オプション(Option.exe) ・アイコン取得の同期処理の説明を修正 ・プレビューバーの設定項目を、処理の優先順番に並べ直した ・コマンドプラグインの説明を現状に即した記述に修正 ・タブバーの「ファイルドラッグで選択を切り替える」設定をタブ共通へ移動 ・フォルダーバーにクラッシクスタイルの設定を追加 ●各種バーの動作変更 ・ウィンドウ管理バーで「ファイルドラッグで選択を切り替える」の設定が適用されるように機能を追加 ・フォルダーバーのクラシックスタイル対応 ・プレビューバーへの描画を、スレッドにファイル名のみで丸投げにした ●安定の向上 ・リスト上のアイテムを全削除するタイミングとロックスコープを調整 ・移動履歴で選択を覚える場合のロック処理を追加 Ver.7.7.4.0 ●メニュー定義 ・「選択アイテムをタブに移動」コマンド(MOVETABLIST)をバックグラウンド化した ・選択アイテムをタブにコピーコマンドを追加(COPYTABLIST)  MOVETABLISTのコピー版でバックグラウンド動作する  同期動作のDROPTABLISTとの違いは「送る」ではないのでフォントのインストールなどの動作を行わない ・本体以外からのメニュー定義呼び出しでMOVETABLIST/COPYTABLIST/DROPTABLISTが文法エラーにならないように修正(動作はしない) ●スクリプト ・Speachコマンドが動作しない環境要件の緩和 ●オプション ・詳細表示の「ウィンドウにあわせてカラム幅を自動縮小」を解除するのに本体の再起動が必要なのを改善 ・ユーザー定義バーの「一覧表示を使用する」「複数選択を使用する」が要本体再起動である注釈を追記 ・その他→起動制御に「現在のユーザー情報の管理ディレクトリを開く」ボタンを追加 ・メニューエディタのパス入力系のマクロヘルパーを環境変数の入力ヘルパーに変更 ・拡張子連動コマンドの簡易設定ダイアログに環境変数の入力ヘルパーを追加 ・ドロップ禁止の場合は、ドロップ設定のコンボボックスをディスエブルにした ●安定性の向上 ・外部アプリケーションから影響を受けにくくするため、WM_USERを使用しないようにした  Windows2000移行のWindowsの作法に正しく則ってないシェル拡張ツールに落とされるケースへの対処  主に古いクリップボード監視ソフト、エンジンを購入しているタイプのウィルススキャンソフトなどが対象 ・ジャンプ系スクリプト、フォルダーバーのクリック、上位階層へ移動、履歴の進む/戻るなど監視スレッドを積極的に停止するように大量に変更 ・SetRedraw()のタイミングを変更して従来より積極的に描画を止めるように変更 ・リストにフォーカスを戻すためにSetFocus()を使うと再描画を引き金とした排他制御がかかっていたのを調整 ・リスト上から情報を取得する際のアイテムロックの処理を見直した ・リストを破棄する際の排他制御を強化調整(閉じる/画面分割/アプリケーションの終了で落ちる対応) ・ツールチップテキストの取得の際にロックを試みていなかったのを修正 ・シェル実行コマンドの排他制御見直し ・コマンド定義ファイルによる実行の排他制御見直し ・シェルアクション(プロパティ等)の排他制御見直し ・各種選択系のコマンドの排他制御見直し ・コンテキストメニューの排他制御見直し ・リスト上で左アイテムクリックの排他制御見直し ・リスト上で中クリックの排他制御見直し ・リスト上のチェックボックス押下の排他制御見直し ・Finの起動時の排他制御見直し ・インクリメンタルサーチ時の排他制御見直し ・埋め込みリネームの排他制御見直しと更新処理をシェル通知に置き換えた ・フォルダのサイズ計算時の排他制御見直し ・ドラッグ開始の排他制御見直し ・ドラッグ中の排他制御見直し ・D&Dヘルパーの排他制御見直し ・LVN_GETDISPINFOでアイテムのロックに失敗した場合に、既存ロックを解除してしまうルートがあったのを修正 ・LVN_GETDISPINFOを経由する排他制御の整理 ・アイコンサイズ変更で横スクロールが発生する場合に原点がずれる現象への対処 ・ステータスエリア/キャプションバーのテキスト生成時の排他制御見直し ・キーボードD&Dの排他制御見直し ・エクスプローラー風チェックボックスの時の排他制御見直し ・選択保持で更新コマンドの排他制御見直し ・詳細のカラム情報を取得してない場合のフォロー処理の追加(コンテンツ→詳細に切り替えた時に発生) ・切り取り時の排他制御見直し ・クリップボードの内容が変化した時のシステム通知の排他制御を追加 ・システム共有のクリップボードチェインに無効なウィンドウハンドルをまれにセットしてくるテキストエディタ対策を追加 ・自動更新時(リネーム)の場合のエラー処理の強化 ・自動更新時(属性変更)の場合のエラー処理の強化 ・自動更新時(追加)の場合のテキスト幅再計算は機能していないので削除 ・共通のテキスト幅の計算関数でNULLチェック追加 ・走査の調整とエラー処理の強化 ・走査時のフィルタ処理の調整とエラー処理の強化 ・IShellFoder2の取得に失敗し、詳細/コンテンツ/並べて表示の詳細情報取得で詳細情報時に不安定になる可能性があるケースへの対処を追加 ・IShellFoder2の取得に失敗し、描画リクエストが発生が発生した場合に全てスキップするように変更 ・更新キューの破棄はロックのリトライせずに、クリティカルセクションに置き換えた ・シェル通知の自動更新のイベントキューのリトライ処理を全部クリティカルセクションに置き換えた ・更新キューの反映の際にロックできない場合のリトライは、中断フラグを参照するように変更 ・検索リクエストの処理の共通化と、リクエストと結果の分離を見なおした ・リストの個々のアイテムの情報を2階層にし、描画リクエスト/サイズ計算リクエストが発生した場合には基底の情報のみを複製して、各種走査とのバッティングを発生しにくくした ●その他 ・QueryDosDevice()APIが嘘文字列を返してくるOSしかないと思っていたが、正しい文字列を返すOSがあったので補完処理を追加 ・ロックの成否を返すロックオブジェクトの場合、ロック/開放を自動で行うようにした ・キーボードD&Dでちらつきを減らした ・Migemo使用時のインクリメンタルサーチで、ステータスバーにクエリの正規表現文字列を表示するようにしてみた ・テキスト幅の計算時にアイテム数が30個以内の場合は並列化しないように変更 ・一覧、詳細一覧のテキスト幅を自動計算する際の最小値を30→50pixに変更 ・アイコンの初期値をフォルダか否かで分岐するようにした ●不具合修正 ・画面分割されていた時、クリップボードの内容が変化した時の通知を反対側のペインに送ってなかった不具合の修正 ・多段タブ(横置き)の場合、段数の計算の丸め誤差が環境によって発生しうる問題へ対処した Ver.7.6.0.0 ●開発環境の更新 ・Visual Studio Update 3適用 ・ヘルプとかReadmeとかランタイム配布とかUpdate 3の記載 ・アップデート手順資料の更新 ●コマンドプロンプト連携 ・ここからコマンドプロンプトで、現在のフォルダーが仮想フォルダーの場合は未指定で開くように変更(ネットワークは開けません) ・ここからPower Shellで、現在のフォルダーが仮想フォルダーの場合は未指定で開くように変更(ネットワークでも開けます) ・メッセージID:63026の追加 ●フィルタ/ディレクトリ内検索 ・各種コントロールのレイアウトを調整 ・フィルタ/ディレクトリ内検索で、ショートカットキーの修飾キーが押されてないことの判定を厳密に行うように変更 ・フィルタでCtrl+Dでフィルタエリアを閉じるコマンドを追加 ・ディレクトリ内検索でCtrl+Sでディレクトリ内検索を閉じるコマンドを追加 ・ディレクトリ内検索の「選択」のショートカットキーをCtrl+SからCtrl+Enterに変更 ・ディレクトリ内検索の「選択」は「選択/解除」コマンドにし、選択状態が存在している場合は解除するように変更(Ctrl+Enterの連打で解除と選択が可能) ・ディレクトリ内検索でCtrl+Tで再色塗りコマンドとなるショートカットキーを追加 ・ディレクトリ内検索とフィルタの展開文字列を、各表示エリアに表示するように変更 ・ディレクトリ内検索の文字列のワイルドカード展開方法をフィルタと同一になるように変更(スペースをOR条件にするなど) ●ツールチップテキストの見直し ・進む/戻る/上へ/ディレクトリ内検索/フィルタの各種ボタンに、固定キーのショートカットキーを表示するように変更 ・ナビゲート/更新/中止のボタンのツールチップをモードごとに動的に説明するように変更 ・自動更新ステータスのボタンのツールチップをモードごとに動的に説明するように変更 ・各種ツールチップのテキストを見直した ●スクリプト ・FullStateOpenExの追加  既存のFullStateOpenで既存の置換マクロのパス表記でバッティングするので、変数展開する専用のものを用意した  (2画面モードで強制的に開く用のコマンド) ●分割時の比較モード ・軽量化と高速化を行った ・稼いだ速度分を使って分割比較を自分自身のみの描画に変更して独立させ、両方のリストに描画依頼を発行するようにした ・反対側に存在しないファイルのアイコンを輝度50%オフにした ●その他 ・プレビューバーを表示したときにアクティブリストのフォーカスアイテムを表示するように変更 ・フォルダが存在しないなどのアクセスエラーが発生した場合、アドレスバー背景を赤塗りにするように変更 ・いきなり2画面で開く際の速度を向上 ・一覧の配列の予約の上限が前回の表示件数×2か10万件だったので、この上限を解除した ・パターンマッチ判定処理に無駄なループがあったので削除 ・文字列解析のイレギュラー処理を改善 ・設定ファイルの読み込み/開放処理のタイミングの調整 ・フォントのレジストリ読み書きをカプセル化してまとめた ・未使用のレジストリ保存関数を整理 ・OnXButtonUpによる進む/戻るの動作を固定の関数呼び出しからイベントに変更 ・トークン分割/結合の共通関数の拡張 ・文字コード判別エンジンのインスタンスをスレッドごとから、グローバル変数1個に変更して再生成しないようにした ●Seeker.exe ・メディアプレイヤー Ver.6.4のエンジンを使用する設定を削除  Windows10だと、サポート対象外の扱いで誤動作しまくりのため ●Txv.exe ・右端で折り返さない場合、左右のオートスクロールをしない不具合を修正 ・縦書き表示機能を十数年ぶりに復活 ●ダイアログのサイズ変更と自動レイアウトを適用(属性を付与なので簡易的なものです) ・CreateTumbImg.exe ・UpdateAsr.exe  3ページ目(更新ファイルの選択)  更新ファイルの新旧比較テキストビューア(最大化ボタン有り)  処理結果ダイアログ(最大化ボタン有り) ●安定性の向上 ・全選択/解除コマンドでの保護を追加 ・アイテム件数のカウント処理を描画ベースのものに変更 ・削除の自動更新の際に落ちる可能性がある問題への対処 ・自動更新関しスレッドの停止のさいに、更新キューのリセットを行うように変更 ・自動更新監視スレッドの停止手順を統一メソッドで行うように変更 ・破棄時の自動更新監視スレッドの描画再入確率を減らした ・リストのインデックスの再構築でデッドロックが起こりうる不具合の修正 ・自動更新のリネームと属性変更の場合のデータが取得できない空白時間を減らした ・表示モードの切替時、テキスト幅の自動計算処理でアイテムをロックしてない不具合を修正 ・たまにフォントが崩れる現象の発生可能性の低減 ・イメージ取得スレッドでメモリ枯渇時の補完処理を追加 ・イメージ取得スレッドでキュー開放のタイミングを調整 ・一覧生成の開始時にメッセージキューに溜まっている描画系メッセージを積極的に破棄するように変更 ・インデックスでアイテム情報を参照する関数の使用をやめた ・オプションの反映時の更新処理で一覧をロックできなければ再描画をスキップするようにした ・設定ファイルの保存処理を全面的に見なおして、読み書きの衝突確率を減らした ●不具合修正 ・ナビゲートロックされているタブに、ファイル選択で呼び出された場合に選択情報を失う仕様不具合の修正 ・グローバルアトムを用いた通信の際に、ローカルメモリの解放忘れがある不具合の修正(主にAsrLoad.exeとの通信) ・デスクトップ配下のパスを入力間違いした場合に初期化の状態で終了するのを、エラーで終了するように修正 ・サムネイル取得のスレッドでGDIハンドルが確保できない場合に画面が崩れる不具合の修正 ・フォルダーバーの構築時にDCを能動的に開放してない不具合の修正 ・マウスジェスチャの軌跡を描画するのに、システムが極めてビジー状態であると画面が崩れる場合がある不具合の修正 ・エラーレポートのテンプレートでwhat項目の受信ができていなかった不具合の修正 ・キーレイアウトのファイル出力で出力されるファイル名のスペルミスを修正 ・外部インターフェイスに影響しないスペルミスを大量に修正 ・オプションのキーレイアウト2が残ってる環境がある場合の補正処理を追加 ・バックグラウンドでのシェル削除で、COMの初期化に失敗した場合に落ちる不具合の修正 ・フォルダーバーのキー割り当てファイルを読もうと試みていた不具合の修正(フォルダーバーのキー設定そのものが非公開機能) Ver.7.4.5.0 ●外部コマンド ・不具合報告作成用のコマンド追加(CreateErrorReport.exe) ・拡張名前の変更のダイアログ画面に「並び順を反転」ボタンを追加 ●再起動マネージャ ・再起動時にCreateErrorReport.exeを実行するか問い合わせる処理の追加 ●ダイアログのサイズ変更と自動レイアウトを適用(属性を付与なので簡易的なものです) ・LockProcess.exe ・FileReproduction.exe ・SimilarCopy.exe ・CreateLink.exe ・詳細表示の設定(本体) ・表示モード設定(本体) ●高DPIモード用のレイアウト調整と、フォント設定を反映させる場所を増やした  (アドレスバー/ステータスエリア/タブバーなど、設定されたフォントサイズによってサイズが変わります) ●安定性の向上 ・リスト描画完了時のファイル名の幅の設定処理を変更 ・選択状態の復元処理の後の再描画処理を簡略化 ●その他 ・不要になっていたステータスメッセージを整理 ・ツールチップメッセージの初期化の順番を応用が利くように最適化 Ver.7.4.1.0 ●オプション ・各種表示モードでファイル名を実体モード/仮想モードで切り替えられる設定の追加(アイコンのみ表示は除く) ●再起動マネージャの利用 ・アプリケーションが異常終了した場合に再起動を試みる処理の追加 ・異常終了の直前のタブ構成をバックアップする処理の追加(backup.dat) ・復元時の通知メッセージを追加(情報収集コマンドの実行問い合わせの実装予告など) ・ハッシュの操作において特別な条件で検索すると、まれにメモリ破壊が遅延で発生するコンパイラのバグの回避処理を追加2 ●ダイアログのサイズ変更と自動レイアウトを適用(属性を付与なので簡易的なものです) ・ArcPack ・ArcUnPack ・MakeArchive.exe ・MakeSelfExtract.exe Ver.7.3.9.0 ●ダイアログのサイズ変更と自動レイアウトを適用(属性を付与なので簡易的なものです) ・FileExecute.exe ・FileNewEx.exe ・FileRename.exe ・FileShortcut.exe ・WinEx.exe ●その他 ・アイコン画像のインデックス取得でシステムマップを先に試行するように変更(Win10+defender対策) ●安定性の向上 ・落ちた時のリカバリー/情報収集コマンド呼び出しのフレームワークを実装(運用ルールが未決定なので、まだ中身は未実装です) ・更新インデックスの操作に排他制御を追加(これは完全に気休めです) ・ハッシュの操作において特別な条件で検索すると、まれにメモリ破壊が遅延で発生するコンパイラのバグの回避処理を追加 Ver.7.3.7.0 ●ダイアログのサイズ変更と自動レイアウトを適用(属性を付与なので簡易的なものです) ・FileCpMv.exe ・MkDir.exe ・ChgImgFmt.exe ・ChgTxtFmt.exe ・DivFile.exe ・FileNameCp.exe ・FileAttribute.exe ・RemoveZoneID.exe ・VersionInfo.exe ●その他 ・フォントサイズの計算処理を共通化 ・inet_addr()系の古いAPIを全廃してWinSock系のプリプロセッサ定義を全て削除した ・リスト内オブジェクトの文字列管理で、ポインタにアタッチするだけの場合に開放忘れが発生しえないように変更した ・x64版でリンカのオプションで大きいメモリサイズの認識を有効に変更 ・開発環境にVisual studio 2015 Update 2を適用 ●不具合修正 ・サイズ取得済みのフォルダーのサイズの並列再取得を抑止する処理がなかったので追加 ・UpdateAsrの文言修正 Ver.7.3.4.0 ●ダイアログのサイズ変更と自動レイアウトを適用(属性を付与なので簡易的なものです) ・FileInfo.exe ・FileDelete.exe ・FolderIconChange.exe ●ウィンドウ管理バー ・全選択コマンドの動作を全選択/解除コマンドに変更してCtrl+Aを割り当てた ・同じグループを選択をCtrl+G、同じドライブを選択をCtrl+Dに割り当てた Ver.7.3.3.0 ●Option.exe ・バージョンチェックの設定画面で、前回確認日時の表示機能を追加 ・バージョンチェックの設定画面で、前回確認日時のリセット機能を追加 ・メニューエディタ、DROPTABLIST、MOVETABLISTコマンド対応 ・タイトルバー文字列設定を3種追加 ●安定性の向上 ・ナビゲーション付きシェル実行コマンドの排他制御を厳しくした ・選択状態の配列の取得の排他制御を厳しくした ・ステータスバーのテキスト生成の排他制御を厳しくした ・キャプションバーの表示テキスト生成時の排他制御を厳しくした ・固定値をスタック変数からグローバル変数に変えてメモリ割り当て回数を減らした ・リストデータを削除する前に更新インデックスのクリアを積極的に実施するように修正 ●その他 ・実体ありフォルダのファイル名の確定処理の不要な計算式を削除 ●不具合修正 ・スクリプト処理時にnullポインタへアクセスする可能性があった不具合の修正 Ver.7.3.0.0 ●リスト描画の抜本改修の続き ・詳細/コンテンツ/並べて表示の詳細情報のバックグラウンド取得を実装 ・仮想フォルダーの場合、カラムの自動調整を行っていたがやめた  (一覧表示し終わったタイミングで詳細情報を一切取得してないので、カラム幅の計算のしようがない) ・仮想フォルダで従来取得しそこねていた詳細情報を取得できるようにした ・ビュークラスの初期化時の再描画属性の制御タイミングを変更して、若干新しいタブの生成速度が上がった ●その他 ・マウスを使ったタブバーの切り替えでマウスボタンを放したときしか見ていなかったのを修正 ・復元スクリプトの生成処理が冗長だったのをまとめた ・7.2.0から属性によるオーバーレイアイコンの取得をバックグラウンドでやっていたのをUIスレッドに戻した ・並列化ライブラリの初期化の追加とパラメータ調整 ●安定性の向上 ・走査スレッドからの描画通知に排他制御を追加 ・リスト上のアイテム数の取得メソッドを内部変数のものに変更 ・リストを閉じる時に描画を強制的に止めて安定性を向上させた ・ビューモード切替時の選択/フォーカス状態の無駄な走査を行っていたのを削除 ・隠し機能のマイネットワークを表示しないモードで、マイネットワークをロックしている他所のアプリが存在した場合に発生する問題への対処 ・アンドゥ/リドゥのフック処理をスマートポインタ化して不良アプリに巻き込まれにくくした ・AfxGetMainWnd()を取り置きしたメインフレームのポインタに変更 ・CPUの種類によってOpenMPの並列処理の同期が保障されない場合があるので、リストアイテムの削除/メモリ開放のループの並列処理を全て削除 ・メッセージにフックかけて横取りするアプリ対策を追加 ・スクリプト(別スレッド)からのアプリケーションの実行を横取りするくせに、自分でCOMの初期化をしてないソフトへの対策を追加 ●メニュー定義拡張 ・DROPTABLISTコマンドを追加 ・MOVETABLISTコマンドを追加 ●スクリプト拡張 ・RemoveSelectItemsコマンド追加 ・AppendSelectItemコマンド追加 ・GetSelectItemsコマンド追加 ・FolderJumpで動作種別3を追加 ・FileJumpで動作種別3を追加 ●AsrLoad.exeの/Scriptオプションの拡張 ●コンパイラオプションの変更 ・64ビット版のみ速度優先の最適化に変更した Ver.7.2.0.0 ●リスト描画の抜本改修 ・ディレクトリへの接続が確立する前から風車アニメーションを動作させるように変更 ・アイコン画像取得スレッドをリストから分離し、結果の受け取りと結果を保証しないようにした ・詳細情報の取得でタイムアウトするようにした ●並べて表示 ・項目の種類、ファイルサイズが非表示で、2行以上のスペースがある場合にファイル名を折り返して複数行で表示するように変更(折り返せるか否かはフォントサイズ依存) ●ディレクトリ内検索 ・バー上に結果テキストの表示の追加 ・次を検索(Enter)のボタンを追加 ・前を検索(Shft+Enter)のボタンを追加 ・再色分け(Ctrl+Enter)のボタンを追加 ●入力補完 ・アドレスバーなどの入力補完コンボボックスで、ftp://などのパス表記の際に入力補完文字を/にするように変更 ●不具合修正 ・同時にキーレイアウトファイルを読み込もうとすると失敗する不具合の修正  (故意に読み取り禁止でファイルロックしない限り再現不能) ●表示系の情報の最適化 ・詳細/コンテンツ/並べて表示で仮想名称を2重管理していた(1つにまとめて省メモリ化) ・詳細一覧で仮想名称を2重管理していた(1つにまとめて省メモリ化) ・詳細一覧で実体を持たないアイテムの種類をセットしていたのを削除(簡易詳細用なので削除して省メモリ化) ●スクリプト修正 ・2項以上の代入コマンドの1項目をトリムして判定するように変更 従来 ○var z = random,C:\ ×var z = random ,C:\ 今回 ○var z = random,C:\ ○var z = random ,C:\ ・変数への代入コマンドのRandomでワイルドカード指定ができるように変更  ?,*が存在しない場合は、ディレクトリ指定とみなして末尾にワイルドカードを自動付与することで既存仕様をフォローしている 従来 ×var z = random,C:\windows\*.log(C:\windows\*.log\*と見なされる) ○var z = random,C:\windows\ ○var z = random,C:\windows 今回 ○var z = random,C:\windows\*.log ○var z = random,C:\windows\(末尾に*を付与と等しい) ○var z = random,C:\windows(末尾に\*を付与と等しい) ●その他 ・スレッド優先順位の調整 ・監視スレッドの破棄処理を調整 ・復元スクリプトの生成処理が冗長だったのをまとめた ●次版以降の準備  スクリプト、メニュー定義などの拡張を行っていますが、詳細は次版以降で展開します。 Ver.7.1.5.0 ●バーのアイコンサイズの切り替え ・タブバーの高さの反映タイミングを起動時のみに変更 ・アドレスバー周りのボタンサイズを起動時に調整するように追加 ・タブバーのツールバーのボタンサイズを起動時に調整するように追加 ・ボタン画像の影を調整 ●その他 ・アドレスバーの入力内容からジャンプする際に、前後のスペースをトリムするように変更 ・画面分割時の再描画を高速化 ・フォルダーバーのツリーのにアタッチした仮想ツリーに対してフォント指定を追加 ・各種コンポーネントへのフォント適用をまとめた ・アイコン取得スレッド制御の安定性の向上の改善 ・アイコン取得の試行系のメソッドのモジュール結合密度を下げる改修 ・配布ファイルから古い画像ファイルの削除 ●不具合修正 ・画面分割して反対側のペインが仮想フォルダの場合に、外部コマンドのターゲットが次のタブになってしまう不具合の修正 ・スクリプト実行後にメモリの開放忘れが発生する場合がある不具合の修正 ・アイコン、アイコンのみ、並べて表示で上下の階層移動の際にフォーカス位置が表示されない場合がある不具合の修正 ・ツールチップで変な日本語があったので修正 ●更新ソフト(UpdateAsr.exe) 【全体】 ・ランタイムのインストールを更新ウィザードの1ページ目に移動 ・怪しい英語表記をたくさん修正 【メンテナンス】 ・バー情報の削除で成否のメッセージの追加と、成功した場合にダイアログを閉じる処理を追加 【更新処理の操作手順を全面的に改修】 ・更新のための情報収集をステップごとにウィザードページへ移動 ・更新ファイル一覧で、チェックを全て外すボタンの追加 ・処理結果のメッセージでエラーの有無を色塗りして目立たせるようにした ・誤解を招きそうな更新結果は、全部失敗扱いの表記に改めた ●MoveFolder.exe ・サーバー名指定のジャンプができるように修正 ●Seeker.exe ・ターゲットバーから埋め込みリネーム属性を除去 Ver.7.1.0.0 ●サポートOSの変更 ・OSのバージョンチェック方法を作り直した ・OSのバージョンチェックでサポート対象外の場合、メッセージに検出したOSの識別番号を表示するようにした ・不明なOSの場合、全ての処理をWindows10以降と仮定するように変更 ・Windows 10 RS1対応 ・Microsoft社のサポート切れに伴い、今後の動作確認OSからWindows 8を削除  (当面はWindows server 2012が残っているのでサポート対象からは外れませんが、サービスパック扱いであるWindows 8.1への移行を強く推奨します) ●フォルダー設定の運用方法の改善 ・フォルダ設定が適用されている場合であっても、元の表示モードを保存するように変更 ・各種フォルダ設定の適用タイミングを以下に限定するように変更  上下階層へ移動  進む、戻る、履歴メニュー  ツリークリック時の連動  スクリプトから呼ばれたジャンプコマンド  Fin、AsrLoad、アドレスバーなどから呼ばれるフルパス指定  各種の新規で開くコマンドなど ※フォルダ設定が適用されていても、並び順/表示モード/アイコン変更などを一時的に適用させることができます。 ●タブバー ・選択右クリックメニューの開く系コマンドを階層化した ・下位階層を新しいグループで開くコマンドの追加 ・下位階層を新しいタブで開くコマンドの追加 ・大きいツールバーアイコンを使用している場合、タブの高さを1.5倍にするようにした(タブ幅の自動調整時に反映) ●オプション ・設定ページのツリーの階層を増やして並び替えを行った 【全体】 ・適用ボタンの追加 【アイコン取得ページ】 ・新規追加 ・アイコン取得のタイムアウト設定を追加 ・アイコン画像の取得スレッドの設定を追加 【タブバー】 ・タブの切り替え時に点滅させるタブバーの設定を追加 【キー割り当て】 ・キー割り当て画面の初期表示を、現在のキーボードセットになるように変更 ・キー割り当て画面でキーセット、修飾を切り替えた際に現在の選択位置を保持/表示するように変更 ●レジストリ読み取り処理の改善 ・空文字をデフォルトとみなす動きを見直した ・読み取った結果の取得の際のメモリ転送量を大幅に減らして高速化した  (1回当たりμ秒単位で自己満足の世界だけど、チリツモ効果で起動速度などは多少影響していると思う気がするレベル) ●スクリプト ・試験実装していたFileCreateOpenを削除 ・試験実装していたFileWriteWBomを削除 ・FileOpenコマンドによるファイルオープン時のエラーメッセージはOSのものをアレンジして使用するように変更 ・CheckGrammarでエラー中断した場合に処理を完全に終わらせない迂回方法があったので、この迂回を使用禁止にした ●スクリプト追加 ・FileOpenModeオプションの追加  直後のFileOpenコマンドに対して、ファイルオープンモードを指定します。  Includeで別のスクリプトファイルにまたがることはできません。 FileOpenMode=0(未指定)・・・追記モードでファイルを開きます。 FileOpenMode=1・・・新規作成モードでファイルを開きます。 ※新規作成モードの場合、既にファイルが存在する場合は警告なしでファイルサイズが0になるので十分ご注意ください。 ※直後のFileOpenにしか影響を与えないので、一度FileOpenを実行してしまうと未指定状態に戻ります。ご注意ください。 ・BomOutオプションの追加  直後のFileWriteWコマンドに対して、先頭にBOMを出力するか否かを指定します。  Includeで別のスクリプトファイルにまたがることはできません。 BomOut=0(未指定)・・・BOM出力なし BomOut=1・・・BOM出力あり ※直後のFileWriteWにしか影響を与えないので、一度FileWriteWを実行してしまうと未指定状態に戻ります。ご注意ください。 ●FirstSetting.exe ・インストール結果の表示を追加 ・エクスプローラ風の設定セットのインストールオプションの追加 ●隠し機能 ・1分放置していると動作するアニメーション画像の読み込みパスが、スレッドのステータスバーアニメーションの設定値を参照していた不具合の修正 ・ネットワーク上であってもステータスエリアにディスクサイズを表示する設定の追加  唐突にネットワークが切断された場合、環境によって数分間応答を返さないので危険な設定と言う扱いです [HKEY_CURRENT_USER\Software\AMA_Soft\ASR\Main001\ListDraw] "NetworkDiskSize"=dword:00000001(初期値0、無効) ●その他 ・セキュア関数に全部置き換えてコンパイル警告を全部消した ・スクリプトの自己改竄の防止方法を変更し、同一スクリプトを同時実行できるようにした ・CheckGrammarのテキストにエディタによるデバッグ編集が行えない制限が付いていたので、これを解除 ・スレッド管理方式の変更に備えて、アイコンやオーバーレイアイコンの情報を直接制御できないように変更 ・ビットマップボタンで画像が小さくても、大きいサイズのボタンを生成できるように拡張した ●高DPI環境対策 ・ツールバーアイコン画像がずれる問題への対処として、Ver.7.0.0.0で実施したサイズ拡大をやめた ・オプション画面のレイアウトを全て見直した ・拡張リネーム画面のレイアウト見直した ・フォントの設定でDPI値を計算に含めるようにした  本体のリスト/各種バー、サムネイル、プレビュー、Seeker、Txvが影響を受けます ・アドレスバー周りのボタンの当たり判定やサイズを若干大きくした ●不具合修正 ・タブ共通と、タブバーのヘルプ呼び出しが逆になっている不具合の修正 ・縦に並べて表示と横に並べて表示のアイコン画像が逆になっている不具合の修正 Ver.7.0.0.0 ●VCランタイム変更 ・開発環境をVisual studio 2015 Update 1に変更 ・配布書庫作成用の7zjpを最新版に変更 ・FirstSetting.exe、UpdateAsr.exeからMS社のVisual Studio 2015 Update 1 の Visual C++ 再頒布可能パッケージのダウンロードページに飛ぶ際のURLを変更  (いつ変更されるか不明なので当サイトからリダイレクトするように変更した) ・Update 1によりCPUによってコア数を間違えるライブラリ不具合があるので、並列処理のスケジューリングを暫定でやめた ●デザインの変更 ・配色の微調整 ・標準ツールバーアイコンのボタンサイズを23×23→26×26に変更 ・ツールバーアイコン画像を、Visual Studio 2008世代のものを2012~2013世代のものに変更 ・アドレスバー周りのボタンサイズを若干大型化 ・誤タッチを減らすためにユーザー定義バーの表示が一覧でない場合(アイコンモード)のレイアウトを横に広げた ・黒テーマの場合の配色調整 ●メインメニュー変更 【表示】 ・バーのスタイル変更のポップアップメニューにセパレータを入れた ・実体モード用であったコマンドを分散させた ・外観系のコマンドを全て削除 ・簡易詳細を削除 【編集】 ・「フォルダーへコピー」を初期メニューに無いコマンドへ移動 ・「フォルダーへ移動」を初期メニューに無いコマンドへ移動 【表示】 ・「フォルダ設定」を初期メニューに無いコマンドへ移動  オプションで一元化した方が分かりやすいという判断 ・ディレクトリ内検索の表示切替コマンドの追加 ・ステータスバーなどを階層化 ・ドッキングウィンドウのタイトル/ツールバーを1つの新設の「ドッキングウィンドウのスタイル」にまとめた ・並べて表示の動作を変更 【ツール】 ・2画面モード削除 ・ここからPowerShellコマンドの追加 ・タブレットモード切替コマンドの追加(_ChangeTabletMode.txt呼び出し) ・デスクトップモード切替コマンドの追加(_ChangeDesktopMode.txt呼び出し) 【ウィンドウ】 ・ショートカットXが2個ある不具合の修正 ・1~9のウィンドウ切り替えが自動挿入されないように、ウィンドウ整列系のシステムコマンドを階層下に配置した ●初期メニューに無いコマンドの変更 ・選択アイテムに隠し属性を付与するを追加 ・画面分割の際にパスを入れ替えるを追加 ・画面分割の際にアクティブペインのパスにそろえるを追加 ・ディレクトリ内検索へフォーカス移動 ・アイコンサイズ増/減コマンド追加 ・表示モード送り/戻しコマンド追加 ・ソートメニューの表示コマンド追加 ・アイコン種別メニューの表示コマンド追加 ・表示モードメニューの表示コマンド追加 ●表示モード設定 ・簡易詳細を削除 ・並べ表示(縦)の選択肢を削除 ●オプション 【全体→外観→色・フォント】 ・協力者が現れなかったので、色弱の方向けの開発協力者の募集を撤去 ・スキンテーマの設定を追加 ・ディレクトリ内検索の色指定追加 【リスト→初期値】 ・簡易詳細、並べて表示(横)の削除 【リスト→フォルダー設定】 ・簡易詳細、並べて表示(横)の削除 【リスト→モード依存】 ・項目の種類/再生時間の表示をOFFにする ・ファイルサイズの表示をOFFにする ・「項目の種類」には拡張子のみ表示オプションの追加 【リスト→マウス】 ・左ボタン長押しでコンテキストメニューの表示を削除 【インターフェイス→キー割り当て】 ・2画面モードを削除 ●キー割り当て ・Ctrl+Sをディレクトリ内検索へフォーカス移動に割り当て ・コマンドモード、インクリメンタルサーチモード、2画面モードの「F11」の初期値を削除 ・タブレット支援バーの表示切り替えを「6」に割り当て ・インクリメンタルサーチモードのEscを未割り当てに変更 ●ディレクトリ内検索の追加 ●タブレット支援バーの追加 ●アイコン取得周りの性能改善 ・小アイコン、中アイコンをDPI対応にした ・アイコン取得スレッドの中断ロジックの精度を向上 ・性能向上のための検証を行いやすいように、アイコン取得方法をブロック構造にした ・IShellIconによる取得の場合、失敗したら条件を変更してリトライするのではなく失敗を見越して処理分岐するように変更 ・アイコン取得/縮小画像取得後の更新は、逐次更新するように変更(縮小画像中のときだけやっていたものを全てに適用) ・アイコン、オーバーレイアイコン、詳細情報取得の更新リトライ回数を減らした ・Vistaではシステムキャッシュを優先的に使用するように変更 ・Windows7以降では、システムキャッシュを優先使用し、システムマップからインデックスを積極使用するように変更 ●フィルタ ・Ctrl+Sでディレクトリ内検索へフォーカス移動する機能の追加 ・フィルタの説明テキストを除去 ●スクリプト 【パス文字列、文字列操作】 ・GetPathコマンド追加 ・GetNameコマンド追加 ・GetExtコマンド追加 ・RemoveLastSeparatorコマンド追加 ・SubStringコマンド追加 ・Lengthコマンド追加 【情報取得系】 ・GetSystemMetricsコマンド追加 ・MainWindowPositionコマンド追加 【タブレット支援バー関連】 ・OperationModeコマンドの追加 ・TabletModeコマンドの追加 ・TabletBarTextコマンドの追加 【置換マクロ追加】 ・?State:SlectionArea?・・・ディレクトリ内検索の表示有無 ・?State:OperationMode?・・・デスクトップモードかタブレット支援モード ・?State:TabletMode?・・・タブレット支援モードのモード 【その他のスクリプト】 ・UBJumpでルートパスへ移動できるように変更 ・UBJumpの有効文字列の判定処理を厳密に行うようにし、走査に失敗した場合の処理を追加 ・UBJumpコマンドの10番をタブレット支援バーでフォルダ移動するコマンドにした ・タブレット支援バーの表示有無の置換マクロを追加(?State:TabletAssistBar?) ・MoveWindowコマンドの引数で変数を適用するように変更 ・Icon/Runコマンドのアイコン画像を取得する際に、環境変数および、As/R固有の定数置換マクロが有効になるように変更 ●初期ツールバーを追加 ・初期ツールバーを6個追加 ●その他 ・旧型プラグインのインターフェイスを削除 ・左ボタン長押しでコンテキストメニューを表示する機能の削除 ・ディレクトリ内検索の実装までのつなぎであった、アドレスバーへのテキスト+Enter/Shift+Enterで前後の候補へ移動する機能の削除 ・ウィルススキャンの種類によって、アイコン取得速度がやたらと遅くなる環境対策としてキャッシュを優先使用するように変更 ・スクリプトのスレッドカウンタを2→1になるように変更 ・ドライブアイコンの生成速度を向上(通常はキャッシュがあるので、さほど恩恵はない) ・ウィンドウ管理バーのアイコン描画を高速化 ・ステータスエリアのソートメニュー表示に定義を参照するように変更(特殊なメニューのため表示位置以外のカスタマイズはできない) ・誤字修正 ・本体および関連ツールのリソースDLLの表記の統一、ショートカットの欠落・重複を修正 ・同梱のテキストドキュメントに、現在のMS社のランタイムのダウンロード先URLを書きようがないので誘導方法を変更した ・ステータス文字列の制御をカプセル化した ・簡易詳細の設定を読み込んでいたのを削除 ・IShellItem2を用いた表示テキストの取得の事前準備処理を削除 ・デスクトップのIShellIconを保持し続けなくて良いように修正 ・未使用APIのリンクを削除 ・最適化オプションの変更 ・分割ペインの生成処理を改善 ・コンパイルオプションを調整 ・リストからアイテムを削除する際に開放忘れが発生するパターンがあった不具合の修正 ・アイコン画像の取得をUIスレッドで行っていた不具合の修正 ・タブバーを切り替えた時に、切り替えたタブを目立たせる目的で点滅させるようにした ●Brws.exeの強化(HTMLビューア) ・IE7互換モードコマンド追加 ・IE8互換モードコマンド追加 ・IE9互換モードコマンド追加 ・IE10互換モードコマンド追加 ・IE11互換モードコマンド追加 ●FirstSetting.exeの改修 ・タブレット支援バー関連のスクリプトのインストール処理を追加 ●更新ツール ・タブレット支援バー関連のスクリプトの更新処理を追加 ●アンインストーラー ・Unreg.exeで終了時にメッセージを表示するように変更 /////////////////////////////////////////////////////////////////////////////////// // Ver.6.x系 /////////////////////////////////////////////////////////////////////////////////// Ver.6.5.5.0 ・メニューエディタから、テキストエディタで編集しようした時に呼ぶスクリプト(Editor.txt)のパスを間違う場合がある不具合の修正 ・FirstSetting.exeの5ページ目のレイアウトを調整した Ver.6.5.4.0 ●不具合修正 ・Windows7以降という条件にWindows10が含まれて居なかった不具合の修正 Ver.6.5.4.0 ●不具合修正 ・Windows7以降という条件にWindows10が含まれて居なかった不具合の修正 Ver.6.5.3.0 ●不具合修正 ・誤字修正 ・ユーザー定義バーのコマンドメニュー内の更新とキャッシュ再構築コマンドが動作しない不具合の修正 Ver.6.5.2.0 ●不具合修正 ・Unreg.exeでユーザー定義フォルダ、デスクトップのショートカット削除に失敗する場合がある不具合の修正 ・あえてロックしていた場合など上記処理に失敗した場合のエラーメッセージを追加 Ver.6.5.1.0 ●不具合修正 ・ファイルにドロップでフォルダ作成モードを覚えない不具合の修正 ・フォルダ設定が適用されていて、そのフォルダから移動した先も同一設定であった場合、終了時のタブの復元パスを間違えるケースがある不具合の修正 ・フォルダ設定でソート順を覚えない、設定ダイアログへ反映されない不具合の修正 ・誤字修正 Ver.6.5.0.0 ●オプション ・フォルダ設定をオプション画面内に移動 ・フォルダ設定で、ワイルドカード指定の追加 ・レイアウト微調整 ・語句の統一 ・設定画面なのでショートカットを削除 ・リストにシングルセレクト属性を付与する設定の追加 ●オーバーレイアイコン描画の変更 ・イメージを合成するのではなく、別途オーバーレイアイコンを上書き描画するように変更 ・縮小画像の場合でもオーバーレイアイコンが表示されるように変更(以前と異なり、サイズは小固定で表示) ・時間がかかると返ってきた場合は、以降のすべてオーバーレイアイコンの取得をあきらめるように変更 ・画面分割時のサイズ比較、日付比較のオーバーレイアイコンは右下に表示するように変更 ●応答性の改善 ・一覧の破棄もバックグラウンド処理に含めるように変更  (一覧の表示性能は落ちたが、応答性能が向上) ・スレッド停止の待機メッセージを走査、更新、アイコン取得と分けて表示するようにした ・一覧生成でキャンセルしたら、途中まで走査した情報を全部破棄するようにした ●不具合修正 ・FirstSetting.exeで開く使用許諾のページが間違ってた(Ver.4系)不具合の修正 ・似ている名前のフォルダーへコピー/移動コマンドがWindows10だとレイアウトが崩れて見えるので調整 ・アイコン/アイコンのみモードの場合、表示モード設定でアイコン表示が切り替わらない不具合の修正 ・SUBSTコマンドで作られたネットワークドライブである場合にネットワークと認識できない問題への対処 ・管理者権限を乗っ取られた状態でのエクスポートコマンド実行時の脆弱性の修正  (念のため詳細手順は伏せますが、前提条件が「OSが乗っ取られ済みであること」なので深刻になりすぎる必要はありません) ・_Filter.txt内の誤記修正 ・ここからコマンドプロンプト実行時の脆弱性の修正  (念のため詳細手順は伏せますが、前提条件が「OSが乗っ取られ済みであること」なので深刻になりすぎる必要はありません) ●SUBSTコマンド関連のトラブルを想定した仕様変更 ・DriveInfo.exeで論理デバイス名称を表示する機能を追加 ・アドレスバーの背景の色変えロジックを簡易的なものではなくリスト生成の解析結果を使用するように変更 ・ステータスエリア文字列の生成ロジックを簡易的なものではなくリスト生成の解析結果を使用するように変更 ●スクリプト ・ラベルの重複エラーメッセージを変更 ●隠しコマンドの追加 ・新型のコマンドプラグインインターフェイスの追加 ・画面分割されている場合に、双方のパスを入れ替えるコマンドの追加(ID:35820) ・画面分割されている場合に、双方のパスをアクティブなパスに揃えるコマンドの追加(ID:35821) ・選択アイテムに隠し属性を付与するコマンドの追加(ID:35206) ※カスタマイズ情報を失わないように、Ver.7までは初期メニューにない機能にも追加しません  コマンドを使用する場合は、スクリプトのPostmessageコマンドをご利用ください ・メッセージ定義ファイルに画面分割されていない旨のメッセージを追加(ID:62473) ●その他 ・選択ディレクトリをフォルダーバーに追加コマンドで、何も選択していない場合は現在のフォルダーを対象にするように変更 ・アプリケーションの概観のスキン切り替え処理を簡略化 ・ステータスエリアにアイコン/その他情報の取得時間の表示をしないようにした ・ツール→チェックボックス→アイテムチェックの動作を空欄クリックで全てのチェックが外れるように変更 ・アイコン取得用のスレッドでベンチマーク用のタイム取得処理を削除 ・アイコン取得用のスレッド中断した場合に、中断中のアイテムだけでなくリクエストを発行したもの全てを中断扱いにするように変更 ・アイコン取得の取得条件を厳しくして、再取得回数を減らした ・ステータスエリア文字列で計算量を若干減らした ・起動時の設定読み込み順を入れ替えて、起動時のディスクアクセス量の削減と高速化 ・オプションでOKボタンを押した時の設定反映の速度を大幅に高速化 ・バージョン情報画面からのバージョンチェックはVersionCheck.exeを呼び出すものに統一した ・フォルダ作成メソッドでシェル通知を厳密に行うように変更した Ver.6.4.0.0 ●テキスト幅設定の簡略化 ・「詳細一覧」「一覧」「並べて表示」のテキスト幅の設定を分離した ・リストごとにテキスト幅情報を保持するのをやめて、オプションの設定に一元化して使いまわすように変更 ※リストでの複数行表示などで重要度が下がったことも要因もあり、個別に一時的にテキスト幅の設定をするという使い方はできなくなりました 【表示モード設定】 ・リストのテキスト幅設定を削除 ・「テキスト幅設定」ボタンを追加(オプションの「モード依存の表示」ページを開く) ・「新しくウィンドウを開いた時の初期値として保存」ボタンを削除 ・「初期値設定」ボタンを追加(オプションの「初期値」ページを開く) ・「制限事項を理解した上で、隠し機能を有効にする」チェックボックスを追加 ・隠しモードの切り替え選択肢を追加 ・アイコン指定をコンボボックスからラジオボタンに変更 【スクリプト】 ・ListInnerParamでの一時的な値のセットは、全てのタブに適用されるように変更  反映されるファイル名のテキスト幅は、アクティブタブの表示モードが採用され、「詳細一覧」「一覧」「並べて表示(横)」「並べて表示(縦)」以外の場合は無視される 【オプション】 ・リスト→モード依存の表示に各種テキスト幅の設定を追加 ・並べて表示に「情報取得に時間のかかる項目も表示」の設定を追加 ●リストの表示初期値の設定画面を追加 ・リスト→「初期値」ページを追加 ※現在の状態を初期値にするという使い方はできなくなりました ●オプションのカテゴリ移動 ・リスト→動作「リストの初期フォルダ」を「初期値」に移動 ・リスト→動作「一覧に表示できる上限数」を「表示共通」へ移動した ※申し訳ありませんが、設定カテゴリの変更の場合は設定の引継ぎができません ●オプションその他 ・全体→「色とフォント」/「スキン」を、「概観」という階層の下にまとめた ・詳細一覧/簡易詳細の拡張子を付与する設定の文言を修正 ●暫定実装 ・新型プラグインインターフェイスを追加 Ver.6.3.0.0 ●プレビューバー ・インデックスサービスを用いてテキスト化機能を削除 ・プレビューハンドラを用いてプレビューを試みる設定を追加 ※OSにコンポーネントがインストールされていると、Office文書、テキスト、PDF、動画などのメディア、連絡先、メール、HTMLファイルなどが対象になります ●ユーザー定義バー ・誤操作を少しでも減らすため、エクスプローラーテーマ適用をやめた ・複数選択できるようにし、複数のスクリプトを一度に処理できるようにした(リネームを除く) ・オプションに「一覧表示を使用する」を追加 ・オプションに「複数選択を使用する」を追加(一覧表示を使用するがOFFなら自動的にOFF) ●スクリプト関連 ・Ver.6.0で削除予告をしていた置換マクロの?ASK?を削除 ・ステータス系の置換マクロの予備を3つしか用意してなかったので、予約分を除いてカテゴリごとに5個ずつ予備を確保 ・以下の置換マクロを追加  ?State:SyncMove?・・・画面分割の際にフォルダー移動を同期するか否か(0/1)  ?State:SyncFocus?・・・画面分割の際にフォーカス移動を同期するか否か(0/1)  ?State:SizeCmp?・・・画面分割の際にサイズ/日付比較モードか否か(0/1) ●隠し機能 ・リストの表示モードで予備で用意していた「並べて表示(縦)」を動作するようにした(コマンドID:32908) ●不具合修正 ・ステータスメッセージ、マクロヘルパー、バージョンチェッカー、バージョン情報などで誤字を大量に修正 ・オプション→リスト→表示共通→アイコン取得方法で、シェルアイコン指定が飛んでいたのを修正 ●その他 ・コマンド定義ファイル制御で分割ペインの内部情報を扱えるように拡張 ・メインリストの右クリックメニューの発動を、WM_CONTEXTMENUからNM_RCLICKに変更した Ver.6.2.0.0 ●一覧表示のデザイン変更 ・「詳細一覧」「詳細」「簡易詳細」でテキストの高さを基準に2行以上スペースがある場合は、上詰めにしてテキストを折り返して表示するように変更 ●オプション変更 【全体→色・フォント指定】 ・初期値に戻す際のキャンセルを可能にして、警告メッセージを削除した ・「エクスプローラー風」ボタンを追加 ・「黒テーマ」ボタンを追加 ・「FDテーマ」ボタンを追加 ・「FILMTNテーマ」ボタンを追加 ・色弱の方向けのテーマボタンを4個追加 ※色弱の方向けのテーマボタンは、作者には適切な配色が分からないので開発協力を求めるメッセージが表示されるだけです。  Ver.6.5.0くらいまで置いておいて、全く反応がないようなら撤去します。 【全体→動作】 ・ドラッグヘルパーの表示設定の初期値をONに変更 【リスト→モード依存の表示】 ・単位を付与する/単位はKB固定/小数点以下を表示は「表示共通」へ移動して、全モードに影響するように変更 【リスト→表示共通】 ・アドレスバーの書式の設定を削除して、全てを実体名に固定に変更 ・履歴ボタンの表示動作の設定を削除して、全て表示に固定に変更 ●仮想モードと、実体モードの融合  以下の機能を仮想名モードでも有効になるように変更 ・フォルダサイズ計算コマンドを、全ての表示モードで動作するようにした ・サイズグラフを、全ての表示モードで動作するようにした ・日付の色分けを、全ての表示モードで動作するようにした ●不具合修正 ・イベントコマンド「プレビュー表示発生」でインデックス範囲外を参照してアサートを発生させていた不具合の修正 Ver.6.1.0.0 ●ヘルプ連動全般 ・全てのヘルプありダイアログのシステムメニューの表示状態、状況依存ヘルプボタンを付与するように揃えた  (今回追加したのはタイトルバー上の「?」ボタンで、ダイアログ画面内のヘルプボタンは混同しそうなので全て撤去) ・ヘルプがある本体および個別オプションのダイアログで、F1キー押下するとヘルプページを開くよう統一した ●設定のエクスポート ・注釈追記 ・ボタンに盾アイコン追加 ・権限昇格確認ダイアログを表示するようにした ●その他 ・既に開いていれば切り替える判定で、大・小文字を区別しないようにした ・ナビゲートロックされているフォルダーで走査エラーが起きた場合に更新できない動作を改善 ・状態文字列系のコマンドが発行された際に、前後のスペース除去と改行の除去をするようにした ・シェルモードの自動更新で、システムイメージリストの更新をスキップするようにした(元から処理できてない) ・画面分割されている場合に、ここから開く系のコマンドで、画面分割状態や類する分割特有モードも継承するように変更 ・画面分割+ナビゲートロックされている場合に、下位階層を開く/上位階層へ移動の場合、画面分割状態や類する分割特有モードも継承するように変更 ・画面分割+ナビゲートロック+同期移動の場合に、下位階層を開く/上位階層へ移動の場合、画面分割状態や類する分割特有モードも継承した上で同期移動するように変更 ●高速化 ・Windows7以上の場合、FindFirstFileを使用しないように、また検索バッファを大きくした  ディスクキャッシュが効いてない場合に15~20%くらい速度が向上  Fin.exeやフォルダサイズの計算、ユーザー定義バーの列挙などが代表的なところで、他にもファイルの存在有無チェックなどにも効いてくるので、あらゆる場面でレスポンスの向上が期待できる ・拡張子は大抵が半角英数字3~4文字なので、拡張子部分の比較を単語比較から文字コード比較に変更した  拡張子優先のソートは5~120%くらい速度向上、同じ拡張子が多いほど改善効果大 ●プレビューバー ・表示の切り替えの安定性の向上 ●隠し機能 ・プレビューバーでプレビューハンドラをスタック管理するようにしてExcel対策はできた  そうすると今度はメディアプレーヤーが残像を残すようになったのでGUIDをみて個別処理するようにした  OSやシェル拡張依存の部分が多いので、もう少し検証する意味で隠し機能扱いを継続する ●不具合修正 ・画面分割した状態で、オプションで色を変更/リスト-動作で変更してもリストが更新されないペインが発生する不具合の修正 ・カスタムソートの設定画面で、「記号や句読点などを無視する」が抜けてて設定項目の順番がずれたフラグを立てていた不具合の修正 ●スクリプト ・Speachコマンドの追加 Ver.6.0.0.0 【メインメニューの調整】 ●メインメニューに追加 ・ファイルにドロップでフォルダ作成(ツール→環境設定) ・ファイルをロックしたプロセスの検索(ファイル→情報) ・リンクの作成(ファイル→新規作成) ●メインメニューに移動 ・閉じたタブを再度開く(ウィンドウ→開く) ・現在のタブをグループ解除(ウィンドウ) ●メンテナンス系コマンド追加(メインメニューにないコマンド群に追加) ・サムネイルキャッシュの作成 ・巨大ファイルの作成 ・外部コマンドのレジストリ情報の削除 ●メインメニューから、メニューに存在しない項目へ移動 ・「システム情報コマンド」へ移動 メモリ情報 ディスク情報→システム情報コマンド ・「外部コマンドの実行」へ移動 Windowsのヘルプ コントロールパネル ごみ箱 ネットワーク マイコンピュータ ●メインメニュー名称変更 ・コマンドプロンプト→ここからコマンドプロンプト ・エクスプローラー→エクスプローラー ・画面分割系のコマンドをグループ化した 【その他メニュー】 ●リストの選択コンテキストメニューの追加 ・選択中のアイテムを開くコマンドを追加 ・リストの選択メニューに「選択ディレクトリをフォルダーバーに追加」コマンドの追加 ●リストで未選択のコンテキストメニューに設定項目の追加 ・表示設定カテゴリの追加 ・表示モード依存設定カテゴリの追加 ●ユーザー定義バー ・Alt+Enterで「スクリプトの種類を自動判定して設定」コマンド実行を追加 ・ユーザー定義バーの設定メニューに「カラム幅調整」コマンドを追加 ・「一旦閉じる+全てのタブ」で生成するスクリプトの、全て閉じるコマンドはナビゲートロックを無視するIDを出力するように変更 【各種バー】 ●フォルダーバー ・コマンドメニューにプロパティの表示コマンド追加 ・Alt+Enterでプロパティの表示コマンド実行を追加 ●ウィンドウ管理バー ・自動整列のモードの、ドライブでまとめる際にドライブレター以外にパスも考慮するようにした  (その結果、ディレクトリの位置関係が近いフォルダでまとめられる) ●フォルダーバー ・更新の際に、全アイテム削除/全ルートアイテム再挿入をしていたが、複数のルートアイテムが存在する場合に表示欠けするケースが確認できた。そのため再構築するように変更した。 ・ルートアイテムを追加する際に、ノードを展開しないように変更 ・ノード追加時に存在チェックを行うように変更(Windows7以降) ・フォルダーバーのトップレベルアイテムのカスタマイズの追加(バー→フォルダー) ●シェルのコンテキストメニューの改修 ・Windows7以上であれば非同期でメニュー生成するように変更(フォルダーバー/リスト) ・Shift+アイテムを選択して右クリックメニューで、拡張コンテキストメニューを表示するようにした(フォルダーバー/リスト)  OSの持ってる「新しいプロセスで開く」「コマンドウィンドウここで開く」「パスとしてコピー」などが表示される ・古いインターフェイスであるIContextMenu2を全部撤去 ・IContextMenu3/IContextMenu2の取得に失敗するがIContextMenuが取得できるフォルダーで、実行時に落ちるアイテムが存在する  そのため一律でメニューを表示しないようにした 【外部コマンド】 ●フォルダ移動(MoveFolder.exe) ・下位階層の候補操作はバックグラウンドで処理してキャンセルできるようにした ●バージョンチェック専用のコマンドを追加(VersionCheck.exe) ・新規追加 ●検索(Fin.exe) ・メニューのコピー/移動で対象パスが存在しない場合に作成するように変更 【機能追加】 ●追加コマンド ・ウィンドウを閉じる(ナビゲートロック無視)を追加(ID:35104) ・全てのウィンドウを閉じる(ナビゲートロック無視)を追加(ID:35113) ・名前(高速)ソート追加(ID:34090) ・カスタムソート追加(ID:34089) ・拡張子/カスタムソート追加(ID:34088) ・選択ディレクトリをフォルダーバーに追加コマンドの追加(ID:35514) ・画面分割時に、同名ファイルのサイズ/日付をチェックしてオーバーレイ表示するモードの追加(ID:35822) ・画面分割時に、リスト上のフォーカス移動を同期するモードの追加(ID:35823) ●設定の追加 ・ドラッグヘルパー表示(要再起動)(全体-動作) ・ウィンドウ幅に合わせてカラム幅を自動縮小(リスト-モード依存の表示) ・並び順を切り替えた時に現在のフォーカス位置を覚える(リスト-動作) ・ローカルのアクセスエラーでダイアログを表示(例:CDを挿入してくださいなど)(リスト-動作) ・タブの復元時に移動履歴を含める(起動速度の低下)(バー-タブ共通) ・復元スクリプト生成時に移動履歴を含める(バー-ユーザー定義) ・最近閉じたウィンドウの情報に移動履歴を含める(起動速度の低下)(バー-最近閉じたフォルダー) ・リスト→カスタムソートのページを追加 ・全体→バージョンチェックのページを追加 【その他】 ●高速化 ・CPUの二次キャッシュが2MB以上だと一覧生成速度のパイプラインヒット率が上がりやすくなるように調整(Core 2 Duo以降) ・ソート内でのメモリ転送回数をまとめてキャッシュのヒットミス確率を下げた(約0.2~0.8%高速化) ・実体パスの場合ソートで並列処理をするようにした(4コア8スレッドで約40~50%高速化) ・ユーザー定義バーのソート速度の向上 ・ソートの文字列比較APIを新しいものに変更(文字列比較するソート順のみ約40%高速化) ・ファイルの存在確認を速いAPIに変更 ・一覧表示での無駄な変数があったので削除 ・ライブラリ配下の名称は、並列処理を用いて相対指定で取得すると失敗することがあったので、絶対パス指定で取得をリトライする処理を追加 ・ユーザー定義バーのソートを並列化 ・ユーザー定義バーのソートをSTLから自前実装に変更 ・メモリ開放時のスレッド分割を、最大スレッド数に応じた静的なものに置き換えた ・ソート時のスレッド制御で、CPUの最大スレッド数に応じたスレッド数の制御を追加 ・フォルダ設定の判定で、設定のあるフォルダーを探しに行く処理が必要以上にメモリを要求していたのを修正 ●その他 ・選択中のアイテムを開くコマンドで、lnkファイルを選択していた場合はリンク先を開くように変更 ・オプションの全体→動作のCPU依存のチューニングで検証結果を上位100件まで表示させるようにした ・コントロールパネル配下のアイテムは無条件でシェル機能になるように変更 ・アイコン画像を素早く切り替えた際の安定性の向上 ・LPSHELLFOLDERの記述を全部削除 ・走査部分および基底クラスからIShellFoderを全て削除 ・更新キューの処理でロックできない場合に10回試行してダメなら諦めるように変更 ●不具合 ・フォーカス復元ありの場合で、一覧表示を中断で止めた場合にメモリリークが起こる場合がある不具合の修正 ・2画面モードのみ、リスト破棄のタイミングによって最近閉じたウィンドウに追加されない不具合の修正 ・画面分割した状態で、特定の条件かつ特定の環境でのみ最近閉じたフォルダに登録されない不具合の修正 /////////////////////////////////////////////////////////////////////////////////// // Ver.5.x系 /////////////////////////////////////////////////////////////////////////////////// Ver.5.8.2.0 ・フォルダーバーが一行選択の場合のクリック範囲を修正 Ver.5.8.1.0 ・フォルダーバー非表示の場合に新規ウィンドウを開くとタブのフォーカスが一致しなくなる不具合の修正 Ver.5.8.0.0 ●プレビューバー関連 ・OSのプレビューハンドラを用いてHTML/動画/テキストなど、コンポーネントさえあればPDF/Office文書などを表示する機能を隠し機能として実装  ※フォントなど一部例外有ります。またExcelの挙動だけ不安定なので使用する際には十分ご注意ください。 ・インデックスサービスを用いたテキスト化のレスポンス向上(フォルダや仮想フォルダは対象外にした) ・インデックスサービスを用いたテキスト化はWindows8で動作しないので、OS判定して設定を無視するように変更 ●レスポンス性能の改善 ・ネットワーク以外、アクセスエラーのダイアログを出さないようにした ・リストでの一覧生成時のアイテム列挙を非同モードにした ・一覧列挙中にキャンセルが発生した場合の帳尻合わせの処理数を減らして向上させた ・フォルダーバー連動、タブバー、ウィンドウ管理バー、リスト部生成/破棄時、次のタブ、Zオーダー順、ホイール回転などの選択制御を作り直した ・現在タブに切り替えようとしたとき、現在と同じタブか確認して動作するようにした ●速度に関する性能改善 ・フィルタヒット無しの場合のループ回数を減らして微妙に高速化 ・複数起動しない場合のキャンセルレスポンスの向上 ・起動時の描画範囲をリストのみからアプリ全体に変更 ・タブ構築の際のスタイル再設定回数の削減 ・LastTab2.datの字句解析速度の向上 ・各種バーのアイコンインデックスファイルの字句解析速度の向上 ・各種コマンド定義ファイルの字句解析速度の向上 ・10万ファイルを超えるほど大規模一覧が必要な場合にファイル上限を学習するようにした ・デリミタで区切られたテキストを分解して配列に格納する共通関数の高速化と省メモリ化 ●FirstSetting.exe ・インストールミスが相変わらず多いので初期ディレクトリを「C:\Asr」にした(C:\はWindowsディレクトリから求める) ・以前インストールに失敗した人用にFirstSetting.exeと同じディレクトリを指定するとエラーメッセージを表示するようにした ●FileInfo.exe ・アイコンのコピーする際に、コピーする画像を選択していない場合にエラーメッセージを出すようにした ・アイコンを列挙しているリストのレイアウトを調整 ・代替ストリーム名を列挙して置換する「$AlternateDataStream」マクロの追加 ●不具合修正 ・スリープから復帰したときに各種アイコンのインジケーターを初期化していた不具合の修正 ・キーエミュレートのPageUp/PageDownが正しく動作しなくなっていた不具合の修正 ・フォルダーバー上のコンテキストメニューを出しっぱなしでOSがスリープし、復帰後にそのメニュー内の特定のシェル拡張コマンドを実行すると落ちる不具合の修正 ・グローバルアトム名の取得の際にバッファオーバランを引き起こす可能性がある不具合の修正(OSの仕様上、悪用は無理と思われるが念のため) ・アドレスバーからIPv6表記でアクセスすると、ネットワークの死活チェックで誤認する場合がある不具合の修正 ・ネットワークアダプタが複数接続されている場合に死活判定に失敗する場合がある不具合の修正 ・リンクの作成コマンド(CreateLink.exe)で、新しいリンク名にプレフィックスに"link_"を付与していない不具合の修正 ●その他 ・ツリーからリストへ反映させるタイマーの起動を、SelChangeイベントの検出から、カーソルキー移動キーの押下に変更した ・XP用のマイドキュメントフォルダを取得していたのを削除 ・非推奨の古典手法で、単純型のITEMIDLISTの取得関数が残っていたのを削除 ・リソース文字列の取得に失敗した場合の補間処理を一部追加 ・単純型のITEMIDLISTの親ウィンドウをNULLに変更して同期性を減らした ・ファイルの新規作成時の処理をシェルインターフェイスに置き換えた ・FileNewEx.exeも同様 ・スクリプトテンプレートからの生成処理をシェルインターフェイスに置き換えた ・選択アイテムを登録も同様 ・ネットワークの死活チェックで問題が発生した場合、ステータスバーにメッセージを表示するようにした ・使ってなかったクリティカルセクションを削除 ・オプション内の一覧未選択エラーメッセージの表示をたくさん追加(編集/削除のいずれも統一されていなかったので全部出すようにした) ・オプション内のフォルダの実在存在チェックする場合のタイミングを改善 ・リストのアイコン取得スレッドで、積極的に未使用ライブラリの開放をするように変更 ・リストの未選択コンテキストメニューに、「選択アイテムにチェックを付与」が存在していたので削除 ・タブバーの描画幅を広げて表示文字数を気持ち増やした Ver.5.7.0.0 ●アドレスバーによるファイル検索機能の追加  アドレスバーで、パス記号が無い入力を行いEnter/Shift+Enterを押下すると、入力テキストの前後にワイルドカードを付与して部分一致検索を行う ●外部コマンドの追加 ・ファイルをロックしているプロセスの検索(LockProcess)コマンドの追加 ●フォルダ移動(MoveFolder) ・下位の候補を抽出して選択補完する機能の追加 ・「2文字以上かつパス記号なしの場合の下位フォルダーの候補の操作階層」の設定を追加 ・設定項目が増えてきたので、既存の設定項目を別画面に移動した ●その他 ・スクリプトのウィンドウ制御文字列の読み込みで汎用的な文字列を処理できるように調整 ・Windows 10 TP 9926対応 ・クラッシックテーマで見苦しいので、フォルダーバーのフォーカスがあるアイテムの描画をやめた ・性能計測用のクラスが無駄に高性能だったので機能をばっさり削って小型化した ・ユーザー定義バーでカーソル移動すると、環境依存でゴミが表示される環境があった問題への対処 Ver.5.6.0.0 ●タブバーの描画方法の変更 ・背景塗りつぶしの処理の分岐と無駄なメッセージ処理を削減して速度の向上 ・単純なオーナードローをやめて、全て自前での描画に入れ替えた ・テーマ指定でタブバーのタブ画像を読み込める処理を追加 ●外部コマンドのダイアログ表示をOFFにした場合にVistaだけ外部コマンドが動作しない件の暫定仕様を修正 処理開始前にダイアログを非表示に変更 ・FileCpMv ・FileDelete(速度優先のみ) ・SimilarCopy ・FileReproduction 初期化のみ動作変更なし ・FileRenameEx ・ChgImgFmt ●その他 ・アイコン画像の取得の中断が発生した場合に、以後リトライが発生しにくいように補完値をセットするようにした ・フォルダーの一覧生成に失敗する場合のステータスメッセージを拡充  ネットワーク先が不通(PING通らないネットワークパスなど)  列挙不能なパス(配下が空のライブラリなど)  サポート外のフォルダ(コントロールパネルのフォントなど) ・ファイル処理中の割り込み禁止フラグを除去した ・コマンド定義ファイルに、実装を取りやめた画面分割時の各種選択コマンドの記述が残っていたので削除 ・AsrLoad.exeのタイムアウト値の調整 ・ドライブ移動コマンド(Ctrl+L)の移動は、FILMTN風にカレントディレクトリに移動するように変更  (カレントディレクトリの移動は全タブ共通で、最後に開いたディレクトリになります) ●フォルダーバーのキー/マウス操作の調整 ・ツリーのクリックイベントの効率を向上 ●不具合修正 ・一覧のアイテムのロックが成功しても、ステータスバーにBusy!と表示する不具合の修正 Ver.5.5.5.0 ●更新ツールの機能追加(UpdateAsr.exe) ・インストール済み定義ファイルと、更新する定義ファイルを並べて閲覧できる機能の追加 ●フォルダ移動の機能追加(MoveFolder.exe) ・移動できないパスの事前エラーチェック追加 ・相対パスの補完機能を追加 ●調整 ・マウスホイール動作のメッセージジェネレーターへの調整 ・走査系の処理のCOMインターフェイスのポインタをスマートポインタに一部置き換え ・無駄なオーバーヘッドを削減して更新用インデックスの生成速度を4%くらい高速化 ・メッセージ定義63025を追加(「アプリケーションの再起動後に反映されます」) ・背景画像の設定画面で、入力ガイド、有効無効の切り替え、誤設定判定と入力エラーメッセージを追加 ・タブバーのデザインを微調整 ・各種イベント処理メソッドでオブジェクト生成のオーバーヘッドを削減 ●イベントコマンドの追加 ・リストの表示が完了した時のイベントコマンドの追加 ・プレビュー表示発生時のイベントコマンドの追加 ●不具合修正 ・既知の不具合「ツールバーを固定しても動く」の問題を解消(要再起動) ・初期フォーカス移動で横スクロールが必要な場合に、スムーズスクロールする問題を解消 ・背景画像で、起動時の座標指定と、並べて表示の場合に画像ファイルを読み込まない不具合の修正 ・アイコン取得の処理は速度の速いものから方法を変えて3回試行していたが、そのうち速い方の2個が機能していなかったので構成を見直した ・環境変数の展開関数が2種類あったので統合して、全部16KB文字まで変換するようにした ・各種「ここから開く」系のコマンドで、お気に入りタブNoも複製してしまう不具合の修正 ・Windows8以降で属性から取得するオーバーレイアイコン画像が正しくないので5.3.0時点の描画方法に戻した ・Windows8以降で日付の色変え描画が意図しない表示になっていたのを修正 Ver.5.5.0.0 ●新規外部コマンドの追加 ・外部コマンドのレジストリ情報を削除するコマンドの追加(SettingInitialization.exe) ●バージョン情報コマンドの機能追加(VersionInfo.exe)  サイト負荷が上がりすぎた場合は、予告無くサービスを終了します事をあらかじめご了承ください。 ・最新のAs/Rのバージョン番号を取得する機能を追加 ・ホームページを開く機能を追加 ・リリース版ページを開く機能を追加(バージョン情報取得時にURLを取得します) ・β版ページを開く機能を追加(バージョン情報取得時にURLを取得します) ●メニュー定義関連 ・メニューエディタの追加(Option.exe /M メニュー定義ファイル) ・MENUEDITコマンドの呼び出しを、スクリプトのEditor.txtからメニューエディタに変更 ・オプションのメニュー定義画面で、メニューエディタの起動を追加 ・メニュー定義のOPENコマンドを拡張してコマンドライン指定が可能になった ・コマンドライン指定に伴いメニュー定義読み込みの1行の上限を32KB文字に変更 ・各トークンごとに前後スペースをトリムするように変更(手入力が増える事が予想されるので記述ミスの緩和) ●スクリプト追加 ・BackgroundImageの追加 ・代入式でRandomの追加 ●ユーザー定義バー ・現在タブの復元スクリプトコマンドの追加 ・_UserBarAction.txt復元スクリプト/現在階層への操作の機能群をまとめた ・_UserBarNoSel.txt復元スクリプト/現在階層への操作の機能群を追加 ・ツールバー上の現在タブの一括登録の説明を変更 ●見た目の変更 ・輝度を上げるコマンド追加 ・輝度を下げるコマンド追加 ・背景画像の指定を追加 ・背景画像の輝度を上げるコマンド追加 ・背景画像の輝度を下げるコマンド追加 ・リスト上でShift+Ctrl+ホイール回転で、背景画像が指定されていれば背景の透明度を切り替えられるようにした ・リスト上でShift+ホイール回転で、As/R全体の半透明化を行うようにした ●MDIモード改善 ・MDIモードでウィンドウ位置を覚える機能を追加 ・復元スクリプトでMDIモードの復元を追加 ●その他 ・_ViewMode.txtにアイコンのみモードのコメントを追加 ・アイコンモードの場合のラベルテキストの描画を改善 ・背景画像の透明度を指定する設定を追加 ・ネットワークにアクセスする前に、ネットワーク先が有効か確認する設定の初期値をOFFにした ・再描画のタイミング調整で描画速度が約1~3%くらい向上 ・起動時に無駄なVista判定処理があったので除去 ・キー装飾+ホイールの動作を非同期イベントに変更してレスポンスを向上 ・オプションのレイアウト微調整 ●不具合修正 ・表示モード切替系のコマンドの実行後、ステータスエリアのアイコン画像が切り替わらない場合がある不具合の修正 ・リソース文字列の誤字修正 Ver.5.4.0.0 ●外部コマンドの新規追加  有用性の低いコマンドなので、メインメニューには表示されません。  キー割り当て、ユーザー定義バー、ツールバー、各種メニューなどに追加カスタマイズした上でご利用ください。 ・シンボリックリンク/ハードリンク/ジャンクションの生成(CreateLink.exe) ・指定フォルダ以下のサムネイルキャッシュの構築、OSメンテナンス的なツール(CreateTumbImg.exe) ・テスト用の巨大ファイルの大量生成(MakeBigFile.exe) ●その他 ・サムネイルキャッシュを使うのを止めてVista以降専用のインターフェイスを使うように変更(オプションのキャッシュ設定を削除) ・IME32.DLLを静的リンクに変更した ・システム全体に致命的な悪影響を及ぼすアプリがインストールされていると、右クリックメニューを開いた時に落ちる現象の緩和 ・ツリーの更新、再構築速度の向上、テキスト変換できないパスの再現性の向上 ・列挙不能パスの場合にステータスメッセージを表示するようにした ・外部アプリケーションからリストの描画属性を変えられると、実体モード専用のサイズバーの描画が崩れる問題へ対処 ・ユーザー定義バーの新規アイテムの名前生成処理をまとめた ・復元スクリプトの生成動作を改善 ・_UserBarNoSel.txtでタブ構成の復元スクリプトの作成(47026)、一旦閉じてタブ構成の復元スクリプトの作成(47027)を受け付けられるようにした ・マクロ入力ダイアログで一覧のダブルクリック動作を追加 ・スクリプト内で、数値→文字列への変換処理をまとめた ・オプションと本体のサイズが大きくなってきたので、exeサイズを優先するオプションに変更 ・PINGのクリティカルセクションがロックできない場合は即エラーにするように変更 ●スクリプト修正 ・以下の定義系コマンドを宣言済みの変数として扱い、includeで呼び出した外部スクリプトに値を引き継ぐように変更  また、各コマンドで各種変数を展開するように追加 CommandLineOption BootMode BootDir ShowWindow TimeOut ShowWindow RunWait MultiCommandMode SendInfoMode ShiftSilentMode Filter ExitLoopCount CheckGrammar OpenMode ●オーバーレイアイコン関連 ・合成アイコンの取得をやめ、自前で描画するように変更 ・縮小画像でオーバーレイアイコンを簡易的に表示するようにした ・アイコン1個に1秒以上かかったら、ステータスバーにメッセージを出して以降のアイコン取得をスキップするようにした ●スクリプト不具合修正 ・スクリプトの代入式の数値判定処理の不具合修正 ・スクリプトテンプレートのコメントの誤記修正 ・if文のFalse節の内部でif文が入れ子になっている場合に、入れ子のif文のブロックのelseを適切に認識できていなかった不具合の修正 ・スクリプトのforループ内でbreakで抜け、exitで中断する場合の不具合修正 ・「,」のある変数への代入文の場合、全てのコマンドに一致しない場合は代入文とみなすように変更 ●外部コマンド不具合修正 ・FileCpMvでファイルコリジョン時のリネーム処理で、使用不可文字を入力したときに再入力させずに失敗する不具合の修正 ●その他不具合 ・スクリプトなり定義ファイルなりで、特殊文字で加工されたファイルを読み込む際にバッファオーバーランが発生しうる脆弱性を修正 ・画面分割をしている場合にチェックボックスのモードを切り替えると、非アクティブビュー側が切り替わらない不具合の修正 Ver.5.3.0.0 ●スクリプト関連 ・State系の置換マクロの不要な処理を削除 ・スクリプトの変数定義をヒープ領域に確保して、メモリ上限値を引き上げた ・スクリプトのfilejump、folderjump、favoritejumpで仮想フォルダが指定できない不具合の修正 ・選択0個でSendInfoMode=1の場合、SendInfoMode=0とみなしてコマンド起動するように仕様を変更 ・置換マクロの?State:SyncMove?を追加(「画面分割時に同期移動を行う」のON/FF状態) ・スクリプトコマンドUpdateStateの追加(本体のみ有効) ・外部スクリプトを実行するスクリプトコマンドIncludeの追加 ・外部スクリプトを含め全て終了するExitAllコマンドの追加 ・外部ファイルを書き込みモードで開く/閉じる、FileOpen/FileCloseコマンドの追加 ・外部ファイルにASCIIコードで書き込むFileWriteAコマンドの追加 ・外部ファイルにUNICODEで書き込むFileWriteWコマンドの追加 ・変数の四則演算/代入/判定で16進数表記を数値とみなすようにした ・input/inputdir/inputfileでキャンセルされた場合、処理を継続し、変数に空文字を代入しない不具合の修正 ・input/inputdir/inputfileで初期値の指定を追加(入力初期値は省略可で、省略すると前回入力結果になる) ●FileRenameEx.exeで以下の置換マクロを追加 ・ドライブルートのリネームに失敗する不具合の修正 ・ファイルのアクセス日時系 ?AccessDate?(年-月-日) ?AccessTime?(時-分-秒) ?AccessYear?(年) ?AccessMonth?(月) ?AccessDay?(日) ?AccessHour?(時) ?AccessMinute?(分) ?AccessSecond?(秒) ?AccessWeek?(曜日(短)) ?AccessWEEK?(曜日(長)) ?AccessShellTime?(コントロールパネル表記) ・ファイルの作成日時系 ?CreateDate?(年-月-日) ?CreateTime?(時-分-秒) ?CreateYear?(年) ?CreateMonth?(月) ?CreateDay?(日) ?CreateHour?(時) ?CreateMinute?(分) ?CreateSecond?(秒) ?CreateWeek?(曜日(短)) ?CreateWEEK?(曜日(長)) ?CreateShellTime?(コントロールパネル表記) ・ファイルの更新日時系 ?WriteDate?(年-月-日) ?WriteTime?(時-分-秒) ?WriteYear?(年) ?WriteMonth?(月) ?WriteDay?(日) ?WriteHour?(時) ?WriteMinute?(分) ?WriteSecond?(秒) ?WriteWeek?(曜日(短)) ?WriteWEEK?(曜日(長)) ?WriteShellTime?(コントロールパネル表記) ●AsrLoad.exeで以下の起動オプション/スイッチを追加 /max・・・最大化状態で起動するスイッチ /min・・・最小化状態で起動するスイッチ /x・・・復元タブを無視するモードで起動するスイッチ /d・・・As/Rをアクティブにする起動オプション /script・・・スクリプト起動依頼の発行オプション /wildcard・・・フィルタ設定依頼の発行オプション /select・・・選択依頼の発行オプション /serch・・・シーケンシャルサーチの発行オプション ●共通部の改修  属性の表記をFD準拠にオリジナル仕様を加えていたものから、Windows7/8/Windows 2012 Server準拠に変更 ・リパースファイルr→L ・スパースファイルs→P ・スクラブファイルなし属性X追加 ・属性の表示優先順位を変更 ・簡易詳細で属性を左詰、サイズのヘッダを右詰に変更 ・エクスプローラーが対応済みだったので、サイズの単位でEB(エクサバイト)を使用するにした ●その他 ・自動更新の安定度向上 ・ArcPack.exeで機能しない「フォルダ作成時に確認する」が存在する不具合の修正 ・ArcPack.exeでタブオーダーがおかしい不具合を修正 ・Vista系で問題になっていた新しいAPIセットの親ウィンドウ管理方法を変更 ・オプションでサムネイルアイコンのサイズを変えた場合にリスト画面を更新するようにした ・MArcでテンポラリが削除できない時にエラーメッセージが表示される不具合の修正 ・コンテンツモード切替時の無駄な処理を削除 ・表示モードの定義を書き直した ・一覧で10万アイテム以下の場合にメモリの再割当てをしないようにしてアイテム数が多い場合の表示速度を向上させた ・FileRename.exeで5.10で機能自体は実装してたが「元に戻すを有効にする」を使用可能にした ・リストのアイテム1個当たり128ビット節約した  (自動更新での削除フラグ、チェックのステータス、通常/新しいファイル/切り取りの色塗りステータスを1バイトで表現するようにした) ・リストの簡易詳細/詳細一覧で、拡張子表示ありの場合に省メモリになるように改善 ・コンテンツモードのファイル名のエリアを220pix固定から、220pixとリストサイズ÷3の大きい方を採用するように変更 ・オプション画面のリソースIDの不整合と文言の一部修正 ・Windows 10 Technical Preveiew対応  従来版だとコンテンツモードの表示項目にフレーム幅が表示されない/レイアウト位置が違う  コントロールパネルの扱いが異なる点を補正  取得し損ねるインターフェイスの迂回処理を追加 ・更新処理時にデータがロックできない場合の再描画メッセージを暫定的に減らした ・ドロップハイライトの描画を高速化 ・隠し機能を少々追加 Ver.5.1.0.0 ●共通処理 ・SHFileOperation()の廃止 ・CreateDirectory()を、MArcと設置系のコマンドを除いて廃止 ・WinExec()の廃止 ・複数階層のパスを作成する際の問い合わせ/キャンセルする処理を削除  (MArc、MkDir、FileShortcut、FileCpMv、ArcUnPack、ArcPack) ・全ての外部コマンドを単独で使用できるように変更 ●拡張コピー/移動(FileCpMv) ・一括処理の場合にアンドゥ可能になった ・個別判定の場合にも可能な処理は一括でまとめて行うように変更 ・ショートカットキーを変更(A) ●拡張削除(FileDelete) ・ゴミ箱を使う場合に、As/Rやエクスプローラのからのアンドゥ操作が可能になった ・機能優先削除の場合で一括アンドゥが可能になった ●複製の作成(FileReproduction) ・複製の作成が1つのファイル処理で完結したので、途中でのキャンセルが容易になった ●圧縮ファイルビューア(MArc) ・巨大なテンポラリファイルが発生した場合の削除速度が向上 ●拡張リネーム(FileRename) ・処理後に個別にAs/Rやエクスプローラのからのアンドゥが可能になった(処理中断があるため、ここでは個別) ●一括ファイル名の変更コマンド(FileRenameEx) ・検索文字列の正規表現対応 ・処理後にAs/Rやエクスプローラのからのアンドゥ操作が可能になった ・上下への移動で候補の自動表示を追加 ・ファイル操作API入れ替え ・エディタ起動コマンドの追加 ・ビューアー起動コマンドの追加 ・リネーム(自動終了しないを追加) ・一覧から削除コマンドの追加 ・FileRenameExでショートカットキーのCtrl+A/Ctrl+ZをCtrl+PageUp/Ctrl+PageDownに変更 ・「正規表現を使う」チェックボックスの追加 ・正規表現でエラーになる文字列の入力の場合、エラー表示を追加 ●似ている名前のフォルダーにコピー/移動(SimilarCopy) ・処理後にAs/Rやエクスプローラのからのアンドゥ操作が可能になった ●画像フォーマット変換(ChgImgFmt) ・バックアップファイルのリネーム処理を一括処理するように変更 ●スクリプト拡張 ・if/endif文中に、elseの記述を追加 ・if/else/endifの入れ子構成の記述を追加  (ただしifのないendifは、CheckGrammar=1の場合に文法エラー引っかかるようになる) ・スクリプト内に「debug」と記載されている行が存在し、ScriptTrace.exeが起動している場合に連携する機能の追加 ・関連ツールにScriptTrace.exeを追加 ・関連ツールにFileFilterSelectSerch(ソース付き)の追加 ・「スクリプトの種類を自動判定して設定」を賢くした ●その他 ・SendToCompress.exeをUNICODEアプリケーションに作り直した ・SendToExtract.exeをUNICODEアプリケーションに作り直した ・オーバーレイアイコンの取得は、属性情報の方を優先するように変更 ・「アイコンのみ」モードのレイアウトを詰めて一覧性を向上し、表示属性を「アイコン」と同じにした ・リストの表示モードの属性管理を一元化した ・サイズグラフ、日付の色分けの色/幅を微調整 ・外部コマンドからのシーケンシャルサーチイベントの動作を追加 ・プレビュープラグインのAdobeReader.dll(x64版)を追加 ・ビューアーの初期スクリプトにPDFの記述を追加 ・_FolderBarAction.txtに名前の変更コマンドを復活 ・フォルダサイズ計算のコマンド実行後に、ステータスエリアの更新コマンドを発行するようにした ・リストの再描画時に一覧の数変更によるスクロール抑止フラグを付与 ・上位階層移動や、選択状態の復元時、フォーカス位置に要スクロールの際のチラつき(一瞬リストが崩壊してるように見える)を出ないようにしたが、スムーズスクロールが適用されるようになった ・Associate.exeでXP依存のコードを全て削除 ・Associate.exeに隠しコマンドラインオプションを追加(詳細はヘルプに記載しています) ・AsrLoad.exeとの通信文字列の削減 ・画面分割時の反対側のビューを取得する基底のメソッドを大幅に高速化 ●不具合修正 ・表示モード切替の際に、シンプルアイコンモード切替をしていなかった不具合の修正(アイコンのみに影響) ・チェックボックス付与の際に、シンプルアイコンモード切替をしていなかった不具合の修正(アイコンのみに影響) ・FileExportでFinとMArcの設定がエクスポートされない不具合の修正 ・ネットワークの死活チェックを行う際にバッファオーバランの脆弱性があった不具合の修正 ・FolderIconChange.exeを対象フォルダ不定で起動した場合のエラーメッセージが表示されない不具合の修正 ・フォルダーバーのコンテキストメニューからリネームできないのでOS処理の迂回処理を追加 ・タブ切り替えでフォルダーバーを連動させた場合、一旦表示するとフォルダーバーを非表示にしても切り替え速度が回復しない不具合の修正 ・1つのフォルダに1億より多くアイテム存在すると、全く表示されなくなる不具合の修正 Ver.5.0.0.0 ●全体 ・プラットフォームツールセットをV110に変更 ・OSのターゲットバージョンを6.0に変更 ・全てのウィンドウ制御系コマンドを初期メニューから撤去 ・260文字を超えるパスの環境変数展開ができない不具合の修正 ・260文字を超える相対パス指定を処理できない不具合の修正 ・OSバージョンを調べるAPIをVisual Studio2013でビルドできるものに変更 【本体】 ●XP用のコードの削除 ・Privilege.DLLを本体に埋め込んだ ・旧型ツリーの撤去 ・動的読み込みしていたロケールAPI、IME関連APIを静的に読み込むように変更(元々XP用の補完処理) ・動的読み込みしていたCOMインターフェイス関連のAPIを静的に読み込むように変更(元々XP用の補完処理) ・サムネイルキャッシュのインターフェイスを逐次開放しないように変更(元々XP用の補完処理) ・シェルアイコンインターフェイスを逐次開放しないように変更(元々XP用の補完処理) ・リストアイテムの列挙に失敗した場合の、リカバリー処理を全部飛ばすように変更(元々XP用の補完処理) ・全角インクリメンタルサーチの設定を削除(常時ON) ・「アクティブになった時にIMEをOFFにする」をオプションの全体→動作に移動 ・下位階層の260文字を超えるパスへ移動した場合に表示が崩れるのでエラーを表示するように変更 ・全ての埋め込みリネームの入力の有無判定でトリッキーなことをやっていたので、APIリファレンスに沿った処理に変更 ・OSが7/8の場合、デスクトップにはコントロールパネルが2種類存在するが::{5399E694-6CE5-4D6C-8FCE-1D8870FDCBA0}の方を表示するように変更  (リストから下位階層に潜れない代わりにエクスプローラで開く) ・全選択/全解除の動作速度を改善(特にアイコンモード) ・全解除の動作速度を改善(特にアイコンモード) ・アイコンモードで、画像サイズが16ピクセルより大きい場合はチェックボックスをアイコン上に重ねて描画するように変更(Vista以降の属性使用) ●その他 ・タブが存在しない場合にジャンプ系のコマンドが動作が発生した場合、未処理ではなく新しく開くように動作を変更した ・空き領域をダブルクリックして上位フォルダへ移動する機能を削除 ・空き領域をクリック/ダブルクリックした場合に起動するスクリプトを指定する機能を追加 ・全体にかかるインクリメンタルサーチの設定をまとめて、C/Migemoを使用する設定の追加 ・リストの上の「上位フォルダへ移動」ボタンの長押し/右クリックでパンくずメニューを出す機能の追加 ・リストのアイテムが無い状態で選択アイテムを取得しようとすると、Busyでキャンセル判定していた不具合の修正 ・メッセージファイルの参照で、ディレクトリトラバーサルが起こりうる不具合の修正 (テキストファイルの読み込みなので、悪用は無理だと思いますが一応) ・画面分割時に同期移動を行うコマンドを追加 ・コード分析をかけてMS社基準の不適切なコード記述を減らした ・フィルタエリアの背景色の塗り条件をフォーカス+設定ありきではなく、単純に設定値ありきに変更 ・ツリーバーの行間のピクセル指定を追加 ●ウィンドウ管理バー ・タブバーが非表示で、ウィンドウ管理バーが表示/自動非表示モードの場合は、次のタブ/前のタブコマンドの対象はウィンドウ管理バーになるようにした ・タブバーのマウスボタン設定を適用するようにした ・マウスボタンによる制御系のコマンドを15個追加 ・ツールバーの重ねて表示コマンドを削除 ●ユーザー定義バー ・スクリプト名として使えない文字を全てNULLに置換するように変更(全角文字は文字コードによって問題を起こしかねないため) ・下位階層を開く系のコマンドでソート指定が有効になるように変更 ・ファイル名として使えない文字を含む仮想フォルダーを、ユーザー定義バーに登録可能にした ・ドライブルートを仮想名称で登録するようにした 【スクリプト】 ●スクリプトへ制御構文の追加 ・変数宣言のVarコマンドの追加  (変数は四則演算、パターンマッチ、文字連結、対象ファイルの状態/属性検査などが可能) ・外部コマンドの終了コードを取得する実行コマンドの追加(Call/Exec) ・置換マクロが使用可能なRunコマンド互換のShellの追加 ・汎用メッセージボックスのMessageBoxの追加 ・無限ループにならないように最大ループ数を定義するExitLoopCountの追加 ・文法チェックモードのCheckGrammarの追加 ・既存の各種コマンドで、渡されたパラメータで変数展開する機能の追加 ・アプリケーション起動時の状態を定義するShowWindowの追加 ・タイムアウト値を定義するTimeOutの追加 ・EOFだけ大文字のみのコマンドになっていたので、大/小文字を同一視するように変更 ・ListInnerParam追加 ●制御構文 ・条件分岐用のif文の追加 ・制御行を移動するgoto文の追加 ・繰り返し用のfor/Next文の追加 ・処理中断のExit文の追加 ●置換マクロ ・38種ほど追加 ●その他 ・選択数が多い場合に警告メッセージを出す設定になっている場合、選択ファイルの置換マクロが無ければ表示しないようにした ・入力系置換マクロのダイアログのデザインを修正 【外部コマンド】 ●オプション(Option.exe) ・旧型ツリーの設定を全て破棄 ・XPのみ、Vista以降といった注意書きの削除 ・タブバーとウィンドウ管理バーの共通項目を分離 ・その他、本体の仕様変更に追従 ●初期設定ツール(FirstSetting.exe) ・XPのみ、Vista以降といった注意書きの削除 ●フォルダ移動(MoveFolder.exe) ・現在パスの表示を追加 ・相対パス指定で移動する機能の追加 ・1文字でドライブルートと補完する設定の追加 ●一括ファイル名の変更(FileRenameEx.exe) ・テストでNGの場合に逆順で試行するロジックの追加 ●文字コード変換(ChgTxtFmt.exe) ・Unicodeの場合はBOMを付与する設定の追加(iPhone用の追加) ・バックアップ破棄設定 ●画像フォーマット変換(ChgImgFmt.exe) ・変換済みファイルはバックアップを作成するように変更 ・バックアップ破棄設定 ●複製の作成(FileReproduction) ・進捗ダイアログのキャンセルをした場合に、以降のファイル複製を続けるか確認するダイアログ表示を追加 ●名前をクリップボードへコピー(FileNameCp) ・相対パスでのパス名の取得設定を追加 ●マルチメディアビューア(Seeker)  ターゲットフォルダーバーの機能追加 ・チップテキスト追加 ・ツールバーを追加 ・ソート系のコマンドを追加 ●展開(ArcUnPack) ・不正パスで展開に失敗の可能性がある場合の確認メッセージ文言が間違ってたが、ボタン押下後の動作の方を修正 /////////////////////////////////////////////////////////////////////////////////// // Ver.4.x系 /////////////////////////////////////////////////////////////////////////////////// Ver.4.8.2.0 ・メッセージファイルの参照で、ディレクトリトラバーサルが起こりうる不具合の修正 (テキストファイルの読み込みなので、悪用は無理だと思いますが一応) ・ArcUnPackで不正パスで展開に失敗の可能性がある場合の確認メッセージ文言が間違ってたが、ボタン押下後の動作の方を修正 ・ユーザー定義バーへのドロップしたターゲットのRun節を、ファイル末尾のものを採用していた不具合の修正(先頭のものを採用するのが本来は正しい) ・ユーザー定義バーへのドロップした結果をステータスバーのメッセージで表示するようにした ・http://とかftp://といったパス指定された場合、タブのドライブアイコンがHドライブとかFドライブになっていた不具合の修正 ・512文字を超えるフォルダを作ろうとすると落ちる不具合の修正 ・更新キューの処理でメモリリークが発生するパターンがあったのを修正 ・左ボタン長押しでコンテキストメニューの表示オプションの追加 ・スクリプト関連をVer.5からフィードバック Ver.4.8.1.0 ●不具合修正 ・表示モード設定で初期値として保存する際に、並べて表示とコンテンツモードが保存されない不具合の修正 ・自動更新で削除とリネームが連続した場合に自動更新キューで不整合を起こす可能性がある不具合の修正 ・リネーム対象が存在する場合にリネームしたという嘘のシェル通知を投げるソフト(具体的にはExcel 2012)の場合に自動更新キューで不整合を起こす不具合の修正 Ver.4.8.0.0 ●自動更新処理の改善 ・最適化処理の中断処理のレスポンスを向上 ・自動更新中断処理のレスポンスを向上 ・自動更新のリトライ処理の応答性を向上 ・更新イベントのキューへ積む際に1個前の処理が全く同じならキューに積まないように変更が、1個前だけじゃなく全部走査してた不具合の修正 ・自動隠しモードの場合のコマンド拒否リストからユーザー定義バーの更新/再構築、プレビューバーの各種動作コマンド/設定更新を除外に変更 ・ユーザー定義バーでツールチップ表示を追加 ・意図せずOpenModeの動作を変えていたのを修正 ・自動更新のメッセージキューの最適化で、上位に削除対象のイベントが発生した場合にそのイベントキューから除去しているが、削除イベントの追加をしていなかった不具合の修正 ・プレビューバーのクライアントエリアの操作を透過するように変更 ・タブバーのスクロールボタンが表示されていると描画のループが発生して負荷が上がっていた不具合の修正 Ver.4.7.5.0 ●自動更新処理の改善 ・更新イベントのキューへ積む際に、1個前の処理が全く同じならキューに積まないように変更 ・更新イベントのキューへ積む際に、ファイルの追加直後に属性変更を送ってくる場合にキューに積まないように変更 ・自動更新イベント処理時に、該当のITEMIDLISTが取得できない場合に再試行をやめて1回で諦めるように変更 ・更新イベントの処理時に、取得不能処理が連続する場合の最適化処理を変更 ・インデックスに無いファイルをリネームしようとした時には追加に置き換える処理の追加 ・インデックスにあり、実体もあるリネームをしようとしたときは削除に置き換える処理の追加 ●その他 ・スレッド閾値/フォルダーアイコンの廃止設定のオプションのレイアウトを修正(正式に廃止) ・ヘッダクリック時のソートで再描画処理を若干減らした ・XPを公式サポートのOS並みするための微調整多数 ・ユーザー定義バーでリネームに失敗した場合にメッセージボックスを表示するようにした(英語) ・FileDeleteの完全削除で失敗する場合の動作を改善 ・ネットワーク/仮想フォルダであっても、選択ファイルのサイズ/総サイズはステータスエリアに表示できるようにした  (速度優先で仮想フォルダとして扱う場合は、従来どおり表示されない) ・タブバーのドライブアイコンの取得方法を改善して、ウィンドウ管理バーと共通化した  (ウィンドウ管理バーはネットワークドライブのレスポンス改善漏れ) ●仮想フォルダーの並びが正しくない問題 ・仮想フォルダーのソートで、4/6番目のカラムのソートが正しくない問題の修正 ・ポップアップメニューで選択したカラムのソートにならない問題の修正 ・第二ソート処理の仕組みを修正して多くの項目が正しく整列される項目が増えた(ゴミ箱の種類/更新日時、ライブラリ配下のアイテムなどNG) ※残念ながら、複数の不具合の複合技のうち3つが解決して緩和しただけに過ぎないので既知の不具合の扱いは変わりません。  また本改修の影響で、実体のある仮想フォルダの並び順が変わっているので注意してください。(例:フォルダ優先時のデスクトップなど) Ver.4.7.2.0 ・貼り付けの際のステータスバー描画メッセージの最適化 ・リンクとして貼り付けの際のステータスバー描画メッセージの最適化 ・複数のタブへの貼り付けで、全部並列化していたので数が多いとクリップボード情報の取得ができない場合があった  UI部分をシングルスレッドになるよう修正 ・新型ツリーバーの破棄時に(アプリの終了/バーの再構築時)メモリの開放漏れがあったのを修正 ・リストの表示モードのアイコン画像を修正 ・オーバーレイアイコンの取得方法の改善 Ver.4.7.1.0 ・タイマーイベントの設定の有無を判定するのに、1分の設定のみを参照していた不具合の修正 ・次のタブ、前のタブコマンドで送った際に、ウィンドウが最小化されいた場合はサイズを戻すように変更  (最小化されていると、マウスなどで戻さないと操作不能になるため) Ver.4.7.0.0 ●ネットワーク死活チェックの改善 ・ホスト判別APIを新しいタイプを使うように変更 ・IPv6形式のパス表記の対応を追加 ・判別不明なネットワークの場合は、死活チェックのスキップを追加 ・ネットワーク死活チェックエラーのメッセージに、オプションで動作を変えられる旨の記述を追加(英語) ●不具合修正 ・親ウィンドウが不明な場合、スクリプト判別コマンド実行で落ちる不具合の修正(4系の構成のみ発生するので3系は未対処) ・メインリスト/ユーザー定義バーなど、全リストのマウスクリックによるアクティブ化の動作を変更を再封印 ・リストの破棄処理の(ウィンドウを閉じる/画面分割など)安定度の向上 ・新型ツリーのメニュー定義ファイルにPOPUPがあっても動作しないのは仕様とするが、コマンド実行すると落ちる不具合を修正 ・ユーザー定義バーへドロップしたとき、起動コマンドが一切ないスクリプトの場合はステータスバーにキャンセルした旨のメッセージを出すようにした(英語) ●その他 ・フィルタ編集/解除時に選択状態を維持するようにした ・各スレッド優先順位の調整をし、外部プロセスや割り込みアプリの影響を受けにくくした ・アイコン画像の取得スレッドはリトライ処理を10回行ってダメなら諦めるように変更 Ver.4.6.9.98 ・ユーザー定義バーへのドロップができなくなっていた不具合の修正 ・Fin.exeのリスト部にダブルバッファリング処理を追加(XPでは無効) ・ネットワーク死活チェック関連のオプションページを追加 ・オプションのテキスト分割系の文字列の場合、数が一致しない場合にエラーメッセージを出すようにした(翻訳支援系) ・ネットワーク死活のエラーメッセージは、エラー理由も表示するようにした Ver.4.6.9.92 ●走査スレッドへ絶対パス指定された場合の動作の変更(※補足1) ・走査スレッド内でITEMIDLISTを生成するようにした ・各種ITEMIDLISTを使用するメソッドに、取得失敗の場合の処理を追加 ●キャンセル/終了処理のスレッド化(※補足2) ・走査停止コマンドのキャンセル処理 ・上へ移動のキャンセル処理 ・更新のキャンセル処理 ・再走査のキャンセル処理 ・リストのオブジェクト破棄 ●ネットワークの死活チェックの仕組みを展開(※補足3) ・本体から呼ばれた場合のみ、スクリプトのRunコマンド実行時 ・ユーザー定義バー上のアイテムへドロップした時のRunコマンド実行時 ・相対移動の走査スレッド内でITEMIDLISTからフルパス文字列を生成した時 ・絶対移動の走査スレッドへフルパス文字列を渡された時 ●その他改善 ・配色の微調整がたくさん ・ステータスエリアでの情報取得の際にネットワークだとスキップする処理の判定条件を追加 ・タブバーの描画でダブルバッファリング処理を追加(XP/クラッシックモードで無効) ・ウィンドウ管理バーでダブルバッファリング処理を追加(XP/クラッシックモードで無効) ・最近閉じたウィンドウバーでダブルバッファリング処理を追加(XP/クラッシックモードで無効) ・一度もインストールしたことが無い場合のFirstSettingのインストール先の初期値を修正 ・タブアイコンの決定の仕組みを高速化 ・コンポーネントの背景描画の際に、必要の無い描画をスキップする仕組みの追加 ・無選択リストのコンテキストメニューの表示モード項目追加 ・コンテンツ/並べて表示のアイコンを作り直した ・本体のリソース文字列を訂正 ●不具合修正 ・一括リネームの異常ファイル名チェックで「+」がNGで「"」がOKになっている不具合の修正 ・起動時、スタティックテキストがテーマ色で塗られてない不具合の修正 ・左ボタン長押しの際、修飾キーが押されている場合は発動しないようにした ・タブバーの空欄ダブルクリックで新しいウィンドウを開いた時、マウス位置に閉じるボタンがあると即座に閉じる不具合の修正 ●試験実装1(マウス操作の機能追加) ・メインリスト/ユーザー定義バーなど、全リストのマウスクリックによるアクティブ化の動作を変更 ・リスト上のCtrl+マウスホイールでアイコンサイズの切り替え機能を追加 ・Alt+マウス操作のシェル起動でプロパティ表示機能を追加 ・メインリストのドラッグスクロールを有効にした ・ユーザー定義バーのドラッグスクロールを有効にした ・ウィンドウ管理バーのドラッグスクロールを有効にした  (フォルダーバーはドロップターゲットとして多用されるので有効にしてあった) ●試験実装2(アイコン表示の改善) ・アイコン表示モードを、アイテム間を詰めて表示するようにした(Visata以降) ・アイコン表示モードで、アイコンの境界線を入れた(Visata以降) ・アイコンモードのShift押下時の選択ロジックを自前のものに置き換えた Ver.4.5.1.0 ●不具合修正 ・テーマ無効の場合にタブの背景が真っ黒になる不具合の修正 ・タブバーのツールバーを非表示の場合に、スタイル切り替えするとゴミが表示される不具合の修正 ・試験実装のネットワークパスへ飛ぶ際に、ネットワーク先が生きているか事前に調べる処理を封印 ●調整 ・ブラックスタイルの場合に文字色を、薄いグレーに変更 Ver.4.5.0.0 ●状態制御  親子関係が生じる以下のコマンドの場合、表示モードなどを丸ごと引き継ぐように変更 ・ここから新しいタブを開く ・ここから新しいタブをバックグランドで開く ・ナビゲートロックされている場合のフォルダクリックからウィンドウを開く(新しいウィンドウを開くなど) ・ナビゲートロックされている場合の上へ移動コマンド ●スクリプトの拡張 ・SendMessageコマンド追加 ・SendMessageAllコマンド追加 ・FullStateOpenコマンド追加(SendMessage系)  並び順/ソート種別/フォルダ優先/表示モード/昇順・降順/フルパス/アイコンサイズ/画面分割/ナビゲートロックを全て指定してウィンドウを開く ●ユーザー定義バー ・タブ復元スクリプトの作成コマンドの追加(47026) ・一旦閉じてタブ復元スクリプトの生成コマンドの追加(47027) ・ユーザー定義バーへのドロップアクションで遅延発生パターンを1件潰した ●各種バーの見た目の調整 ・タブグループ1~4をIEのグループ色に近い色に変更した ・タブのグループなしは、外観テーマによって色を変えるようにした ・タブの色を全体的に、色差を減らして落ち着いた雰囲気になった ・最近閉じたウィンドウバーにOSのテーマを適用 ・最近閉じたウィンドウバーを一行選択に変更 ・ユーザー定義バーにOSのテーマを適用  (OSによって、個々のアイテムの選択エリアが変わります) ・ユーザー定義バーでダブルバッファリングをするようにした(XPは除く) ・旧型ツリーのフォーカス描画をWindows標準風に変更 ・旧型ツリーにOSのテーマを適用 ●その他 ・新型ツリーでEnterキーを押下すると、無条件でフォーカス移動していたのをやめた(旧型に合わせた) ・アドレスバーで1文字で移動/開く場合に「:\」を補完するようにした(デフォルトLキーのフォルダ移動、要らなくなったかも) ・Visual Studio 2012 Update4の適用 ●不具合修正 ・新型ツリーでリネーム中にショートカットコマンドが発動してしまう不具合の修正 ●試験実装 ・リストで左ボタン2秒長押しでコンテキストメニューを表示するようにした ・ネットワークパスへ飛ぶ際に、ネットワーク先が生きているか事前に調べる処理を追加 ・フルパスからITEMIDLISTの生成メソッドを変更 Ver.4.4.3.0 ●不具合修正 ・OS依存の動作をするのでリストの埋め込みリネームを発行した際のシェル通知をしないようにした  (端的な結果の一例として、掲示板報告のあった旧式ツリーの自動更新で存在しないフォルダが表示される場合がある) ・新型ツリーでリネームをすると、ずっと編集中状態と認識して操作できなくなる設定の組み合わせがあった不具合を修正  (多分、これも掲示板で報告があった内容) ・新型ツリーのリネームでESCでキャンセルできない不具合の修正 ●一括リネームコマンド改善 ・エラーチェックと一覧再表示を分離した ・一覧再表示の上限を500→2000に変更 ・使用できないファイル名が生成された場合のエラーチェックを追加 ●見た目の調整 ・タブバーの描画を微調整 ・XP/2003を除いてドライブアイコンのフォントを、OSによってアンチエイリアスかかるものに変えた ・ドライブアイコンにグラデーションをかけ、配色を微調整 ・ウィンドウ管理バーのアイテムをグラデーション描画してみた ●次の版の複線 ・タブを新しく開く際の状態制御処理を実装 Ver.4.4.0.0 ●不具合修正 ・WILDCARDフィルター解除が動作しない不具合の修正 ・コマンドID:33308でフィルタエリアを消す機能の追加と、その他のフィルタエリアを消すカラクリもこれを流用するように整理した ・ユーザー定義バーの「このバーの管理ディレクトリを開く」がルートディレクトリ固定だったのを、開いているディレクトリに変更 ・ユーザー定義バーの右クリックメニューで一部機能が動作しなくなっていた不具合を修正 ・拡張名前の変更で.で始まるファイルで拡張子分割すると、フルパスを取得してしまう不具合の修正 ・スキン適用でユーザー定義バーのツールバー部の描画が、まれに抜ける不具合の修正 ●アプリケーションの概観コマンド群でフレームワークのスキン適用外のアイテムを自前で塗った  以下のモードは個別配色になっている ・Office2003 ・Office2007ブルー ・Office2007アクア ・Office2007ブラック ●ウィンドウ管理バー ・アイテムごとに枠を描いた ・背景色設定を適用するようにした ・アクティブ背景色を適用するようにした ●一括リネームコマンド改善 ・リストをマウスのD&Dで並び替えられるようにした ・起動直後にテストコマンドを発行するようにした(500ファイルが上限) ・各アイテムを編集したタイミングでもテストコマンド発行するようにした(500ファイルが上限、スピンボタンのある数字入力エリアは除外) Ver.4.3.1.0 ●タブバーの見た目調整 ・デザイン変更に伴いタブバーの横幅計算を直すの忘れて、高さの自動調節が不適切になっていたのを修正 ・縦置きの場合に無駄な計算をしてたので撤去 ・横置きの場合にも無駄な計算をしてたので撤去 ・サイズ自動調整のドッキング判定も見直し ●不具合修正 ・ユーザー定義バーのコマンドメニューでMULTIPLEが動作しない不具合の修正 ・ワーカースレッドのCOM制御を自前ロックに一本に変更(安全装置の解除)を取りやめ  OSやオブジェクトやWindowsのバージョンによって、MTA/STA実装が統一されておらず無応答のプロキシを返している  (Vistaでの削除/貼り付けなどのOLE転送、7でのスマートフォンのドライバなどの外部メディア)  問答無用でSTAにしておかないとフォローしきれない  Vistaのエクスプローラで貼り付けを同時にたくさん行うとOS巻き込んで死ぬのはこの辺が原因っぽい気がする Ver.4.3.0.0 ●Ver.3.5.3.0と同等の改修 ・アイテム未選択状態で何らかのシェルインターフェイスオブジェクトを生成する際を繰り返すと、メモリ開放に極端に時間がかかる場合がある不具合の修正  (体感速度には影響しない) ・ワイルドカードの一致をチェックする処理で、比較元文字列を半角変換してしまっている不具合の修正 ・コンパイラのUpdate4RCを適用  (最適化ONの場合に単文字比較を間違うコンパイラの不具合が解消された。掲示板で報告があった「一」で誤判定するものもこれに含まれる) ●フィルタエリア ・フィルタ設定ダイアログでOKボタンを押した時にリストにフォーカスが移動するようにした ・フィルタエリアの絞り込み条件解除ボタン(消しゴム)を押した時にフィルタエリアを非表示するように変更した  ただ非表示ボタン(×)と全く同じ動作になってしまったので機能廃止も検討中 ●その他 ・タブバーの見た目の属性変更、フラットボタンを廃止/セパレータの撤去 ・FileDelete.exeを使用してファイルを削除した場合、アイコン再描画のシェル通知を強制発行の改修をやめた  抜本対策を行うとXPで起動しなくなるので、完全にXPサポート終了まで順延 ・ワーカースレッドのCOM制御を自前ロックに一本に変更(安全装置の解除) ・ユーザー定義バーのフォルダ操作で以下のコマンドを追加  全て閉じて下位階層をグループで開く(ID:47025)  全て閉じて下位階層を開く(ID:47024) ●試験実装 ・縮小版/詳細情報の遅延取得時のデータロックに失敗した場合に、待機するのではなくスキップするようにしてみた  表示欠けが出る可能性があるけど、縮小版や詳細表示のレスポンスがかなり向上しています  問題がなければナイスな改善になるので試験実装公開してみました  一覧以外の表示モードでなんらかの表示欠けが出たらご連絡ください ●一覧の高速化 ・ソートアルゴリズムをクイックソートからマージソートに変更  (約20%ほど一覧表示性能アップ、ソート時間のばらつきが減少) ・更新時に並び替えるオプションの場合、ほとんどソート完了状態なので挿入ソートを行うように変更  (追加/削除/リネームのいずれも約2.2倍速) ※オプションの全体→動作→CPU依存のチューニングを実行することをお奨めします ※スレッド分割の閾値は現在使用しませんが、復活の可能性もあるので無効になっています。 Ver.4.2.1.0 ●不具合修正 ・ツリーでドラッグスクロールが動作しない不具合の修正 ・ドラッグ中にツリーノードが開かない不具合の修正 ・ツリー/リスト連係フラグの全見直し ・新型ツリーの編集中フラグの初期化漏れ修正 ・起動時の描画を全部止めて、起動速度を上げた対応を除外(全OSが対象) Ver.4.2.0.0 ●Ver.3.5.1と同等の改修 ・Windows 8.1対応 ・悪意ある長大な環境変数を与えられた場合にバッファオーバランを検出して落ちる不具合の修正 ・フルパスで512文字超のフォルダーにインストールされた場合に落ちる可能性がある不具合の修正 ・フォルダーバーの自動非表示モードがVer.3.4xから機能してなくなっていた不具合の修正 ・描画崩れの低減のためアイテム選択のフォーカス移動は部分表示されいていればキャンセルするようにした ・システムDLLのMPR.DLLが破損している場合に落ちる場合がある不具合の修正 ・Windows8以降で、ワイルドカードの一致をチェックするAPIに漏れがあるので自前の処理に全て置換した ・スクリプトのExRunで複数コマンド指定した場合にメニューが表示されない不具合の修正 ●新しい表示モードの追加 ・新型フォルダーバーを追加(XPでは設定が反映されません) ・リストで「並べて表示」追加 ・リストで「コンテンツ」追加(Vista以前は表示されない項目があります) ●メニュー定義拡張 ・EDITコマンドの正式追加 ・NOTEPADコマンドの正式追加 ・WILDCARDコマンドの正式追加 ・MENUEDITコマンドの暫定追加(将来メニューエディタの呼び出しになる予定だが当面はEDITと同じ) ・多くのデフォルトのメニュー定義にMENUEDITコマンドを追加 ●フィルタエリア設定  フィルタがかかっている状態を分かりやすくするためにフィルタエリアを自動制御するようにしました。 ・フィルタ設定ダイアログでOKを押した時に、何かしらの入力があればフィルタエリアを自動表示するようにした ・各種バーからフォーカスが移った時、アクティブビューのフィルタの全解除状態ならフィルタエリアを非表示にするようにした ●リストとユーザー定義バーでのインクリメンタルサーチ強化 ・記号文字対応 ・マッチングチェック速度の改善 ●機能削除 ・基本フォルダーアイコン指定を廃止 ●その他 ・アイテムごとのインターフェイス制御を改善して、一覧描画速度が8%向上と30万アイテムで5MB程度省メモリ化した ・画面分割時に、ウィンドウサイズに応じて各ペインの表示エリアを均等にするように変更 ・起動時の途中描画を止めて起動速度を高速化した ・フォルダーが存在せずエラーになった場合、更新で指定パスの再読み込み追加 ・Vista以降のOSでFileDelete.exeを使用してファイルを削除した場合、アイコン再描画のシェル通知を強制発行するようにした(ゴミ箱アイコンの強制再描画のため) ●実験 ・起動時の描画を全部止めて、起動速度を上げた(問題ナサゲなら正式採用) ・並べて表示モード、コンテンツモードのアイコンは暫定 ・タブバーの背景色をグラデーションにしてみた /////////////////////////////////////////////////////////////////////////////////// // Ver.3.x系 /////////////////////////////////////////////////////////////////////////////////// Ver.3.5.5.0 ・本体のリソース文字列を訂正 ・タブバーの空欄ダブルクリックで新しいウィンドウを開いた時、マウス位置に閉じるボタンがあると即座に閉じる不具合の修正 Ver.3.5.4.0 ・ユーザー定義バーの「このバーの管理ディレクトリを開く」がルートディレクトリ固定だったのを、開いているディレクトリに変更 ・拡張名前の変更で.で始まるファイルで拡張子分割すると、フルパスを取得してしまう不具合の修正 ・スキン適用でユーザー定義バーのツールバー部の描画が、まれに抜ける不具合の修正 ・Visual Studio 2012 Update 4適用 Ver.3.5.3.0 ・アイテム未選択状態で何らかのシェルインターフェイスオブジェクトを生成する際を繰り返すと、メモリ開放に極端に時間がかかる場合がある不具合の修正  (体感速度には影響しない) ・ワイルドカードの一致をチェックする処理で、比較元文字列を半角変換してしまっている不具合の修正 ・コンパイラのUpdate4RCを適用  (最適化ONの場合に単文字比較を間違うコンパイラの不具合が解消された。掲示板で報告があった「一」で誤判定するものもこれに含まれる) Ver.3.5.2.0 ・Windows 8.1対応 ・悪意ある長大な環境変数を与えられた場合にバッファオーバランを検出して落ちる不具合の修正 ・フルパスで512文字超のフォルダーにインストールされた場合に落ちる可能性がある不具合の修正 ・フォルダーバーの自動非表示モードがVer.3.4xから機能してなくなっていた不具合の修正 ・描画崩れの低減のためアイテム選択のフォーカス移動は部分表示されいていればキャンセルするようにした ・システムDLLのMPR.DLLが破損している場合に落ちる場合がある不具合の修正 ・Windows8以降で、ワイルドカードの一致をチェックするAPIに漏れがあるので自前の処理に全て置換した ・スクリプトのExRunで複数コマンド指定した場合にメニューが表示されない不具合の修正 Ver.3.5.0.0 ●多言語対応 ・フォーム型のexeからリソースを除去して分離  リソースDLLのソースを公開して多言語対応できるようにした ・ダイアログ型のexeはロケールを参照して、画面上のテキストを置き換える機能を追加  ロケールファイルが存在しない場合は現在の表示状態をファイル出力する ・本体から文字列を取得していた外部コマンドの参照先をリソースDLLに変更 ・Associate.exeのXPモードの英訳追加 ・Associate.exeのVista以降モードの英訳追加 ・Associateでデスクトップショートカットを作成する機能を削除  (FirstSettingに載ったため、重複機能の削除) ●不具合修正 ・FirstSetting.exeのランタイムインストールを促すページの説明漏れを追記 ・Test32.exeが32ビット環境のXPだけ動作しない問題への対処 ●フィルタエリア関連 ・フィルタエリアの入力で、*を含むトークンは前後に*を付与しないようにした ・フィルタの絞込み文字列の展開ロジックを作り直した ●その他 ・詳細/簡易詳細のリストの描画の速度改善(1アイテムあたり、数マイクロ秒程度) ・リストでツールチップテキストを2種類表示していたが、コントロール標準のツールチップテキストは表示させないように変更 ・各種ビューアーのビルドオプション調整 ・64ビットOS特有のキャストワーニングを減らした ・プレビュープラグインの対象拡張子を指定する文字列を512文字→10KBに拡張 ・スキン画像読み込み処理を改善、読めないファイルタイプを減らした ・リストの表示アイテム1個当たり、26バイト減らした ・データ構造のチューニングを行った ・リストの部分削除のループ回数を1/3にして、重くなった解析処理を並列化で隠蔽した ・ユーザー定義バーのソート順で日付順の場合、同じ時刻のファイルの並びが不定になる場合がある不具合の修正 ・Ver.4以降を意識したレイアウト変更が少々 ●隠しコマンド  とても便利なのですが機能制限/実装実験中であり、仕様変更の可能性ありますので当面はサポート対象外の機能です  ID、スペル、書式などが変更される可能性を考慮の上でご利用ください ・Vista以降の「並べて表示」風モード(_ViewMode.txtを編集、ID:32905、XP動作せず) ・7以降の「コンテンツ表示」風モード(_ViewMode.txtを編集、ID:32906、XP動作せず、Vistaは非表示項目あり、Windows8.1は未確認) ・メニュー定義の追加コマンド  動作しない定義ファイルが多いのでご注意ください。Action系/Setting系、タブバー系は全滅です。  EDITメニュー定義ファイルをエディタで編集  NOTEPADメニュー定義ファイルをメモ帳で編集  WILDCARDフィルターの説明テキスト*.lnk;txt  WILDCARDフィルター解除 Ver.3.4.0.0 ●見た目の改善 ・UIスレッド死活監視用のステータスアニメーションの追加 ●タブ管理の強化 ・タブバーに「このタブをグループ解除」コマンド追加 ・閉じたタブを再度開くコマンドの追加 ・グループにはさまれていれば同一グループとみなす/はぐれグループ(2個以上連続しないグループ)は解除といった動作を廃止  ウィンドウを閉じた際に、そのグループが1個になった場合のみ自動解除する ・別プロセスに分離コマンドで仮想フォルダーも対応 ●ウィンドウ管理バーの機能強化 ・別プロセスに分離コマンドで仮想フォルダーも対応 ・コマンドメニューに「このタブをグループ解除」コマンド追加 ・コマンドメニューに「タブをグループ化」コマンド追加 ・コンテキストメニューに「このタブをグループ解除」コマンド追加 ・コンテキストメニューに「タブをグループ化」コマンド追加 ・コンテキストメニューにタブグループを閉じるコマンドを追加 ・メインメニューからの子ウィンドウを並べる系コマンドは全て最小化を解除するようにして、ウィンドウ管理バーでの並び替えコマンドと差別化した ・左クリック/Enter/ホイールで切り替えた時に、対象タブが最小化されていると戻す処理を追加 ●その他 ・各種バー、分割状態、並び順などの内部情報のテキスト化処理をまとめた ・タスクバーサムネイルに対してデフォルト応答を返すように変更 ・サムネイルキャッシュの寿命の自動判定を勘違いしていた不具合の修正 ・アドレスバーにファイル/フォルダーをドロップした場合、「フォルダ移動/ファイル選択」するように変更 ・オプションのプレビュープラグインDLLの初期探索フォルダ指定が、ライブラリのセキュリティ強化の影響で初期表示できなくなっていた問題の対処 ・コピー、移動、削除のシェルダイアログのタイトルを英語表記に変更 ・パフォーマンスチューニングが少々 ・ChgImgFmt.exeにバッファオーバーランの可能性がある関数を使っていたのを修正 ・アクティブペインの色変え処理を改良 ・別プロセスに分離コマンドが設定で禁止されている場合にメッセージを出すように変更 ・定義ファイルの構文解析で、改行コードがCRLFしか読めなかったのをCR/LFのみでも読めるようにした ・定義ファイルの構文解析で、改行コードがCRLFの場合の解析速度の向上 ・Ver.3.5向けリソース構造の調整 ・Ver.4.0向けデータ構造の調整 ・強制終了時の前回のタブバーの保存処理を最適化 ●外部コマンド機能追加 ・内容を判別して拡張子変更コマンドで「候補を全て自動選択」ボタンの追加 ・属性変更で、更新日時/作成日時それぞれを無効にするチェックボックスを追加 ●不具合修正 ・ユーザー定義バーの構築でメモリを開放し忘れていた不具合を修正 ・アンインストールコマンドでメッセージのファイルを読めない旨のメッセージが出る不具合の修正 ・アンインストール時にデスクトップショートカットを削除しに行く処理を追加 ・スクリプトの自動生成の際、テンプレートファイルにBOMを追加で出力していた不具合の修正 ・各種定義ファイルの読み込みで、行末尾に改行コードが無い場合に読み捨てていた不具合の修正 ・アドレスバーからftp://~、http://~、https://~で始まる仮想フォルダーを指定した場合に\を補完していた不具合の修正 ・XP限定で、新規作成のショートカット作成コマンドへ渡すパスの記述を修正 Ver.3.3.0.0 ●配布書庫の構成を変更/インストール・アップデートの簡素化 ・FirstSettingでインストールパスの指定をするようにした ・FirstSetting、UpdateAsrで、アプリの選択(x86/x64)をするようにした ・FirstSettingでヘルプページ参照やダウンロード先参照ボタンの追加 ・FirstSettingでランタイムライブラリのテストボタンの追加 ・FirstSetting、UpdateAsrを静的リンクに変更 ・FirstSetting、UpdateAsrの64ビット版配布を廃止 ・Update1To2の配布を廃止 ・バージョン情報の構成変更 ・エラーメッセージ、処理結果などの情報量を増やした ●定義ファイル読み込みの共通化と高速化  あまり速度を要求されない箇所のファイル読み込みも1行ずつ読みではなく、他の処理で採用している一括読みで統一した ・ユーザー定義バー構築の際のアイコンインデックスファイルの参照処理 ・アイテム登録時のスクリプトアイコン画像抽出処理 ・ローカライズファイルの読み込み処理 ・スクリプトファイルの読み込み処理 ・メニュー定義ファイルの読み込み処理 ●多言語化対応 ・エラーメッセージ/警告メッセージなどを統合した ・Finのファイル操作手順で、エラーになるパターンを他の操作に合わせるように変更した ・未使用リソース、未使用ダイアログなどを大量に削除 ・単語レベルのメッセージを大量に英語化 ・全ダイアログ系コマンドで、ロケール指定すると英語版の画面の文言を探しに行くカラクリの実装 ・DriveInfo/MemInfo/FileInfoの文字列生成処理を作り直した ・ドキュメント、注意書き、履歴などでUNICODE化されていないものを全て変換 ・Msg.jp.txtを廃止して、Lang\Msg.ja-jp.txtのロケール用のディレクトリに移動 ・全てのダイアログアプリの日本語メッセージをリソースから、外部ファイル読み込み対応にした ・本体リソースの整理 ●不具合修正 ・本体のライブラリ由来の脆弱性を潰した ・MArcのキー割り当てのCSV出力がSJIS交じりで化けている不具合の修正 ・MArcのエディタ設定類のファイルを開くダイアログが文字化けしている不具合の修正 ・MakeArchive、MakeSelfExtractでエラーメッセージが文字化けしているものがあった不具合の修正 ・ArcPack、ArcUnPackでフォルダ作成時確認のチェックボックスが逆の意味になっていた不具合の修正 ・以下の致命的な不具合が修正されていたので、Visual Studio 2012 Update 3RC Visual C++の適用した  静的リンク版がXPで全く動作しなかった  ChgImgFmtがXPで全く動作しなかった  指定された最適化コンパイラオプションが無視され、期待する性能が発揮できていなかった ・オプションのスキン画面で保存しても再起動しても切り替わらない不具合の修正 ・全ウィンドウを並べる系のコマンドでShellTileHorizontally、ShellTileVerticallyが逆の動きになるOS不具合に対処 ・実体を持つ仮想フォルダーで(デスクトップなど)左ドロップに失敗する場合がある不具合の修正 ・XP限定でツリーアイテム追加の描画の後にフリーズする場合がある不具合の暫定対応  (XPだけアクセス不能メッセージが表示されません) ・別プロセスに分離コマンドの説明文字列が定義されてなかったので、メインメニューに追加した ●機能改善 ・ユーザー定義バーでのドロップオープン(フォルダー以外)はCommandlineOptionを?SelFile?固定にするように変更  (未定義のランチャーバーのアイテムへ、ドロップオープンできるようにという意図です) ・フォルダーサイズ計算コマンドで、フォルダ数/ファイル数の表示を追加 ・リストのチップテキストに無条件で仮想名称を追加 ●ライセンス条項を追加  実際のトラブルを受けて、法に反する行為などの禁止項目を追加した Ver.3.1.1.0 ●スクリプトスレッド化による弊害対策 ・大量のアイテムを選択した状態での警告メッセージが表示されない不具合の修正 ・複数のスクリプトを一度に実行した際に(一つのジョブとみなす場合)、同時起動制限に引っかかる不具合の修正 ・上位処理からグループ指定で呼ばれた場合にグループ番号を覚えていられない不具合の修正 ・バックグラウンド処理時に無用なインスタンスを生成し、メモリの無駄遣いしていたのを修正 ・終了時のイベントコマンドは、バックグラウンド実行すると落ちるのでバックグラウンドをやめた ・ステータスバーにファイル処理/スクリプトの稼動スレッド数を表示するようにした ●ウィンドウ管理バー ・ホイールでスクロールだけでなく選択も切り替えるように変更 ・ソート呼び出し回数を削減するようにイベントの最適化 ・ウィンドウ管理バーでアイテム上でのチップテキストを追加 ●タブバー ・タブのアイコン/文字列の更新/描画の回数を削減するようにイベントの最適化 ●アドレスバー周辺のUI改善 ・「中止」ボタンを撤去して、移動/更新/中止と1つのボタンが切り替わるようにした ・進む/戻るボタンの長押し/右クリックで履歴メニューを表示するように機能追加 ・進む/戻る/履歴メニューボタンの表示動作の設定を追加(エクスプローラ風、IE風、FireFox風など) ●ユーザー定義バー ・上位階層へ移動コマンドが実行できないときにグレイアウトされるようにした ・ユーザー定義バーでMULTIPLEが動作するように機能追加 ・現在の階層のファイルを全て削除コマンドを追加 ・現在のタブ構成を登録コマンドを追加 ・上記2コマンドを連続して発行して、現在のタブ構成を同期するコマンドとした ・ツールバー上に上位階層へ移動コマンドボタンを復活 ●新規作成メニューのレジストリ不整合の検出 ・一括新規作成/ファイル作成/右クリックメニューの新規作成で、他所のソフトが引き起こしたレジストリ不整合を検出してメッセージを埋め込む処理を追加 ●エクスプローラー風のチェックボックスの動作の改善 ・Vista風に動作の模倣レベルを上げたが、あまりにも動作が遅くなったので、各種のメッセージに注意書きを追加 ・チェックボックスのみのクリック時にステータスエリアを書き換えるように変更 ・選択して次へ移動の動作を専用のものにした ●メッセージリソースの整理に手を付けはじめたが、あまりに数が多いので部分的に着手  FileAttribute、WinEx、DivFile、MArcのごく一部 ●その他調整 ・オプション画面のレイアウト微調整をいっぱい ・800×600画面に入りきらない外部コマンドを小さくした ・簡易スクリプト編集のコマンドライン欄へのスクリプトヘルパーダイアログを追加 ・アイテムをドロップしたときに呼び出すコマンド設定に、シェルコピー/移動の同期モードを追加  (バックグラウンドではアンドゥできないので、その補完用として実装。機能自体は駄作) ・ナビゲーションが発生した場合に、インクリメンタルサーチの入力内容をクリアする処理の追加 ●不具合修正 ・オプションのスキンページを保存すると、自動更新が止まってるように見える不具合の修正(実際には止まってない) Ver.3.0.5.0 ●スクリプト強化 ・スクリプトエンジンを別スレッドで駆動するように変更 ・スクリプトの同時実行数の設定を追加(オプション→起動制御) ・DIRECTORYで指定されるフォルダーに環境変数の展開を追加 ・スクリプトからD&Dでファイルを開く場合、起動プロセスIDをもつウィンドウが非表示でD&Dできないアプリ用のエラーメッセージを追加 ●タブバーの機能追加 ・コンテキストメニューに、別プロセスに分離コマンド追加 ・コンテキストメニューに、ウィンドウ分割コマンド追加 ●不具合修正 ・外部コマンドのファイル一覧でインクリメンタルサーチをすると落ちる不具合の修正 ・簡易詳細でカラムを末尾/先頭に移動しようとすると落ちる不具合の修正 ・終了時にタスクが残っている場合の、強制終了でメッセージが複数回表示される現象を修正 ・スクリプトの置換マクロの?TargetDrive?、?TargetDir?が渡せていなかった不具合の修正 ・Ver.3で追加されたメニュー定義ファイルが、FirstSettingでコピーされなかった不具合の修正 ・Associate.exeのアイコンDLL参照のダイアログが文字化けする不具合の修正 ・圧縮コマンドの書庫名の参照ボタンの初期ディレクトリがOSによって動きが違う問題の修正 ●その他 ・オプションのリストのマウス画面に説明を追加 ・リストのマウス設定で、ポイントして選択を追加 ・ノートンとAVGの誤検出対策を追加 ・未選択リストのコンテキストメニューで、プレースホルダーがない場合に新規アイテムを追加しないように変更 ・Fin.exeで検索するディレクトリ名のコマンドラインオプションを追加 ※スクリプトエンジンを別スレッド化の補足 ・PostWaitの存在意義がなくなったので、隠し機能に格下げです。 ・BootMode=5の場合、本体のプロセスは停止しませんので有用度が大幅に向上しています。 ・RunWait、Waitは、イベント制御にかかわらず指定時間待つように変わっています。 ・メッセージ送信系の対象は、現在アクティブなタブへコマンドを発行します。  (コマンド発行時点のアクティブタブが閉じられていたらメッセージの行き場が失われるため)  PostMessage、PostMessage1、PostMessage2等 ・各種ジャンプコマンドは現在アクティブなタブが対象になります。  (コマンド発行時点のアクティブタブが閉じられていたらフォルダ移動できないため)  FileJumpが0の場合、FolderJumpが0の場合  OpenMode=2の場合のRunコマンド Ver.3.0.0.0  プチメジャーバージョンアップです。  開発環境の変更、ウィンドウ管理バーの実装が目立つ部分です。 ●開発環境の変更 ・Visual studio 2010→Visual studio 2012に変更 ●ウィンドウ管理バー追加 ・ウィンドウ管理バーへフォーカス移動コマンドの追加 ・ウィンドウ管理バーの表示切り替えコマンドの追加 ・ウィンドウ管理バー関連のメニュー定義ファイルを追加 ●タブバー ・終了時のタブを復元するオプションの付随で、ネットワークは除外する/仮想フォルダーは除外の追加 ・D&Dの動作モードを「ドラッグアンドドロップの標準動作」を反映するように変更 ・画面分割アイコンの位置を末尾に変更 ●イベントコマンドの追加 ・削除終了時 ・貼り付け終了時 ・ごみ箱を空にした時 ・最近使ったファイルを消した時 ●イベントサウンドの追加 ・フォルダ表示完了 ・削除終了時 ・貼り付け終了時 ・ごみ箱を空にした時 ・最近使ったファイルを消した時 ●リストのマウス設定の仕様変更 ・ダブルクリックの設定を追加 ・シングルクリックで実行の設定を削除 ・空き領域をクリックで上位フォルダーへ移動の設定を、ダブルクリック固定に変更 ●仮想フォルダーの取り扱いの仕様変更 ・ネットワークを仮想フォルダーとして扱うオプションの追加 ・実体を持つ仮想フォルダーで実体を持つアイテムを選択した場合に、スクリプトをはじめとした外部コマンド連携できるように変更 ●ツールバーの変更点 ・タブバー/ウィンドウ管理バーの表示切り替えボタンをツールバーに追加 ・各バーのツールバーアイコンのうちXPベースのものを、Vistaベースのものへ変更 ・上位階層へのボタンをツールバーからアドレスバー横に移動(Windows8を意識した改修) ●アップデートツール(UpdateAsr.exe)の変更点 ・実行時に画像キャッシュの削除処理を追加 ・バー情報の削除のメンテナンス機能を追加 ●メニュー定義ファイルの強化 ・メニュー定義ファイルの読み込みで、メニュー項目文字列の「\t」をタブインデント文字として展開する機能の追加 ・MULTIPLEを追加 ・メニュー定義で動的IDを使用するコマンド(SCRIPT/DROPOPEN/OPEN/NEW/JUMP/MULTIPLE)の総合計を200→700に拡大 ●その他 ・シングルクリックで上位階層に移動する動作を、全てダブルクリック固定に変更 ・全プロセスの開放可能メモリを開放コマンドにアイコン画像を付与 ・コマンド定義ファイルの再読み込みで既読情報のクリアを行うようにした ・マウスジェスチャ(フック動作時)のフラグ立ての方法をライブラリに動作にあわせた ・ユーザー定義バーの中クリックの特殊動作を削除 ・ダイアログ画面の説明の追記をたくさん ・起動直後のステータスボタンのレイアウトを調整 ・フォルダーバーの選択動作の高速化 ・ビジー状態で、自動更新をスキップする際にステータスバーにメッセージ表示を追加 ・デスクトップのITEMIDLISTが取得できない場合に落ちる場合があった不具合の対処(再現方法不明) ・起動時のエラーメッセージファイルにアクセスしようとしたパス名表記を追加 ・ツリーの自動更新の堅牢性の向上 ●既存不具合修正 ・オプションで、フォルダーバーの設定を切り替えた際に色が変わる不具合の修正 ・imgChache.iconimg、imgDriveChache.iconimgの取得に失敗した場合に、画面は崩れるけど落ちないようにした ・アイコンイメージの数が足らない場合に落ちにくくした ・アイコンキャッシュの生成/保存に失敗した場合にエラーメッセージを表示して、アプリを終了するようにした ・フォルダーバーの自動更新が、全更新すると強制的にONになる不具合の修正 ・ファイル名の取得方法を変更 Ver.2.9.2.0 ●不具合修正 ・検索の英語のスペルが間違っていたのを大量に修正 ・フィルタテキストをクリアするボタンの画像が違う不具合の修正 ・リストのマウス操作でスクリプトナビゲーションコマンドを登録した場合に、実行コマンドが1個ずれる不具合の修正 ●スクリプトコマンドの改修 ・アイテムを選択するコマンドを追加(実体を持たないものは対象外)  書式:Select=ファイル名(複数記述する場合は;で区切る事)  例:Select=*.doc;*.docx;testdoc.txt ●メニュー定義の改修 ・BOMありファイルの読み込みに対応 ・ディレクトリ探索型でHIDDEN_ITEM(ON/OFF)スイッチの追加(Windows8のスタートメニュー作る用) ・ディレクトリ探索型の場合、デフォルトで隠しアイテムを非表示に変更 ●オプションの改修 ・リストの「表示」を「表示共通」に変更 ・リストの自動更新項目をまとめて、新設の「自動更新」のページへ移動 ・リストのステータスエリアの項目をまとめて、新設の「ステータスエリア」のページへ移動 ・選択ステータスの書式のマクロ設定を追加 ・選択ステータスのサンプルセットを3種実装 ・リストの「表示」のモード依存項目を、新設の「モード依存の表示」のページへ移動 ・ユーザー定義バーの並び順に説明を付記 ・キー割り当て時のコマンド選択ダイアログのツリールートを付与して分類を分かりやすくした ・各種レイアウト、タブオーダーの再調整 ・ESCキーの初期値を未設定に変更 ・色設定のヘルプへの飛び先を適切なものへ変更 ・モード依存で無効になる項目をディスエブルにするようにした ・オプション画面の文言修正多数 ・イベントスクリプトの登録のエラーチェックを厳しくした ・サウンド設定の登録のエラーチェックを厳しくした ・ユーザー定義バーの紐付け登録のエラーチェックを厳しくした ・ユーザー定義バー編集ボタンと、一覧のダブルクリックで初期値が異なるのを統一した ●リストの表示モード切り替えの仕組みを作り直した ・表示モード設定ダイアログを、なるべく旧作風味のデザインに変更 ・表示モード設定ダイアログで一覧項目の無効化をするように変更 ・メインメニューからのソート切り替え時に選択状態を保持するように変更 ・昇順を一般イベントに昇格させた ・降順を一般イベントに昇格させた ・フォルダ優先を一般イベントに昇格させた ・モード切替系のコマンドのコマンド再入の排他制御の安定性の向上 ・画面の表示モードを切り替えた際に、全更新するように変更  選択状態が解除されるが、情報の取得をスキップする事による不整合は無くなった  ざっとまとめると、ソート/アイコンは選択の保持、表示モードは選択の解除となる ●マルチメディアビューアの改修 ・ターゲットバーをサイズ変更した場合に、フォーカス位置を再表示するように変更 ・マウスホイールのボリューム調整を上下反対に変更 ・マウスホイールを、各種の進める/巻き戻すに割り当て機能の追加 ●フォルダ設定 ・フォルダ設定ダイアログのレイアウトを全面変更 ・下位階層を追加機能の追加 ・削除コマンドを発行した後のフォーカス位置の動作を変更(ショートカットを使ったときの操作性が向上) ・設定数無制限から500個に制限するように変更(レジストリを直接いじれば無制限で運用する事は可能) ●フォルダサイズ計算の改修 ・フォルダサイズ計算をマルチスレッド化してキャンセル応答性を向上 ・計算途中のフォルダーの表示書式を変更 ・死活表示のためのアイテム数の多いフォルダーのカウンターを設置 ・フォルダサイズ計算で再起のネストが深い場合に落ちる問題の暫定対処(約280万フォルダーくらい) ●一括で名前の変更(FileRenameEx.exe)の改修 ・連番時の増分0を許容するように変更 ・各入力項目にアクセスキーを付記 ●その他の機能の変更 ・キーボードD&Dの対象を、トップレベルウィンドウのみから下位の階層のものを走査するようにした ・画面分割を戻す際に、アクティブなペインを残すようにした ・自動更新でリネームを検出した場合、新しいファイルとみなして色塗りするように変更 ・リスト部の初期化の遅延処理を増やして、より起動が速くなったように錯覚させるように変更 ・イベントコマンドの「アプリケーション起動後」を遅延実行するようにした ・一覧を他のプロセスに渡す際の消費メモリを減少させた ・再帰的に一覧を生成する際の安定度の向上させた(約180万ファイルくらい) Ver.2.8.0.0 ●外部コマンド追加 ・FreeMem 全てのプロセスのワーキングセットを開放 ・ShellSetTime 時刻設定のプロパティを表示 ・ShellStartMenu スタートメニューのプロパティを表示 ・ShellWinHELP Windowsのヘルプを表示 ・WinEx 拡張子を自動判別して名前の変更 ・ShellCascadeWindows 全てのウィンドウを重ねる ・ShellMinimizeALL 全てのウィンドウを最小化 ・ShellTileHorizontally 全てのウィンドウを水平に並べる ・ShellTileVertically 全てのウィンドウを縦に並べる ・ShellUndoMinimizeALLL 全てのウィンドウを戻す ・ScreenSaver スクリーンセーバーの起動 ・FolderIconChange フォルダーアイコンの変更 ・ChgImgFmt 画像フォーマット変換 ・ChgTxtFmt 文字コード変換 ・DivFile ファイル分割/結合コマンド生成 ●一覧表示の機能追加 ・サイズのバー表示コマンドの追加 ・日付で色分けコマンドの追加 ・一覧表示速度の向上(8コア環境で20~30%程度) ●メッセージ表示の変更  エラーや警告などのメッセージ表示を拡充 ・一部のメッセージボックスで表示していたものをステータスバーに表示するように変更 ・スクリプト系のコマンドのエラー表示を追加 ・設定で禁止されているマウス操作時の無反応理由のメッセージを追加 ・スレッドがビジー状態のメッセージを追加 ・OS設定の「(登録された)拡張子は表示しない」コマンドを全表示モードで動作するように変更(メッセージで警告表示) ・自動更新でイベント数が1万を超える場合に取りこぼし扱いとするメッセージを追加 ・コマンド定義ファイルが未定義であった場合のメッセージを追加(ExternalDefCommand.txtの更新忘れなどのイレギュラーケースの対策) ●アイテム選択コマンドの追加 ・新しいアイテムを選択コマンドの追加 ・同じ拡張子を持つアイテムを選択コマンドの追加 ・メインメニュー以外にも、各種ポップアップメニュー定義にも追加した ●自動更新の強化 ・更新イベントキューの破棄速度の向上 ・自動更新用のキューの排他制御の信頼性向上 ・インデックス検索の微妙な高速化(アイテム1件当たり0.1μ秒程度) ・更新のキャンセルとリトライ処理を遅延処理させるようにして応答性を向上させた ・更新時のオーバーレイアイコンの取得方法を改善 ・更新イベントが1万件を超えるようであれば取りこぼし扱いにして処理しないようにした ・更新時にフォーカス位置に自動スクロールしないように変更 ・更新時にソートする設定を追加 ●調整 ・AllCommand.txtの出力で説明項の出力を追加(隠し機能) ・拡張子ソートの比較関数を変更 ・スレッド制御用のウェイトを、タイマー分解能の値に揃えた(若干、体感速度が上がっている) ・選択アイテムをユーザー定義バーに追加/現在フォルダーをユーザー定義バーに追加をメインメニューから、初期メニューに無いコマンドへ移動 ・メインメニュー項目の並び替え  例:チェックボックスを表示設定→環境設定(全部動作が違うので表示設定はふさわしくないとか) ・フォルダーバーの切り替え速度の向上 ・フォルダーバーの動作を極力標準コントロール制御を使用するように変更(機能や動きは一切削ってないので違いは分からないはずです) ・アイテム1個当たり4~8バイトほど消費メモリを減らした ・オプション周りのデータ管理方法の整理した ●不具合修正 ・タイプライブラリ経由でファイルの保存コマンドを発行されると、空ファイルを生成する問題への対処 ・DPI設定が高い値になっていると、存在しないレイヤを使って拡大しようとするライブラリ不具合を回避するようにした  (ユーザー定義バーのツールバー画像) ・リリース用のスクリプトにCmdPluginを生成する処理が欠落していたのを修正 Ver.2.4.5.0 ●不具合修正 ・メニューバーの空き領域をダブルクリックすると浮いてしまう不具合の修正 ●調整 ・縮小版のオプション画面のUIを改善 ・オプションのスキン画面に注釈の追加 ・大量のファイルを開こうとしたときの警告を仕様変更(関連付けはOSと同じ、スクリプト系は警告) ・Windows Updateのおかげで落ちやすくなっていたプレビュープラグインの安定性を微妙に向上 ・プレビューバーの背景の塗り潰しを追加(XPでちらつきが増えたけど、画面が崩れたように見えるのは無くなった) ●機能追加 ・オプションのキー割り当て画面に、一覧のファイル出力機能を追加 ・プレビューバーにインデックスサービスを用いたテキスト化のオプションを追加 ●外部コマンドの機能追加 ・RenameExに?ParentDir?の置換マクロ追加 ●スクリプトの追加(これらのコマンドは、別スレッドで動作するため同期は取れない事をご注意ください) ・FolderJump ・FileJump Ver.2.4.2 ●不具合修正 ・「選択アイテムを次のグループで開く」コマンドが仮想フォルダーで動作してしまう不具合の修正 ・最近閉じたウィンドウバーの項目を全削除して1件も存在しない場合に、終了時に値を保存しない不具合の修正 ・ネットワークフォルダーの更新検出方法を選択する設定を無視してシェル通知と認識していた不具合の修正 ・リストの右クリックメニューから実行する際にカレントパスを切り替えていなかった不具合の修正 ・カレントパスの切り替えに失敗した場合、カレントパスが不定な値になる可能性がある不具合の修正 ・関連付けコマンドをスキップした場合にメモリ参照カウンタの戻し忘れがあった不具合の修正 ●調整 ・スキン画像セットの読み込み処理を改善 ・スキン画像をキャッシュファイル1つにまとめて起動速度を高速化 ・Post系のスクリプトが増えてきたので関数化してまとめた ・巨大なチップテキストを返すシェル拡張ツールをインストールしていた場合、先頭1KBを切り取って表示するように変更 ・チップテキストを用いたシェル拡張ツールによるバッファオーバーラン攻撃の疑いがある場合に強制終了していたが、強制的にNULL埋めで無効化するように変更 ・大量のウィンドウを開こうとしたときに警告する設定の適用範囲を増やした ●一括で名前の変更(FileRenameEx)を作り直した  ウィンドウ位置やサイズを覚えるようになった事から、本体の標準コマンドの制御を受け付けない制限があります。 ・プレフィックス/サフィックスに置換マクロを追加 ・ダイアログ型から、フォームウィンドウ型に変更に伴い、ツールバー、メニュー、キー割り当てなどの各種カスタマイズ機能の追加 ・単独使用可能に変更 ・各種パラメータの範囲を拡大 ・表示文言、レイアウトの変更 ●本体の新規作成コマンド/一括新規作成コマンド(FileNewEx)の改善 ・生成できるアイテム数が増えた ・メニューの名称がリソースから取得できる場合は参照するようにした(多言語対応の一環) ・同様に生成されるファイル名が変更になった ・オブジェクトタイプがData型の新規作成ができるようになった(例:zipファイル) ・FileName型の場合に、テンプレートが存在しなければ、スルーではなくNullFile型とみなす処理を追加 ●縮小版の画像展開処理の改善 ・取得用のライブラリの呼び出し方法を改善して高速化(Vista以降) ・取得APIの取得方法を改善して高速化(Vista以降) ・拡大縮小ロジックを改善して高速化(7以降) ・縮小版でのキャッシュ操作の設定を追加(Vista以降) ●スクリプトの機能追加 ・PostWaitコマンドの追加 ・PostMessageBarコマンドの追加 ・?TargetDir?置換マクロの追加 ・?TargetDrive?置換マクロの追加 Ver.2.3.3 ●自動更新の改善 ・ネットワークフォルダーの更新検出方法を選択する設定を追加 ・本体の新規作成コマンドで、明示的なシェルの更新通知を送ってなかったのを追加 ●リストの状態表示項目の表示抑制を追加 ・死活状況 ・表示時間・動作状況 ・更新の監視状況・切り替え ●スクリプトの機能追加 1.モード依存のコマンド発行機能の追加 ・PostMessage1の追加  1画面モードの場合のみ動作する、それ以外はPostMessageと同様 ・PostMessage2の追加  2画面モードの場合のみ動作し、両方の画面に対してコマンドを送信する 2.置換マクロの追加 ・?SelParent?置換マクロの追加  ?SelPath?の代替として想定、選択アイテムのパスに置換する。  ドライブルートを除いて末尾の¥記号を付与しないOS仕様に準拠。 ●ユーザー定義バーの機能追加 ・名前順/更新日付順の設定を追加 ●フォルダーバーの機能追加 ・右クリックメニューに名前の変更を追加 ●調整 ・フォルダーのリンクを実行したときの動作の設定を変更 ・エラーメッセージの言葉足らずを、あちこち修正 ●不具合修正 ・選択ナビゲーションの場合に、フォルダーのリンクファイルが混じっているとターゲットパスが適切に取得できない不具合を修正 ・ステータス表示の誤字をいっぱい修正 Ver.2.3.0 ●マルチメディアビューア関連 ・動画再生の場合、ホイールで音量調整する機能を追加 ・ホイールターゲットをフォーカスではなく、マウス位置にするように変更 ・ターゲットバーが非アクティブの場合にフォーカス色が変わらないようにした ●ネットワークプレースに対しての動作の変更 誤解が多いようなのでXPでの利用に制限をかけてサポート取りやめ、逆に7/Vistaは制限を緩和した。 ※7/Vistaは圧縮フォルダーを使う設定になっている事が発動条件のため、オプション文言も変更しました。 ・XP リストで遷移 エクスプローラの起動→変更なし ツリーで遷移 表示可能なものだけ表示→ステータスエリアに未サポートの旨のメッセージを表示 ・7/Vista リストで遷移 エクスプローラの起動→遷移可能 ツリーで遷移 遷移可能→変更なし ●マウス操作関連 ・リストの左クリック、中クリックの動作にナビゲーション付きスクリプトコマンド1~10を割り当てられるように機能追加 ・リストの左クリック、中クリックの動作に未設定コマンドを追加 ・タブバーで左ダブルクリックでウィンドウを閉じる場合に、閉じたタブの位置設定に従わない不具合の修正 ●外部コマンドの機能追加 ・圧縮コマンドに「処理開始時に出力先を開く」オプションを追加 ・解凍コマンドに「処理開始時に出力先を開く」オプションを追加 ●Windows8のエクスプローラ相当の機能の追加 ・隠しファイル、隠しフォルダー、および隠しドライブを表示しない(OS設定)の追加したけど、As/Rには無関係なのでとりあえず隠し機能扱い ・保護されたオペレーティングシステムファイルを表示しない(OS設定)の追加 ●その他の機能追加 ・親子関係のあるタブの挿入位置設定の追加 ・タブバーへファイルをドラッグアンドドロップしたときにタブを切り替えの設定を追加 ●メニュー定義の機能追加  メニューでフォルダ階層を走査できます。  ディレクトリメニューやリンクバー、ツールバー上のドロップダウンメニューの作成を想定したメニュー定義の拡張です。 ・POSITIONコマンドの追加 ・DIRECTRYモード切り替えの追加 ・DIR_SCRIPTパラメータ指定の追加 ・DIR_FILEパラメータ指定の追加 ・DIR_FOLDERパラメータ指定の追加 ・DIR_UPパラメータ指定の追加 ●その他調整 ・マウスジェスチャの発動条件を変更  一覧/詳細一覧の範囲選択は左ドラッグでも可能であるため、右ドラッグの範囲選択エリアを減らしてマウスジェスチャ発動エリアを広げた ・リストのアイテム描画速度を微妙に高速化(1個あたり数マイクロ秒程度) ・シングルコア版用のカラクリをいっぱい実装 ・タブバー制御/ウィンドウを開く系の処理の整理を行った ・オプションの文言修正 ・Finのコードの掃除、ワーニングを減らした ・各種プレビュープラグインの操作の安定性向上 ・プレビューバーの画像表示が小汚いのを修正 ・理由が分かりにくい警告メッセージに警告の理由を付記した ・各種定義ファイルを、逐次読むのではなく全てをメモリ展開してから参照するようにして起動を高速化 ・タブや最近閉じたウィンドウバーなどで使用するドライブアイコンの生成をキャッシュするようにして起動を高速化 ・Windows 8正式対応 ・今まで詳細表示で取得できなかったカラムが表示されるようになったが、そういったフォルダーの応答性は低下した  (ネットワークや、IEキャッシュフォルダーなど) ・自動更新処理の最適化(軽量化) ・メディアプレーヤーのプレビュープラグインのコントロールエリアの表示を消した ●不具合修正 ・コマンド定義の更新処理で1ファイルにコマンドを混ぜていると、更新しそこねる情報が発生する不具合の修正 Ver.2.2.1 ●不具合修正 ・ファイル一覧出力(FileExport)でファイルが存在しているかの判定の仕方に誤用があった不具合の修正  (前処理で適切に処理されているため、実害はありません) ・ファイル一覧出力(FileExport)が出力先フォルダーを受け取ってない不具合の修正 ・FindFirstFile()が成功しているにも関わらず嘘情報を返してくるケースに対する補正処理の追加 ・ネットワーク構成によって、フォルダーの不適切なサイズが取得できてしまう問題への対処 ・新しく開くタブの位置が「現在の前」でタブ0個の場合に新規で開くと、タブが表示されない不具合の修正 ・読点の位置が間違っていた誤字修正 ●調整 ・D&D処理を横取りしてメモリ破壊するアプリを検出した場合、ステータスバーにメッセージを出す処理を追加 ・ユーザーが自分で環境を破壊した場合、修復ための誘導メッセージを出した後に最小構成で起動していたが終了するように変更 ●自動更新の機能改善 ・リネーム検出時の更新処理の最適化の強化(主に高速化) ・属性更新検出時の更新処理の最適化の強化(高速化と、遅くなったけど省メモリ化) ・縮小版を表示しているとき、更新処理で縮小画像を投棄的に生成しているのを再利用するように変更(遅くなったけど省メモリ化) ●外部コマンドの機能追加 ・コピー/移動コマンドに「処理開始時にファイルの出力先を開く」オプションを追加 ●スクリプトの機能追加 ・文法間違いの場合のエラーメッセージを増加 ・PostMessageAllコマンドの追加  開いている全てのタブへコマンドを発行します。  例えば全てのタブを更新するとか、全てのタブを詳細表示にすると言った使い方を想定しています。 書式 PostMessageAll=コマンドID 記述例(全てのウィンドウを簡易詳細に切り替える) PostMessageAll=32903 ・PlayWavコマンドの追加  Wavファイルを非同期で再生します。 書式 PlayWav=wavファイルのフルパス 記述例 PlayWav=C:\Windows\Media\tada.wav ・MoveWindowコマンドの追加  メインウィンドウの位置を変更します。 書式 MoveWindow=left,top,width,height 記述例 MoveWindow=0,0,800,600 Ver.2.1.7 ●調整 ・タブバー、アドレスバー、ソートボタン、リストステータス、フィルタなどのフォントを変更 ・進む/戻るボタンの位置を計算で求めるように変更 ・グラフィックチップ依存でリスト表示が崩れる場合がある件に対する調整(Windows7/8のみ) ・リスト描画の最適化(Vista/7/8) ・一覧のテキストの高さをテキストラベルのサイズに近づけるように変更 ・メインメニューがフローティングしないように変更 ・ユーザー定義バーをポップアップメニューで表示した場合のソートで、大/小文字判定しないように変更 ・クリップボードのテキストから開くコマンドのテキスト解析精度を向上 ・各種ドッキングバーの設定メニューの定義ファイルを更新 ・フォルダーバーが非アクティブなときのフォーカス色はリストの設定を反映させるように変更 ●機能追加 ・タイトルバーの非表示機能の追加 フォルダーバー 最近閉じたフォルダーバー ユーザー定義バー プレビューバー ・ツールバー非表示コマンド追加 フォルダーバー 最近閉じたフォルダーバー ユーザー定義バー タブバー ●その多機能追加 ・ファイル名をクリップボードへコピー(FileNameCp)で「末尾に改行を含む」の追加 ・タブ上のマウスホイールイベントでタブを切り替える処理を追加 ・マウスホイールの回転イベントをマウスカーソル以下のウィンドウへメッセージ通知する処理の追加 ●不具合修正 ・補完機能付きコンボボックスで履歴を削除すると、動作しなかったり落ちたりする場合がある不具合の修正 Ver.2.1.2 ●不具合修正 ・メニューにないコマンドの分類方法がヘルプの記述と違っていた不具合の修正 ・起動時にユーザー定義バーが深い階層にいる場合、タイトルバーの表示が正しくない不具合の修正 ・タブが1枚もない場合にバックグラウンドで開こうとするとフリーズする不具合の修正 ・リストの日付書式の設定で、大/小文字しないためスペルが一緒だと%yのように意味が違うものでも大文字に変換される問題への対処 ・詳細一覧/グラデーションOFFの場合に、ホット状態で日付やサイズなどを塗りつぶしてしまう不具合の修正 ・DPIが大きい時にオプションの色フォント指定画面が崩れる不具合の修正 ・大きいアイコンの状態で終了し、起動時復元するとアイコンサイズが調整できなくなる場合がある不具合の修正(Vista以降) ・圧縮ファイルビューアからの解凍ダイアログで無意味なエラーメッセージが表示される不具合の修正 ●調整 ・オプションのレイアウトと表記を微調整 ・「詳細一覧」で若干シャープなイメージを与えるように座標計算の微調整 ・新規作成のテンプレートのレジストリ情報を壊しているアプリへの対策を微妙に強化 ・詳細の時、ヘッダクリックでのソートで表示が崩れる場合があるらしいのでリドローを追加した ●タブバーの機能強化  複数起動しないオプションがONになっていると以下の機能は制限があります。 ・タブをリストにドロップすると、そのタブで新しいプロセスで起動する機能の追加 ・別のプロセスのAs/RからタブをD&Dで移動する機能の追加 ●その他の機能追加 ・お気に入りタブメニューコマンドの追加 ・「何もしない」コマンドの追加 ・本体のコマンドラインオプション処理を追加 ・本体をコマンドライン指定で起動した場合「終了時のタブを復元」を無視するモードを実装 Ver.2.0.8 ●不具合修正 ・トラッキングセレクト終了時のコンテキストメニュー位置が、選択開始位置になっている不具合の修正 ・タブバーがシングルライン/タイトル表示あり/横置き/グラフィックチップ依存でちらつく不具合の修正 ・ツリーで埋め込みリネーム中に、他のショートカット機能が動作してしまう不具合の修正 ・タブバーが1行モードで、末尾にタブを追加する場合にスクロールボタンが表示されないライブラリ不具合の緩和 ・タブバーが自動隠しモードでレイアウトが崩れる可能性がある問題への対処を追加 ・タブバーと他のバーを並べた場合にレイアウトが崩れる可能性がある問題への対処を作り直した ・縮小版の表示途中で更新イベントが発生するとデッドロックを起こす場合がある不具合を修正 ・ツリーで埋め込みリネームがキャンセルできない不具合の修正 ●その他調整 ・右クリック+ホイールでのタブ切り替え時の各種右クリックメニューの表示制御を追加 ・画面分割したウィンドウを復元する場合に、ペイン位置を保持するように変更(アクティブペインが左になる動作を廃止) ・画面分割した場合、アドレスバーの輝度を30%下げてアクティブペインが分かりやすいようにした ・オプション画面でタブキーで全てのコントロールにフォーカスが循環するようにした ・マウスクリック時のテキストの位置判定処理を共通化 ・チェックボックス上の位置判定処理を共通化 ・アイテムチェックモードで、一覧/詳細一覧の場合のヒットエリア幅をテキスト幅に変更 ・タブバーのタイトル表示の制御を作り直し、他のドッキングバーに適用 ・オプションの色/フォント指定を作り直した ・オプションの説明書きをあちこち追加 Ver.2.0.5 ●不具合修正 ・ビジュアルスタイルによってタブバーのレイアウト計算に誤差が出る可能性がある問題へ対処 ・「履歴移動で選択状態を覚える」が機能していなかった不具合の修正 ・ナビゲーション直後のフォーカス位置情報を即時開放してなかった不具合の修正(選択状態の復元と重複する場合があった) ・選択状態保持で大・小文字判定してしまう場合があった不具合の修正 ・元に戻すコマンドが日本語依存だった問題の対処 ・起動時/閉じたウィンドウからの復元時に2画面である場合、タブの文字とアクティブペインが異なる場合がある不具合の修正 ・タブバーと同じ列に何らかのバーを配置した場合に、自動幅補正でレイアウトが壊れるライブラリ不具合の回避処理を追加 この対応は完全ではないため、ヘルプに注意書きがあります ●機能追加 ・移動履歴メニュー表示コマンドの追加 ・アクティブタブの輝度を落として強調表示する設定を追加(通常70%→40%に変更して判別しやすくするもの) ・FileRename.exeでシェル通知を追加(ツリーの自動更新に引っかかるようになった) ・ツリーの自動更新でドライブ追加の処理を追加 ・ツリーの自動更新でメディア挿入の処理を追加 ・リストとフォルダーバーで、実体を持たない仮想アイテムのD&Dの受付けを追加 ・標準コマンドの動作設定に、ターゲットパスは非アクティブペインにするオプションの追加 ・標準コマンドの動作設定に、全てのペインをターゲットに含めるを追加 ・拡張子は表示しない(OS設定)コマンドの追加(詳細/一覧用) ・拡張子は表示を表示設定の追加(詳細一覧/簡易詳細用) ●その他調整など ・アクティブタブの輝度を5%下げた ・グラフィックチップの種類によって、タブバーの枠が透ける現象の緩和 ・一部のダイアログの表記を英語に変更 ・自動非表示モードの設定の保持の方法を最適化 ・オプション画面のレイアウト調整をあちこち Ver.2.0.0  プチメジャーバージョンアップです。  不要情報の削除ツールの提供や、ウィンドウ管理の仕組みが大きく変わっておりますのでご注意ください。 【タブバーを全面的に作り直し】  フルスクラッチで作成したためMFC由来の問題点や要望は全て解消しましたが、代償として排他の関係にあるタブグループという考え方が消滅しました  グループ分けは、まとめて開いたか親子関係を持つ場合の「属性」という扱いになりました  最大12グループで管理されます(グループに属さないも含めると13) ●削除されたコマンド ・新しいタブグループを作成 ・現在のタブを次のタブグループへ移動 ・現在のタブを前のタブグループへ移動 ・次のウィンドウ(タブグループ横断) ・前のウィンドウ(タブグループ横断) ・次のタブグループ ・前のタブグループ ・ツールバー上の新しく開く/ここから開くコマンド(タブバー上へ移動) ・ドキュメントメニュー表示、タブを上に配置、自動非表示、タブのスタイル、自動色分け、枠幅といった属性情報のカスタマイズ ・タブ幅を0にしたときに自動調整する機能  (0を設定することを禁じています、無理やり0にするとコンポーネントのデフォルト値になります) ●追加された機能 ・上下左右のどこにでも配置可能 ・タブバーの非表示 ・閉じるボタンを表示させているとき、ボタンアップ位置によってウィンドウを閉じてしまう問題の解消 ・ドラッグ中に通過しただけでタブ切り替えしない遅延選択 ・タブバーの縦置き対応と自動変形 ・タブバー上に新しく開く/ここから開くコマンドを配置 ・タブ上にD&Dしてファイル処理する機能の追加 ・多段タブ対応 ・縦に並べて表示コマンド追加 ・横に並べて表示コマンド追加 ・重ねて表示コマンド追加 ・子ウィンドウを最大化コマンド追加 ・子ウィンドウを最小化コマンド追加 ・ウィンドウを元のサイズに戻すコマンド追加 ・フォルダーバーで下位階層をタブグループで開くを追加 ・まとめて開いたり、親子関係があるタブをグルーピングする機能の追加 ・前のウィンドウへ切り替え(Zオーダー順) ・次のウィンドウへ切り替え(Zオーダー順) ●動作が変わったコマンド  グループ属性が付与されるようになります。 ・ここからウィンドウを開く系全て ・ここからバックグラウンドで開く系全て ・選択アイテムを新しいタブグループで開く ・下位階層を新しいタブグループで開く系全て 【タブグループが消滅した影響で2画面モードの動作が変わりました】  1タブで2画面を表現します。  全てのウィンドウが画面分割され、新しいウィドウを開く際にはあらかじめ画面分割された状態になります。  キーセットを入れ替えずに画面分割を行うためのコマンドも別途用意しています。 ・最近閉じたバー、前回のタブを復元の出力ファイルのフォーマットが変わったので(2画面分保持するため)出力ファイル名を変更 (LastTab.dat→LastTab2.dat、Window.hist→Window2.hist) ・画面分割切り替えコマンドの追加 ・画面分割するコマンドの追加 ・画面分割を解除するコマンドの追加 ・2画面モードのデフォルトキー配置のTAB/F6/C/M/P/U、Shift+Ctrl+C/M/P/Uの設定を変更 【オプションの整理と追加項目】 ・リストの初期状態オプション追加 ・大量のウィンドウを開くときに警告するオプションの追加 ・従来の大量のアイテムを開くときに警告していた制限値を20→15に変更 ・外部コマンドページをコマンド定義に改名 ・共通操作ページを追加 ・標準コマンドページを追加 ・タブバーの設定を全面改訂 ・交互背景の有効/無効の設定の削除 (問答無用で適用されます。格子色を無効にしたければ背景色と同じ色にしてください) ・Windows7のタスクバーインタラクションのオプションを削除(タブバーがらみで動作しなくなったため) ・自動更新を無効にするアイテムの数のオプションを追加(高負荷時用の安全装置です) ・オーバーレイアイコンの属性情報を使う設定の追加 ・シェルのオーバーレイアイコンの取得条件の設定を追加 ・ユーザー定義バーの設定画面を分かりやすい動作にアレンジした 【新しい外部コマンドの追加】 ・Ver.1→Ver.2の移行ツールの作成(Update1To2.exe) ・似ている名前のフォルダーに分類してコピーコマンドの追加 ・似ている名前のフォルダーに分類して移動コマンドの追加 ・コピー/移動コマンドに、他のタブへコピーコマンドモードの追加 ・圧縮コマンドに、他のタブへ圧縮コマンドモードの追加 ・書庫展開コマンドに、他のタブへ展開コマンドモードの追加 ・Shift+Ctrl+Cに他のタブへ拡張コピーコマンドを割り当て(コマンドモード/2画面モード) ・Shift+Ctrl+Mに他のタブへ拡張移動コマンドを割り当て(コマンドモード/2画面モード) ・Shift+Ctrl+Pに他のタブへ圧縮コマンドを割り当て(コマンドモード/2画面モード) ・Shift+Ctrl+Uに他のタブへ展開コマンドを割り当て(コマンドモード/2画面モード) 【その他】 ・詳細一覧で交互背景を適用するようにした ・交互背景の条件として一行選択が必要である条件を廃止 ・ユーザー拡張用のツールバー画像で高さの自由化(画像の高さが16pix/15pixのどちらでも読めます) ・設定の初期値を調整 ・アドレスバーのジャンプの際、コンボボックスの編集条件を緩和してエラーになりにくくした ・サイト引越しに伴いヘルプのリンク先を変更 ・オプションのキー割り当てに、選択項目のみ初期化を追加 ・オプションのキー割り当てに、全て初期化を追加 ・従来の初期化ボタンを、現在のセット/修飾を初期化に名称変更 ・コピー/移動/圧縮/解凍コマンドの他のタブフォルダーの指定で、入力ミス時に戻せなくなるので自ウィンドウを含めるようにした ・ソート種別「大小文字判定あり」の追加(文字コードより25%ほど高速) ・ソート種別「ソートなし」の追加(文字コードより30%ほど高速) ・一覧の表示速度を微妙に高速化(数ミリ秒) ・メインメニューのソートモードにラジオボタンをつけた ・単位付与テキストをトリミングして見栄えを整えた ・スキン用のアイコン画像を全て16pixで統一 ・ドロップオブジェクトの仮想アイテム判定に、OSとHDDフォーマット種別ごとのゴミ箱判定を加えた ・プレビューバーでバーのサイズが1以下の場合に回避する処理を追加 ・フォルダーバーでF6キーの動作を追加 ・ランチャーバーの「選択アイテムの登録」で、未選択の場合にカレントフォルダーを追加するか問い合わせる処理を追加 ・ローカルGDIリソースを使い切って開けなくなる前にメッセージを出す処理の追加(環境にもよるけどタブ250枚くらい) ・ステータス表示のアイテム数や秒を3桁カンマ区切りで可読性を向上した ・圧縮コマンドの書庫ファイル名に「...」ボタンをつけた(追加/更新のできるLHA、ZIP、7z、BGAの場合のみ有効) ・デスクトップを除く実体情報の取得に失敗するパスを強制的に仮想フォルダーとして扱うように変更 (主にWindows7のライブラリ配下) ・フォルダ設定、表示設定、フィルタ設定にヘルプボタンを追加 【不具合修正】 ・フォルダサイズ計算時のダイアログで文字化けしている不具合の修正 ・何らかの理由でビューの生成に失敗した場合に割り当てられていないメモリを開放しようとする不具合の修正 ・一覧生成中の中断処理において、スレッドより先にウィンドウが破棄された場合に落ちる不具合の修正 (前述のエラーが発生した際にオブジェクト破棄の順番がたまに壊れるため、順不同になるように対応) ・縮小版表示でGDIリークがあった不具合を修正 ・ローカルGDIリソースを使い切って開けなくなる前にメッセージを出す処理の追加(環境にもよるけどタブ250枚くらい) ・何らかの理由で自動更新用スレッドの生成に失敗した場合に、未取得のハンドルを開放しようとする不具合の修正 ・自動更新監視スレッドの終了リトライが欠落していた不具合の修正 ・リストの自動更新監視スレッドの終了処理の際に、メインウィンドウへメッセージを送る事があり極端な遅延が発生する不具合の修正 ・各種簡易設定ダイアログで保存できない項目があった不具合の修正 ・走査スレッド内でレジストリ参照している箇所で、アクセス衝突が起こる可能性がある不具合の修正 ※補足 【Ver.1系の設定が失われる項目】  タブバー、ユーザー定義バー、フォルダーバーなどに影響を及ぼすようになり、設定の影響範囲が変わったためです。 ・埋込み先編集のリネームを許可する ・ドロップを許可する ・ドラッグ開始を許可する ・ドロップ時に呼び出される外部コマンド(コピー) ・ドロップ時に呼び出される外部コマンド(移動) 【キー設定の初期値変更のまとめ】 ●コマンドモード F6 次のウィンドウに切り替える→次のオブジェクトへフォーカス移動 Shift+Ctlr+C なし→他のタブへ拡張コピー Shift+Ctlr+M なし→他のタブへ拡張移動 Shift+Ctlr+P なし→他のタブへ圧縮 Shift+Ctlr+U なし→他のタブへ解凍 ●2画面モード TAB 次のオブジェクトへフォーカス移動→次のウィンドウに切り替える F6 次のウィンドウに切り替える→次のオブジェクトへフォーカス移動 C 拡張コピー(2画面モード)→拡張コピー M 拡張コピー(2画面モード)→拡張移動 P 圧縮(2画面モード)→圧縮 U 解凍(2画面モード)→解凍 Shift+Ctlr+C なし→他のタブへ拡張コピー Shift+Ctlr+M なし→他のタブへ拡張移動 Shift+Ctlr+P なし→他のタブへ圧縮 Shift+Ctlr+U なし→他のタブへ解凍 ●インクリメンタルサーチモード F6 次のウィンドウに切り替える→次のオブジェクトへフォーカス移動 /////////////////////////////////////////////////////////////////////////////////// // Ver.1.x系 /////////////////////////////////////////////////////////////////////////////////// Ver.1.7.2 ・フォルダーバーの設定でカーソル移動と連動しない設定にした場合にマウス操作ができない不具合の修正 ・インストールフォルダがFAT16/32の場合に、バージョン情報コマンドで本体のバージョン番号を表示しない不具合の修正 ・ドラッグアンドドロップに何らかの機能を割り当てた場合、対象フォルダのITEMIDLISTを即時開放し忘れていたのを修正 ・ツリーのドロップできない所へShiftやCtrlを押しながらD&Dすると、コピーや移動を試みてしまう不具合の修正 Ver.1.7.1 ●フォルダーバー関連 ・Ctrl+Cでコピー機能の追加 ・Ctrl+V貼り付け機能の追加 ・Ctrl+Xで切り取り機能の追加 ・Ctrl+Zでアンドゥ機能の追加 ・Deleteで削除(Shiftキー制御ありのシェル動作)機能の追加 ・F2で埋め込みリネーム機能の追加(※1) ・ドラッグアウト機能の追加(※1) ●アドレスバー関連 ・フォルダーへのアクセスに失敗した場合も、失敗した遷移先をアドレスバーになんか表示させるように変更 ・走査に成功したパスはアドレスバーの文字列の末尾に\記号を付与するようにした ・選択状態のインデックス生成とマッチ処理で、大/小文字の判定をしないように変更  アドレスバーからのファイルの選択が楽になった ●フィルタ設定関連 ・フィルタ設定ダイアログのレイアウト調整 ・フィルタ設定にスペースをOR条件として展開するオプションを追加 ・フィルタ設定の日付指定で2個指定したときのOR抽出になる条件を変更した  (現行の条件式が分かりにくいので否定の場合にのみORにした、サイズ指定と同じ仕様) ・フィルタ設定のサイズ指定の、単位付与表示の反映を改善 ●その他バー ・メニューバーを動かないように変更 ・アプリ終了時のウィンドウは、最近閉じたフォルダーに登録するのをやめた ・プレビューバーの閉じるボタンの動作を本体コマンドの表示切替と同じ動作 ●その他 ・マルチモニタ対応強化。外部コマンドの起動時にモニタ外であった場合、表示位置の補正処理を追加 になるように変更 ・シェルイメージ展開の最低幅を16→4pixに変更(アスペクト比の補正の話で、視認できる最低限の幅の調整) ・オプションの縮小版の画面に説明を追加 ・ビューアからD&Dする際に使ってるC言語の関数をセキュアランタイムへ置き換え  (圧縮ファイルビューアーと、ファイル検索) ●不具合 ・「応答の速いアイテムのみ列挙」のオプションを保存していなかった不具合の修正 ・プレビューバーで、ActiveXをアンロードしても遅延処理でメモリに残るケースに対する後処理を追加 ・最近閉じたフォルダーが終了時に反転する不具合の修正 ・タブグループの生成時に設定されたタブのスタイルが反映されない不具合の修正 ・全ウィンドウを閉じた後、新しく開いた場合に設定されたタブのスタイルが反映されない不具合の修正 ・フォルダーバーで、下位階層の取得をONにした場合に深い階層に移動しようとするとイベントがループする不具合の修正 ・拡張削除コマンド(FileDelete.exe)で、機能優先削除で空フォルダーが削除できない不具合の修正 ※1  設定項目のある位置がおかしいので、Ver.2.0でオプション整理の際に全体設定に移動する予定の項目です。 Ver.1.6.5 ●アドレスバーの周辺 ・テキストの入力エリア可変方式から、フィルタエリアの折りたたみ式に変更 ・入力内容のクリアボタンを追加 ・フィルタ設定ダイアログを表示するボタンを追加 ・フィルタエリアの表示切替コマンドの追加 ・アドレスバーでTABキーを押したとき、補完処理ではなくフォーカス移動に変更 ・リストを取り巻く各ボタンに簡易的なチップテキストで機能を表示するようにした  (ただし、コマンドIDとして割り振っていないものは全て英語表記) ・レイアウト計算を全部作り直した ●フォルダーバー ・フォルダーバーの設定メニューに「自動更新を行う」を追加 ・フォルダーバーの設定メニューが長くなってきたので、階層分けした ・フォルダーバーの連動連動項目が全てOFFの場合に、仮想フォルダーを連動/ネットワークフォルダーを連動がグレイアウトされてないのを修正 ・Lボタン/Mボタン/Enterで現在のフォルダへ遷移しようとした場合に、更新処理を行わないように改善 ●外部コマンド ・アクセスブロック属性の解除コマンドの新規追加  ネットからダウンロードしてきたファイルや、Windowsの標準機能を用いて書庫展開したときに付与される、信頼できないエリアから入手した・・・という警告メッセージが表示される属性を一括削除します。  単純にZoneIDの副ストリームをサイズ0する処理です。 ●本体のダイエット ・定義ファイル系の外部コマンドのUI制御で共通的な部分をまとめて本体サイズの縮小 ・使用予定の無い、外部コマンドUI制御(選択状態によりメニューなどを無効にする処理)を全て削除 ・高速ページアップ/ページダウン(隠し機能)の削除 ・メインメニューのフォーカス移動系のコマンドを、初期メニューに存在しない項目へ移動(置換系なので実行時リソースの節約) ・メニュー項目の整理に伴いアプリケーションの概観コマンドの位置を変更 ・起動時の冗長なオブジェクト生成処理を省いて高速化した ●その他 ・詳細表示と簡易詳細の、一行選択モードの場合のサブアイテムの選択状態の描画を改善 ・ユーザー定義バーをポップアップメニューで表示する際にマウスカーソルを移動しないように変更 ・新規作成ポップアップメニューで、表示する際にマウスカーソル位置に表示していたのを変更 ●不具合 ・ここからエクスプローラコマンドが日本語と英語しかサポートしてなかった不具合の修正 ・現在のフォルダーを共有コマンドが日本語と英語しかサポートしておらず、さらにネットワーク環境によって動作していなかった不具合の修正 ・オプション-リスト-マウスのヘルプページが間違っている不具合の修正 Ver.1.6.0 ●インクリメンタルサーチの強化 ・Shift,Ctrlキーの押下でインクリメンタルサーチの文字列を消さないようにした ・検索文字列の末尾を消すを追加し、各キーモードのデフォルト値のCtrl+Kにした ・現在の文字列で次の候補を探すを追加し、各キーモードのデフォルト値のCtrl+Jにした ・インクリメンタルサーチの有効時間の設定を追加 ・ユーザー定義バーで検索文字列の末尾を消すを追加し、Ctrl+Kに割り当てた ・ユーザー定義バーで現在の文字列で次の候補を探すを追加し、Ctrl+Jに割り当てた ・各ビュー、ユーザー定義バーでインクリメンタルサーチ文字列を独自に持っていたのを共通化 ●外部コマンド関連 ・バージョン情報コマンドは起動が遅くてタイムアウトすることがあったので、時間のかかる処理を起動完了後に遅延描画するように変更 ・書庫DLL情報コマンドは起動が遅くてタイムアウトすることがあったので、時間のかかる処理を起動完了後に遅延描画するように変更 ・外部コマンド側で親ウィンドウを探して、その中央に初期位置を動かすように変更 ・外部コマンドの表示スタイルオプションに、モーダルダイアログモードを追加 ・バージョン情報のUNICODE対応 ・ファイル情報のUNICODE対応 ・ファイル名をクリップボードへコピーのUNICODE対応(置換マクロ系) ・ファイル一覧出力の出力先に\記号を自動付与していなかったのを修正 ●性能パラメータのチューニング関連 ・スレッド分割の閾値の設定を追加 ・アルゴリズム切り替えの閾値の設定を追加 ・オプションに「並び替えアルゴリズムの自動チューニング」コマンドを追加 ●その他 ・シェルモードのサイズと更新日付のソート条件を自前で実装したものに変更  シェル拡張による揺らぎがあるのも問題だが、10倍以上の速度差があったため改善項目として仕様変更した ・文字コード判別処理で日本語固定だった基準のコードセットをシステム値に変更した ・リストの抽出条件の解除コマンドの追加 ・メニューに無いコマンド郡の並びを整理した ●不具合 ・ソート種別の列挙で、表示アイテムのソートをしていない不具合の修正  ポップアップメニュー、表示設定、フォルダ設定に影響していた ・シェル系のソートで仮想オブジェクトとの合成フォルダーの並び順が不定になる問題への対処 ・リソースの誤字を修正 ・各種の文字コード判定処理で、候補に上がってきたものの中で最低スコアのものを採用していた不具合の修正  ただし日本語環境だと補完処理が有効になるので、表面化してなかった ・複数起動しないオプションを設定しても、オプションページを開く順番によって保存されない場合がある不具合の修正 ・ExRunに複数のコマンドを指定した際、Filterの判定前にメニューを表示してしまっていた不具合の修正 ・「_FolderBarSelItem.txt」だけ SCRIPT/OPEN/DROPOPEN/NEW/JUMPコマンドが動作しない不具合の修正 Ver.1.5.3 ●ファイルコピー/移動コマンドの同じ名前のファイルの対処法でリネームする際のダイアログを強化 ・ファイル/フォルダごとに拡張子分割追加 ・日付入力追加 ・時刻入力追加 ・曜日入力追加 ・大文字変換追加 ・小文字変換追加 ・先頭のみ大文字追加 ・末尾の数字除去追加 ・「コピー」の除去追加 ●スクリプトの強化 ・拡張子判別用のExRunコマンドに「|」記号で複数のコマンドを割り当てられるようにした  例えばbmpファイルを編集としたときに、実行時にペイントとGIMPの選択メニューが表示されるような使い方が可能になりました ●オプション強化  設定コントロール数を減らすことによって、見た目の煩雑さの低減を目的とします。 ・リストのマウス操作をコンボボックス→リストにまとめた ・フォルダーバーのマウス操作をコンボボックス→リストにまとめた ・フォルダーバーの操作をコンボボックス→リストにまとめた ・ユーザー定義バーの操作をコンボボックス→リストにまとめた ・拡張子連動の簡易設定画面の説明に追記 ・最近閉じたフォルダーバーの設定画面に説明を記載 ・オプションからエディタ/バイナリエディタ/ビューアーのスクリプト編集と、他のスクリプト編集画面の切り替えを追加 ・ユーザー定義バーでアイテムを選択したメニューにスクリプトを編集する際のコマンドで自動判定タイプを追加 ・スクリプトタイプのダイアログ画面に起動フォルダーや起動コマンドの説明を追記 ●メニュー定義の強化  「送るメニュー表示」「システムフォルダーへジャンプ」「最近使ったファイルメニュー」といった機能拡張パックの前提となるコマンドを追加しています。 ・DROPOPENの追加  選択アイテムをターゲットファイルにドロップオープンする  書式:DROPOPEN説明選択アイテムをドロップされるターゲットのフルパス  ※ドロップオープンなので、ターゲットにフォルダーを指定するとファイルのコピーになるのでご注意ください。 ・OPENの追加  指定アイテムを起動する  書式:OPEN説明開く対象のフルパスファイル名  ※リストの選択状態とは連動しません。連動が必要な場合はDROPOPENかSCRIPTコマンドを利用してください。 ・NEWの追加  指定フォルダーを新しく開く  書式:NEW説明新しく開くジャンプ先のフルパスフォルダー ・JUMPの追加  指定フォルダーへ移動する  書式:JUMP説明ジャンプ先のフルパスフォルダー ●その他 ・最近閉じたウィンドウの保持数が指定数より1少ない不具合の修正 ・メニュー文言を修正  (カスタマイズしている場合は設定画面でリセットしないと反映されない場合があります) ・メニューに無い項目のユーザー定義メニューと、ユーザーコマンドが入れ替わっていたのを修正 ・フォルダー設定されたフォルダーで再描画がかかるとナビゲートロックを強制解除するのをやめた  また煩雑なのでナビゲートロックの状態を覚えるのも保持するのもやめた ・簡易アイコン取得で実体を持たないものを求めた場合に、あきらめるのではなくシェルアイコンでリトライするように変更  遅くなるが見栄えが悪いため ・ユーザー定義バーのアイコン取得で失敗した場合、諦めないで次の候補を探すようにした ・インクリメンタルフィルターからダイアログを呼び出した場合に、初期表示の抽出文字列が異なる不具合の修正(表示だけ) ・インクリメンタルサーチの文字列が喪失した場合はステータスバーの表示を消すようにした Ver.1.4.6 ●外部コマンド関連 ・タイトルバーの連携モードのスペルミスを修正 ・外部コマンド終了時に、本体をアクティブにする処理の改善  権限が足らなかったり、アクティブアプリの属性によって前面にもってこれないケースがあったらしい ・全ての外部プロセスより本体のフォアグラウンドウィンドウ設定が可能とする属性を明示的に付与した ・ファイル一括作成のタイトルバーが間違っていたのを修正 ●キャプションバー関連 ・Windows7の場合、仮想オブジェクトの場合にキャプションバー文字列が化ける不具合の修正 ・未選択の場合には「No selection」と表示するように変更  (空っぽのフォルダーなど) ・サイズ0の場合はサイズを表示しないように変更  (これらはフォルダーなどが主なので表示しない方が適切と判断) ・キャプションバーサイズがおかしくなる現象があったので、アイコン画像の表示をやめた Ver.1.4.4 ●一覧表示性能の向上と省メモリ化  最速の表示条件で、XP/2003は2コアで10~20%、8コアで15~40%程度の性能アップ  ただしOSがVista以降は2~4%程度 ・基底のデータクラスでCStringをやめて、軽量/高速で低機能な文字列管理クラスに置き換え ・new/mallocを全廃してHeapallocに置き換え、ヒープ管理をアプリケーションレベルに変更 ・ヒープ管理方式をLFHに変更(XPのみ、Vista以降はこっちがデフォルト)  アサインサイズが小さく、数が多い場合はフロンドエンドアロケータがLALよりもLFHの方が平均効率が良くなるため ●オプションの強化  設定が難しい、面倒という意見を減らす目的です。 ・メニュー定義コマンド画面からAllCommand.txtを開くボタンを追加 ・メニュー定義ファイルのリストを1行選択に変更 ・外部コマンドの画面を、コマンドID定義と、拡張子判別系のスクリプトに分離した ・コマンド定義ファイルの簡易設定ダイアログを新設 ・拡張子判別系のスクリプトファイルの簡易設定ダイアログを新設 ・ユーザー定義バーのマウス操作のコンボボックスの末尾に無駄な空白があったので削除 ・拡張子色分けを3→6へ増やした ・コマンド系のスクリプトファイルの簡易設定ダイアログを追加 ・ユーザー定義バーの右クリックメニューに下記のコマンドを追加  編集→エディタで編集  スクリプトファイルとして編集  拡張子判別コマンドとして編集 ・フォルダーバーの設定メニュー定義に「オプション」を追加 ●入力系置換マクロの強化 ・キャンセルするとスクリプト中断するように変更 ・ダイアログ内に現在のコマンドラインを表示するように変更 ・入力系置換マクロで、テキスト系、ファイル指定系、フォルダ指定系ごとに前回の入力内容を覚えるように機能追加  次回以降のスクリプトでも同様に表示するが、レジストリに保存しないのでAs/R再起動時にリセットされます。 ●その他 ・MoveFolder.exeのモード情報をWindowsフォルダーのMoveFolder.iniに書いていた不具合の修正 ・ユーザー定義バーの直接操作のコマンド郡に、ポップアップメニューで表示コマンドを追加  旧作のクイックランチャ/フォルダジャンプのメニュー相当の機能です ・ファイル指定のフォルダジャンプ(アドレスバーなどで利用)のパス解析で、仮想フォルダーの判定/例外判定などを強化 ・関連付け実行(選択ナビゲーション)コマンドの追加 ・アンインストーラーがFinの情報を消し損ねていた不具合の修正 ・GDIリソースの取得周りの処理を厳格化  タイミングによって取得し損ねて強行するケースを潰した ・デストラクタにやらせてたCDCの開放周りの処理を全部自前実装した  タイミングによって開放し損ねる場合が起こりうるため ・プレビューバーの画像の描画でブラシを開放していなかった不具合の修正 ・タスクトレイ常駐からアクティブにした場合に画面レイアウトが崩れるので最小化をやめた ・AsrLoadからアクティブにする際に、最小化されていたり非表示になっていたら戻す処理の追加 ・InternetExplore.dllのウィンドウ生成に失敗するケースへの対処  IE7/8/9で別のクラスを使うように変更 Ver.1.3.8 ●色分け強化 ・フォーカステキスト(非アクティブ)の追加 ・フォーカス背景色(非アクティブ)の追加 ・ツリーの背景色を廃止して、ドッキングウィンドウ背景色の追加 ・ドッキングウィンドウ背景色(非アクティブ)の追加 ・ドッキングウィンドウテキストの追加 ・アクティブなバーの背景色を切り替える機能を追加 ・色設定の初期化で確認メッセージを追加 ・仮想フォルダーの場合、アドレスバーの背景色を薄緑にした ・ネットワークフォルダーの場合、アドレスバーの背景色を黄色にした ・2画面モード、インクリメンタルサーチモードの場合、ステータスバーのインジケーターを色塗りしてみた ●まめFileプラグイン対応  UpdateAsr.exeを使用すればユーザーフォルダーにPlugInCommand.txtがコピーされます。  説明は設定ファイル内に書いているのでそちらを参照ください。 ・設定ファイルファイルの初期環境構築対応の追加(FirstSetting) ・アップデート対応の追加(UpdateAsr) ・プラグインコマンドの追加 ・プラグインDLLを格納する用のフォルダの作成と、%CmdPlugin_Dir%置換マクロの追加 ●リスト、ツリーから開けないフォルダーへの強化対応 ・リストへパス情報を渡す際にSHGetPathFromIDList()で変換に失敗するパスが開けない問題への対処 ・ツリーからの移動を一旦テキストに変換せず、ITEMIDLISTのままで動作するように変更  かなり数の異常パターンのフォルダを開けるようになったけど、まだNGなものが存在します。ご了承ください。 ●2画面モード強化  ArcPack、ArcUnPack、FileCpMvに「他のタブのフォルダー」ボタンを追加 ●隠し機能の情報公開  いずれも残念な機能制限や有用性に問題があるので、隠し機能扱いになっているものです。 ・アイコン表示をヘルプに記載 ・アプリケーションに許された権限の一覧をメッセージボックスで表示する機能をヘルプに記載 ・高速スクロールをヘルプに記載 ・全画面表示切り替えをヘルプに記載 ●スクリプト強化 ・?any?、?ANY?、?Any?、?anyfile?、?ANYFILE?、?AnyFile?、?anydir?、?ANYDIR?、?AnyDir?の追加 ●フォルダ作成コマンド強化 ・フォルダ作成に失敗した場合のエラーメッセージが表示されない不具合の修正 ・テキストエリアにファイル名として使えない文字があったら全部"_"に置換するように変更 ・テキストエリアの改行コードにLFが使われている場合に対応 ・テキストエリアにタブ文字が含まれている場合にスペースに置換するように変更 ●一覧表示の強化  合計すると30万ファイルで20~30ms程度の速度アップ。  かなりがんばったのに、結果が微妙 ・ファイル名から拡張子を分離するテキスト処理を、すげぇ微妙に高速化 ・メモリ転送回数を2回ほど減らしてポインタ計算に変更 ・偽装ファイル検出と、拡張子色分けの判定処理を高速化 ・文字列生成をポインタに置き換えたので、一覧の消費メモリを14%削減 ●ツリーの自動更新の強化 ・上位パスの削除に伴うツリーの自動更新でフォーカスが動く場合に、リストへの連動をスキップする仕組みを追加 ・カレントパスの削除に伴うツリーの自動更新でフォーカスが動く場合に、リストへの連動をスキップする仕組みを追加 ・ツリーの自動更新で、カレントアイテムがリネームされた場合に追従する処理を追加 ●リストの自動更新の強化 ・アイテムの削除処理を高速化 ・再描画処理の最適化処理を速度アップ  特にXPで効果が大きいが、7だとちらつきが増えた ●設定の難しさ(?)の引き下げ  大差ないかもしれませんが、とっつきの悪さを低減させる目的です。 ・オプションに、外部コマンドの代表的なスクリプト(エディタなど)を追加 ・コマンドIDの紐付けファイルの編集を追加 ・メニュー定義の呼び出しも追加 ・オプションにヘルプボタンをつけた ●その他 ・ツリーの未選択アイテムを、マウスのコンテキストメニューから削除をすると落ちる不具合の修正 ・初期メニューのリストのアイテム選択定義に(_ListContextMenu.txt)、拡張名前の変更と、一括で名前の変更コマンドを追加  要望があったからなんですが、やっぱしこういうカスタマイズは難しいんですかねぇ ・タブの空欄のダブルクリックで新しく開く機能を封印した ・タブの空欄のダブルクリックで新しく開く機能の代替として、右クリック/中クリックで新しく開くようにした ・ツールバーを固定コマンドの状態を覚えない不具合の修正 ・起動時に外部コマンドをキャッシュして呼び出しを速くする(本体の起動は遅くなります)オプションの追加 ・アドレスバーの書式設定を追加 ・Windows7限定機能、タスクバーサムネイル画像が全く識別できないので、非アクティブタブを4倍に引き伸ばしてカレントパス名を表記した ・最近使ったファイルの削除コマンドを追加 ・仮想フォルダの見分け方で「;」で始まるやつが存在したのでこれに対処  バグだろという気がすんげぇするけど・・・ ・ビュー構築中のタブバーのメッセージに初期化中(Initialize)と接続中(Connect)を追加 ・コマンド定義ファイルの再読み込みコマンドの追加 ・偽装の疑いがあるファイルの検出に、ファイル名が200文字を超えるものも検出対象に追加 ・XPのマイネットワークを開く速度が激遅い現象への対処  (詳細/簡易詳細の付帯情報の取得をしないようにした) ・XPのネットワーク接続キャッシュ配下のアイテムはパス指定でナビゲーションできないため強制的にシェル起動するように変更 ・バージョン情報にCPU情報を追加 ・リサイズ時のチラつきは増えたが再描画が欠けることがあったのでリスト周りの再描画スキップ処理を削除 ・スクリプト内のOpenModeの判定が間違っていた不具合の修正 ・ユーザー定義バーの「このバーの標準動作」に「自動判別」の動作が欠落している不具合の修正 ・プレビュープラグインが読み込めない場合にプレビュー情報を開放しない不具合を修正 Ver.1.2.3 ●最近閉じたフォルダバーの拡張 ・アイコンの表示の有無の設定を追加 ・フルパス表記の設定を追加 ●属性変更コマンドのUIを全面リニューアル  年月日、時刻、ミリ秒を分割し、独立指定を可能にしました。  例えば、選択したファイルの日付は変えず時刻やミリ秒だけ00:00:00にするということが可能になりました。 ・日付、時刻、ミリ秒を分離し、独立指定を可能にした ・現在日時の入力ボタンの追加 ・作成日時に更新日時の値を入力するボタンの追加 ・時刻、ミリ秒を強制的に0にする機能の追加 ・進捗表示が32,767個でループしていたものを、3,276,700にした ●登録フォルダーの参照ボタンの追加 ・コピー/移動の「ファイルの出力先」と連動する登録フォルダーボタンの追加 ・圧縮の「格納先フォルダー」と連動する登録フォルダーボタンの追加 ・解凍の「解凍先フォルダー」と連動する登録フォルダーボタンの追加 ●関連付け設定  環境依存の問題と、OSの設定などの影響を受ける問題点が多かったので集中的に手を入れてます。 ・全選択/解除でアイテムの選択漏れがあったのを修正 ・Windows7、規定のプログラムでMArcを指定していない場合にAsrloadが2個表示される不具合の修正 ・WindowsVista/7で関連付けの際に、常にユーザー選択をリセットするように変更 ・フォルダ、ドライブへの関連付けはXPモードと同じUIになるように調整 ・フォルダ、ドライブへの関連付けを標準にするのはヘルプに記載とするように方針変更 ・AsrLoadのエラーメッセージを強化、ただし全部英語表記 ・AsrLoadからの連携をメッセージ送信(同期あり)ではなく、グローバルアトムを使って非同期で管理するようにした  (OS側の都合でSendMessage()で送られたメッセージが破棄される事があるのが確認できたため) ●外部コマンド呼び出しで10秒タイムアウトが発生する環境への対策 ・外部コマンド呼び出しの際、Mモードのみの場合にウィンドウハンドルを探しに行かないようにロジックの追加 ・原因特定用に外部コマンド呼び出し後のアイドル待ちとウィンドウハンドル走査のメッセージを見分けつくようにした ●UI周りの改善 ・ユーザー定義バーの現在の階層をタイトルバーに表示するようにした ・キー割り当ての編集ボタンにショートカットが付与されていなかったので追加 ・オプションの各画面からF1でオンラインヘルプを直接開けるようにした ●キャプションバーの新設 ・実行ファイル、偽装の疑いのあるファイルの注意喚起機能を付与 ・広くファイル名を表示することによる欠けの減少とタイムスタンプ、サイズの表示を付与 ●ツリー連動の強化 ・タブ切り替えでツリー連動の設定を追加 ・仮想フォルダーの連動の有無の設定を追加 ●自動更新のイベント処理を改善 ・イベント最適化を改良 ・ディスクのライトバックキャッシュの影響を受ける誤検出を極力抑制するようにした ●その他 ・偽装の疑いのあるファイルの検出を、仮想名称から実体名を元にチェックするように変更 ・プレビューバーに表示するタイミングをフォーカス移動を、フォーカス+選択が移動した状態に変更  スペースキーによる連続選択で再描画されるのがうっとおしいため ・自動更新の遅延時間の最大値を1,000ミリ秒→10,000ミリ秒に変更 ・マルチコア動作でアイテム数が少ない場合のパフォーマンスを向上 ・スレッドバリアの調整、カーネル占有時間が微減 ・エディタなどの初期スクリプトのパス指定の誤記の修正と、注意書きの変更 ・ユーザー定義バーの編集で、Editor.txtスクリプトを使うように変更 ・Filter.txtのeditスクリプトでEditor.txtスクリプトを使うように変更 ・アイコン取得方法「なし」が機能していない不具合を修正 ・キャプションバーの表示切替で画面が崩れる環境があったので対処 ・終了時にプレビュープラグインが開放できず、プロセスが残る場合がある不具合を修正 ・プレビューバーの画像を縮小しきれず、はみ出す場合がある不具合の修正 ・プレビューバーのテキストサイズを1KB→4KBに変更 ・プレビューバーのテキスト表示の際に未初期化の文字列を表示する場合がありえる不具合の修正 ・まとめて30枚くらいのタブを一気に閉じると、たまに落ちる不具合を修正 ・dequeで作っていたデータ構造をvectorで全作り直し。  中間挿入や先頭挿入部を極力廃止した結果ソートやシーケンシャルサーチなどが1~2割ほど速くなった ・埋め込みリネームがマウスクリックの手順によって発動しないことがある不具合の修正 ※補足  Vista/7以降の関連付け情報は、登録/設定の削除のどちらをしても以前の古い情報を自動修復/掃除します。  ドライブやフォルダーのOpenAsrを初期値にする方法は、ヘルプに記載するのみとします。 Ver.1.1.3 ●追加 ・外部コマンド呼び出しのエラーメッセージをさらに追加 ・アドレスバーの自動補完で、ファイルも対象とするようにした ・アドレスバーを用いたジャンプで、ファイルが指定されている場合は対象ファイルを選択するようにした ・アドレスバーでジャンプ時にCtrlを押していたら、新しいウィンドウを開くようにした ・必須コマンド定義ファイルが読み込めない場合、アプリケーション構成が不適切な場合にヘルプを参照するように誘導するメッセージを追加。(英語表記) ・メニュー定義で、SCRIPTコマンドを追加(コマンドIDを指定せず、スクリプトファイルを直接指定する) ・複数起動しないオプションの使用時、既存のウィンドウをアクティブにする処理の追加 ・最前面に表示コマンドの追加 ・7のタスクバーインタラクションの有無の設定を追加 ・外部コマンドとの通信で、共有メモリを使うモードを追加してこちらを初期状態にした ・各外部コマンドのタイトルバーに、本体からの通知情報を表示するようにした ・外部コマンドのファイル一覧のアイコン取得で、ネットワークの場合は簡易アイコンを取得するように変更 ・「選択状態を保持したまま最新の状態に更新」コマンドの追加(初期メニューに無いコマンドに追加) ・Seekerのターゲットフォルダーバーを再構築  リストボックス→仮想リストビューに変更(一覧を採用したのは、動画などで横置きしたい場合が少なくないため)  アイコン表示の追加  単一拡張子であったものを、全てのフィルタ対象のアイテムを表示するように変更  次/前のファイルで一覧をループするように変更 ●不具合の修正 ・MArcで自己解凍形式のファイルを一度に大量に開くと、一部のDLLでブロックされて読み込みをスキップしてしまう問題へ対処 ・起動時の並列処理でフォルダーバーの生成が追いつかない場合に例外が発生し、処理をスキップすることがあったのを修正 ・起動時の並列処理でアドレスバー生成が追いつかない場合に例外が発生し、レイアウト処理をスキップすることがあったのを修正 ・Vista/7でアンインストール時、関連付けするためのインストール情報の削除で、本体とMArcのキーだけ削除ができていなかった不具合の修正 ・名前の一括変更で、連番を使用しない場合に拡張子のみ変更が入力できない不具合の修正 ・表示モード設定で「アイコン」が選択肢にある不具合の修正 ・プレビュープラグイン内部でコンポーネントウィンドウが生成できない場合に、本体を巻き込んで落ちる不具合の修正 ・Seekerでユーザー定義のアイコン画像が読み込めなかった問題を修正 ・プレビューバーでGDIリソースを開放しない場合がある不具合を2箇所修正 ●調整 ・外部コマンドのウィンドウハンドルを探す処理のリトライを厳密に行うように変更 ・インストール先の問題に起因する問い合わせが多いので、サポート時の必須情報をフルパス変更 ・メモリ情報の表示の更新タイミングを1秒→0.1秒に変更 ・リソース枯渇状態で、GDI周りの安定性を向上 ・外部コマンドを前面固定にしたり、終了時に本体を前面に持ってくるなどの動作指定を、メッセージでやり取りしていたが環境変数でやり取りするように変更 Ver.1.0.7 ●追加 ・外部コマンド実行時のエラーメッセージを拡充 ・表示モード設定、フォルダ設定、フィルタ設定にショートカットキーの付与 ・オプションのユーザーフォルダのページに注意書きを追加 ●不具合の修正 ・アイコンイメージを取得中にスレッドを中断するリクエストが発生するとフリーズする環境があった問題へ対処 ・ExternalDefCommand.txtの改行コードがLFだったのをCR+LFに変更 ・アップデートする時に、テスト実装していたまめFileプラグインのコマンド定義ファイルを必要としていたのを修正(x64) ・外部コマンド実行時、アイドル状態を検出後にウィンドウが表示されていない場合に連動に失敗する問題への対処  (画面描画が遅い環境、HDDが遅い環境などで顕著になっていたものと思われる) ・パス指定なしの呼び出しの際にアプリケーションを乗っ取る事ができる脆弱性への対応 ●調整 ・拡張子がlnkの場合、強制的に縮小版画像の取得をスキップするように変更  (切断されたネットワークや取りだされたリムーバブルメディアだと、実用にならないほど遅くなるため) ・固定タイプの外部コマンド呼び出し(Fin.exeやVersionInfo.exe等)の高速化 ・リソース文言を微修正 ・サムネイル画像生成に失敗し、アイコン画像を使用する場合の速度を大幅に向上(シェルアイコンの取得処理をまとめて共通化した) ・ショートカットとして貼り付け、通常の貼り付けと完全に分離した(バックグラウンド貼り付けしない) ●機能削除 ・表示モードの一つ、「アイコン表示」を封印  表示速度が遅い事、Shift押下時の選択範囲を誤認識するため封印します  経過措置としてコマンドIDは生きているし、表示モードの補正もしないが、いずれ無効になります  今回は、メニューなどからコマンドを撤去にとどめた修正です Ver.1.0.4a ・アップデートする時に、テスト実装していたまめFileプラグインのコマンド定義ファイルを必要としていたのを修正 Ver.1.0.4 ●追加 ・各外部コマンドでF1を押すとオンラインヘルプに飛ぶ機能の追加 ・拡張子なしでファイル名をクリップボードへコピーコマンドの追加 ・外部コマンドの呼び出しでShiftやCtrlが押されていれば背面で起動されてしまう場合があるが、キーを離したタイミングで前面に持ってくる処理を追加 ・選択解除コマンドの追加 ・外部コマンドの終了時の動作オプションの追加(外部コマンド終了時に本体をアクティブにする) ・置換マクロの?SelPath?がヘルプに乗っているのに未実装だったので作成 ●不具合の修正 ・リストの選択アイテムを取得する際に、フルパス取得なら仮想アイテムも対象としていた不具合を修正 ・2画面モードでArcUnPackを呼び出した場合に、展開先に対象書庫名を候補として挙げてしまう不具合の修正 ・ファイル名をクリップボードへコピー/ファイル名をフルパスでクリップボードへコピーで、末尾に改行コードを含んでいた不具合の修正 ・ターゲットが存在しない場合に強制的に2画面モードで呼ばれた場合、ArcPack、ArcUnPack、FileCpMvのターゲット指定が初期化されない不具合の修正 ・Brwsで複数起動しないオプションが保存されない不具合の修正 ・ファイルの属性などの更新を検出した場合の自動更新で、CPUとHDDがビジーかつ、1つのタブ内の複数スレッドで同時に更新が発生した場合にメモリリークする可能性がある不具合の修正 ・バックグラウンド削除時に、インスタンスが生成できない時に(削除コマンドを並列で300個くらい発行)メモリリークが発生する不具合の修正 ・バージョン情報で搭載メモリが2GBまでしか認識できていなかった不具合の修正 ●調整 ・コマンドが増えたことで_ListContextMenu.txtを更新 ・ArcPack、ArcUnPack、FileCpMv、FileShortcutで相対パス指定の禁止と初期状態の非選択化 ・チェックボックスの表示タイプの切り替え時にリセットを行うように変更 ・全ダイアログのレイアウト調整 ・デフォルトのメニュー定義ファイルにショートカットを付記 ・自動更新時の若干の速度アップ Ver.1.0.0 ・まだまだ積み残し機能が山盛りあるけど、良く使う機能はあらかた揃ったのでリリース