ClipSaver

最新版 05/10 2024
 比較的よくありがちな Clipboard の Text の経歴を取りそれをいろいろな名前をつけて保存して再利用しようと するものです。
特徴としては
ClipSaver フォーム 保存リストをメニューにして表示します。 テキストクリップボードをコピーします。 クリップボードの内容が変わると取得します。 リストをクリップボードに入れて他のプログラムに貼り付けます。 簡単 手軽にテキストを編集できます。 保存リストを表示しています。

○ 動作環境
Win 98 / Win 2000 / XP / Vista / 7 / 8 特別なランタイムはいりません。

○ インストール/アンインストール方法
適当なところに置いて適当にショートカットを作ってください。
アンインストールは実行ファイル ClipSaver.EXE ClipSaver.dll ClipSaver.chm ClipSaver.txt と ClipSaver.EXE が終了時に作る ClipSaver.QNF 自分で作成した *.csl と ショートカット 等を削除して下さい。 他には何も記録しません。

他の 詳細は 同梱の ClipSaver.chm をご覧下さい。


1997/12/20 Ver 1.00 初公開〜
1999/3/08 Ver 1.362 此処までは Visual Basic 版です。


1999/07/12 Ver 2.00 C++ で作り直しました。常駐量もだいぶ少なくなりました。

2000/11/25 Ver 2.180
サイズ 動作 拡張性 等を考慮して他のテキスト取得 は DLL に任す事にしました。他のテキスト取得 も ToolBar メニュー タブ Header ToolTips も取得できるようにしました。
  〜
2005/01/03 Ver 2.464
Win 2000 XP 環境でタスクトレイアイコンウィンドウ メインウィンドウの場所場合によっては 左クリックメニュー(リストのメニュー)がおかしな所に出る事を無くしました。又 同時キーが解りにくかったクリックボードの行ソートの Shift 無変換 キーでメニューが変わるようにしました。
ClipSaver.DLL も若干ですが余分な重複コードを削っています。
2005/01/10 Ver 2.470
クリップボード消去にクリップボードのテキストを残して消去の機能を付けました。リストをコピーする殆どの場合に 無変換キーを押しているとクリップボードのテキストの後ろにリストを付け加える仕様にしました。ファイルを開く 時の更新ファイルを保存するかどうかの確認を省く Shift と 現在使用中のフォルダーを変えない キーが Shift で 重なっていましたので此を Ctrl に変えました。又 フォーム状態での CLS ファイル メニューの横にチェックが 付かない不具合を修正しました。後 相手と自分のアクティブにされた状況によっては送る時に相手をアクティブに出来ずに送れない可能性を減らしました。その他危ないパスを潰したり各関数の呼び出し法を変えコードを分かり易い物に して気の付いた仕様上の不都合をだいぶ改善しました。
2005/02/21 Ver 2.480
テキストをリストに でテキスト部に選択されている部分が有る時には此の選択部分だけをリストに加える仕様にして テキスト部とリストの活用方法の選択を拡げました。此に伴いテキスト部に此と同じ機能の ショートカットキー Ctrl + L を メニューの出方が不自然ですが テキスト部の右クリックメニューに 選択をリストに のメニューを 加えました。
2005/02/25 Ver 2.490
リストのメニューに全て消去を付けました。又全てを消去 + 無変換キーでリスト全てをクリップボードに入れてから消去する機能にしました。後 リストの無い時にリスト部を左クリックすると落ちるバグを修正しました。
2005/03/25 Ver 2.500
リストボックス テキスト部に Ctrl T でメニューを出さなくても相互に リストテキストの やり取りをより出来る様に Ctrl S でフォーカスを変えられる様にしました。 テキスト部の表示をする所の危ない パスを潰しました。CLS ファイルを開いた後に CLS ファイルの 有る場所を見失ってCLSのメニューが出なくなる事のある不具合を修正しました。 ファイルメニューの ショートカットを通常使用されている一般的なキーにしました。
2005/06/24 Ver 2.510
キー Ctrl + D E F G で 他のテキストを リスト 又はテキストに加えるのはクリップボード 経由でなく直にメモリーハンドルでする事にしてシステムへの影響はなるべく排除する事にし無駄を無くしました。 この為 ClipSaver.DLL も Ver 1.230 以降を使用して下さい。( 以前の物だと メモリーアクセス違反が出ます。) 後 アイコンウィンドウにも Ctrl + G F TAB のキーをサポートする様にしました。
2005/07/11 Ver 2.520
リスト と アイコンウィンドウに *.TXT *.LST のファイルドロップでそのファイルの 各行をリストに加える機能を付加しました。アイコンウィンドウに キー操作 A Q をサポートしました。 あまりに短いクリップボードの内容をテキストに表示させると警告音が鳴ってしまう不具合を修正しています。
2005/07/20 Ver 3.000
ファイルの保存 に追加 読み込みリストを追加 に テキストファイル LST ファイルも選択出来る様にして 単なるテキストファイルとの親和性を高め *.CLS ←→ *.TXT の行き来を楽に出来る様にしました。 此に伴って テキストを読み込んで立ち上がる事も可能になりました。 後 今回のバージョンアップにより 又 懸案であった長い名前の時にバッファがオーバーしてしまう事を防ぐ 為に ClipSaver.QNF の仕様を変えています。必ず一度此を削除してから再設定して使用して下さい。 ( 以前の物は読み込まない様にガードは入れて有ります。)
2005/07/28 Ver 3.010
内部的にリストの保持と同時にサイズも常に持つようにして 何をする時でもリストの 文字数カウントの再確認をしないですむようにして 動作の無駄を省きました。他のテキスト取得を取得する 時の Tab で記憶したカーソル位置は SlipSaver.QNF に残す事にしました。後リスト部の一番下で不自然に スクロールするのを防ぎました。
2005/08/18 Ver 3.020
DLL とのマッチングを良くする為と戻り値の統一の為に 第二引数 はアドレス渡しで Call する仕様にし 作業バッファも此と共に送るようにして Dll 立ち上がり時の無駄を省く様にしました。 此により GetWinTx から戻った時に 長さの再確認も省ける様になりました。 必ず DLL を Ver 1.240 以降に変えて下さい。 アイコンウィンドウに キー Z Space 機能を フォームで表示している時に キー D E 機能を付加しました。 新しいコマンドライン /MEM1 /MEM2 /MEM3 を加えました。 ClipSaver.DLL については ListView のコラムの数が取得できない時に同じ物を沢山取ってしまう不都合を 修正しこの部分での余分なコードを除きサイズダウンをしています。又 サイズの計算違いで子ウィンドウが 重なっている時に此を正確に特定できない事の有るのを修正しました。作業バッファは Call 側からもらう 事にして無駄を無くしています。この為作業バッファを大きく取る事が出来取得可能文字数も増えています。 後 リンクオプションを変えて余分な物はリンクしないようにしてサイズを大幅減少しています。
2005/09/30 Ver 3.030
出来るだけ共通のショートカットが使える様にメニューのタイトルを変え新たなキー入力もサポートしました。 トレイとフォームでメニューの共通化をして解りやすくしてリソースとコードをかなり減らしました。 何個かのメニューの無効化の不整合も修正しています。テキスト部の選択部分がフォーカスの無い時でも 解るようにしました。
2006/01/18 Ver 3.040
フォームへのファイルドロップ機能を付加し同時にアイコンウィンドウへのファイルドロップの仕様も変えました。 後 メモリー取得の確認が漏れている危ないパスを修正し無限ループになってしまう可能性の有る所を 2カ所排除しました。
2006/05/18 Ver 3.050
アイコンウィンドウ 又はフォームでもフォーカスの様子によってはキー入力の経歴を消しきれずに他のウィンドウに キーの影響を与えてしまう事が有るのを防止しました。アイコンウィンドウだけから始めた時に常にトップに が 外れてしまう事が有る不具合を防止しました。クリップの行ソート 装飾をした後はAuto Clip が有効でも此は 自動的にはリストに入れない仕様にしました。ClipSaver.dll クリップの行装飾 の行頭削除 で Tab + 無変換 キー で 行頭の Tab Spece( 全角も ) 以外を削除してからそこから続く Tab Spece ( 含む全角 )を全て削除する機能を 付加しました。
2006/07/27 Ver 3.060
アイコンウィンドウ が何らかの理由で表示されなくなってしまった時に何らかの メニューを出す事でトップに表示される様にしました。又 アイコンウィンドウの作成 確認 消去の所の コードの効率を若干アップしました。
2006/08/03 ClipSaver.DLL Ver 1.280
同梱の ClipSaver.DLL を直下のコントロールの種類を識別する所を関数を呼ばずにその場で直に 又 識別するのを 外れるのを前提にプログラムする事で効率 スピード( 此の部分だけなら 3 倍以上速くなりました ) サイズ共に改善しました。
2006/09/24 Ver 3.070
立ち上げ時のキーオプションCtrl+無変換 又は コマンドライン /MNU で CLS のメニューを 出して保存 CLS を選択して立ち上がる機能をサポートしました。又 Ctrl + N で直接 CLS の メニューを出す様にしました。後ファイル名を コマンドラインに指定した時にアイコンウィンドウが 設定と異なり現れない不具合を解消しました。
2006/11/22 Ver 3.080
他のプログラムにクリップボードの内容を貼り付ける所のコードを自分の動作が 全て終わって落ち着いてから 他に影響を与えないタイミングでスタートする様にしました。此と共に此の 辺りのコードをメッセージのタイミングに作用され難くより整合性の有る確実なコードにしました。 リストの左上角 左下角 にマウスカーソルを持って行ってリストをスクロールしてからリストを選択した 時にリストの順序を取り違えたり 何も反応しない事が有る不具合を修正しました。
2007/01/03 Ver 3.090
編集メニューの テキストを を テキスト付加 に変えて テキスト部にある 物を行ごとに 先頭に付加する 行の後に付加する機能を新設しました。此に伴って テキストを読み込むサイズの制限を 無くしました。( テキストボックスで扱えるサイズ 64 Kb は残っています。) 又 此の辺りのメニューも Shift Ctrl 押しでリアルタイムに変わるようにしました。 後 此を サポートする ClipSaver.DLL も変わっています。
2007/04/21 Ver 3.100
CSL ファイルのリストメニューを作る時にファイル名のソート 同一名を探すのを オンメモリーで処理する様にしてスピードアップとシステムへの負荷を軽くしました。 立ち上がりやフォーカスが変わった時等に不自然にリストが選択されてしまったり リストボックスの 選択ラインと保存リストのメニューの現在選択されて・の付いている物の意味がはっきりしなかったので 此をはっきり分けました。
2007/05/08 Ver 3.110
設定メニュー ,;, 以降を代入 を新設して 各リストの 説明,;,本体 等の代入に便利に 使用出来る様にしました。
2007/05/12 Ver 3.120
テキストクリップボードがその場所に入力出来る時は + 付きのカーソルに リストを 他に貼り付けられる( 送れる ) 時のカーソルを T 付きにしてカーソルで Ctrl や Shift キーによるキーの 押し下げでの動作を判り易くしました。 後 3.100 での選択ラインと保存リスト選択の変数を分けた時に生じた リストのメニュー テキストに 等の 何個かの不具合を修正しました。
2007/08/26 Ver 3.130
アイコンウィンドウの位置をSetting メニューの アイコンを表示 を Shift キーを 押しながら選択する事でこの位置だけをClipSaver.QNF に書き残せる様にしました。 ClipSaver.DLLは 内部バッファをより整合性が有り安全な数に調整して一回の文字取得数を 208 → 216 に増やしました。
2007/12/27 Ver 3.140
ワード等の段落番号の様な番号をテキストでも入力出来る様に新たにTxU のリストの 選択時に テキストに ...;;001;; ..の書式が有れば連番を出せる様な機能を新設しました。後 リストの並べる 数を 最初に当たる可能性が有る物を採用する事にしました。 一応 Windows Vista でも検証しています。
2008/01/07 Ver 3.150
,;, 以降を代入 の ,;, 以降が結構長い URL 等があり リストの文字列長さが 126文字 以上(半角)の制限を無くしました。ただ此では 長い保存リストの時に ,;, を探すのに時間がかかってしまう ので 最初の 48 文字(半角)の間に 有った時に変えました。又此を探してセットする時期ももっと適当な時期に 移してサイズを抑えました。後クリップボードに入ったかどうかを確認してから動作を決める等 何カ所かの確認を堅くしています。
2008/01/13 Ver 3.160
入力ボックスのフォーカスが無くなると閉じてしまう様な物にでも対処できる様に リストボックス上で Ctrl + Shift キーを押しながらカーソルを動かすと カーソル直下のリストを 自分はアクティブにならずに送る機能を付加しました。
2008/03/14 Ver 3.170
ClipSaver.DLL の 行頭に 1 から + に対応しました。又 何個か有る再描画の為の メッセージを出す関数を目的の動作が外れた時に出来るだけ他のシステムに影響を与えない安全な関数に 変えました。
2008/05/10 Ver 3.180
ClipSaver.DLL を ツールチップのテキストも取得出来る様に拡張し共有メモリー使用の 危ないパスを修正しました。ClipSaver はツールチップテキストの取得に対応し ClipSaver.DLL から帰った 時に確認の音がしないパスが有ったので此を修正しました。
2008/05/18 Ver 3.190
リスト部 テキスト部 に Ctrl + P アイコンに P の キーで ツールチップテキストの取得 機能を付け 又 ツールチップテキスト取得範囲も拡張しましたました。 後キーの反応が仕様通りでない 部分が有ったので修正し 多少取得確認の曖昧だった危ないパスを直しました。 ClipSaver.DLL もテキストを取得する前のバッファサイズとの確認を堅くしています。
2008/11/16 Ver 3.200
テキストにフォーカスが有った時のリストを左クリックしてのクリップボードへの コピーと送る動作が安定しないのを修正し同時に余分な事をしているパスをしない様にしました。 メニューを出す前のコードを整理してメニューにより不必要な物はしない事にして効率を上げました。 アイコンウィンドウの下 1/3 部分のクリックはアクティブだけでメニューを出さない仕様にして より アクティベートし易くしました。 又 アイコン ウィンドウの位置だけを 記憶するメニューが解り 難かった ので ファイルメニューに アイコン位置を保存を新設しました。
2009/02/08 Ver 3.210
ClipSaver.DLL でテキストクリップボードデータの改行の変換を出来る様にしたので 此に対応した編集メニューを新設しました。何個かのメニューの表現を適切な物に変え解りやすく 又キーを押している事での動作も何カ所か統一しました。
2009/05/20 Ver 3.300
File メニューに今更の新規作成を新設しました。リストの右クリックメニューの コピー 切り取り 送る 又 リストのメニューも Return キーで選択された 時には 設定の ,;, 以降を代入とは関係無しに全てを対象とする事にました。 コマンドライン解析部分を若干ですが効率化しました。 ClipSaver.dll と共に Windows 98 用のメモリマネージャー用の読み込み時間短縮オプションをやめて アプリケーションのサイズ ( ディスク サイズ )を縮小しました。 今回から同梱の ClipSaver.dll は Win NT 2000 XP Vista 対応の物を同梱しています。 Win Me 98 95 の方は ClipSaverDLLAll を使用して下さい。
2009/08/24 Ver 3.310
自身のテキストをどうかする時に此を取得できなかった時のメモリー解放を確実に する様にしました。新しくクリップボードのテキストを取得するコードを書き直しリストに代入する所と 共に効率化しサイズも若干減少させました。
2010/02/12 ClipSaver.dll Ver 1.420
IE8 では ClipSaver.dll で Statusbar のテキストを取得しようとすると影響を してしまう事が有ったので 此に対処し IE7 IE8 のタブ型の Statusbarにもきちんと対応する様にしました。又 処の所の確認をしっかりとして 動作を決めるコードにして場合によっては文字数の制限を無くし 余分な作業をしない様にしました。
2010/03/18 Ver 3.320
Screen の横幅が増加した環境が増えたと思われるのでフォームの許容最大幅を 増加させました。 此に伴って保持リストを表示するするリストとメニューの文字数を 32 〜 60 文字で フォームの幅と連動する様にしました。( 今までは 48 文字で固定でした。)
2010/06/20 Ver 3.330
テキスト部の右クリックコンテキストメニューの リストにを選択する時に 無変換キーを押しながら選択するとリスト部に選択部分 ( 青くなってるリスト ) が有る時には 此のリストを テキストで置き換える様にしました。又 設定メニューの ,;, 以降を代入 の設定と 保存リストメニュー選択時の Enter キー リスト部の 右クリックメニュー 此を送る 此をコピー 切り取り の動作は ,;, 以降を代入 の設定とは 逆の動作にしました。
2010/07/07 Ver 3.340
Copy Clip ボタンと Copy Clipboad のメニューも フォームが 表示されていてリスト部に 選択部分 ( 青くなってるリスト ) が有る時には無変換キーが押されていれば Clipboad テキストと置き換える様にしました。
2010/08/11 Ver 3.350
立ち上げ時の キー同時押し動作を 無変換 + Control と 無変換 を換えました。 CLS メニューだけの立ち上げ時に取得できない物を毎回取得しようとしている無駄を無くし此の部分での変数の 重複から来る不具合も修正しました。後 リストのメニューを出している時の何らかの操作時の表示変化の改善を しました。
2010/10/01 Ver 3.352
アイコンウィンドウが 最上位ウィンドウと重なっている時の動作を改善しました。又 此のアイコンウィンドウが 何らかの関係で隠れてしまうのを出来るだけ無くす様にしました。
2010/11/01 Ver 3.354
アイコンウィンドウ の表示と書き換のタイミングを自然になる様にしました。ClipSaver.DLL は 子ウィンドウの クラスを認識するコードを効率の良くサイズの小さな物に換えました。
2011/01/12 Ver 3.360
ツールチップの取得 のコードをより汎用性の有る物に換えて想定できないクラスの物でも取得できる様にしました。 編集メニュー クリップの行を修飾 改行の変換を 改行→ LF に変えて 此をキー押しのリアルタイム変更をするように して解りやすくしました。
2011/03/25 Ver 3.370
フォームで表示の時にテキスト部分を表示しないオプションを新設し 此に伴って フォームのサイズもより コンパクトに出来る様にし 立ち上げ時のオプションと表示方も変えています。
ヘルプファイルを chm ( コンパイル済み HTML ヘルプ ) に変え Windows Vista 7 でも KB917607 ( WinHlp32.exe ) の必要を無くしました。
2011/08/01 Ver 3.372
設定ファイルを読み込む時や部分変えの時の安全性を高くし 此の値からの表示もより確実な物にしました。 フォルダ−を開く時やヘルプファイルを開く時の主体をはっきりさせました。
2011/09/05 Ver 3.380
リスト保存ファイル *.CSL にパスワードをかけられる様に 又 此のファイルは直接 内容が読み取れないデータで 保存する事にしました。
リストの無い *.CLS を読み込んだ時に表示か変わらない不具合等 数カ所の細かい不具合の修正をしました。 後 *.TXT *.LST ファイルの扱いの柔軟性を上げています。
2012/01/08 Ver 3.382
キーが押されるのを検出するのと押されたキーを待つ所を整理して場所によっては 1 コールで済む様に効率化しました。必要のないリソース解放をやめました。
2012/02/06 Ver 3.390
USB メモリー等で ClipSaver と *.CLS を持ち出した時に 環境によってドライブレターが変わり *.CLS ファイルのパスが失われた時も記憶しているドライブレターを修正して此を戻す様にしました。 新しく *.CSL を 開いて 此が今までの作業パスと変わったらすぐに記録する様にして記憶すべきパスが 書き込まれないで終了して後で此のパスが失われない様にしました。後 フォームの 位置とサイズを書き残す フォーム位置の保存 メニューを新設しました。
2012/03/12 Ver 3.400
重くて反応の遅い ウィンドウにテキストを貼り付ける時にキー出力タイミングが 速すぎて相手が受け取れない 事が有るのを修正しました。外部からの終了メッセージでも保存リストが 変更されていた場合に確実に 保存確認してから終了出来る様にしました。Control+S は上書き保存に変え テキスト←→リストの フォーカス変更は Control+W に割り当てました。
2012/04/03 Ver 3.410
パスワードを掛ける時の再確認をする様にし パスワードを掛ける上書き保存との共通のメニューも状況 キーによってリアルタイムに変わる物にして解りやすくしました。 又 この辺りの ファイルの保存の内部的な確認をより確実な物にして取り違いをより少ない物にしています。
2012/05/08 Ver 3.412
テキストを貼り付ける時にキー出力タイミングをもう一つ確実なコードを入れました。
ClipSaver.dll は クリップボードデータが取得できるのとメモリー確保が出来る コードを同一で処理して いたのでクリップボードデータが取得出来ない時に危ないパスが出るのを修正しました。
同梱のヘルプファイルを図を入れて若干ですが使いやすい物にしています。
2012/07/05 Ver 3.420
テキストクリップボードデータが常に Windows 内部で使用している Shift JIS ( MS932 )で ない時が有り この時には文字化けしてしまうので テキストクリップボードデータを取得する時には Unicode 優先で 取得して此を MS932 に変換する様にしてどの様な文字コードセットでも OK にしました。 ( ClipSaver の内部動作 書き出しデータを Unicode にしたという訳では有りません。) ClipSaver.dll も同様です。
保存リストの表示で改行記号を "・" で 途中で切り上げた所は "》" で表示する事にして解り易くしました。
2012/08/24 Ver 3.430
設定ファイルにバッファオーバーの可能性の有る所が有ったので此を変えました。従って以前のままの 設定ファイルで立ち上げると作業パスを失うので一度何らかの CLS を開いて解消して下さい。
自分がアクティブにならずに送るキーを Control + Shift から Control だけにしました。
LastUsed にファイルからリストを追加すると此が LastUsed でない扱いになってしまう不具合や 他小さな不整合を修正しています。保存リストの表示で途中で切り上げた所は "》" から "…" に変えました。
2012/10/08 Ver 3.432
ClipSaver.exe ClipSaver.dll 共に テキストクリップボードデータを取得する際に全く廻る可能性の無い Shift JIS での取得コードを削りサイズダウンしました。
2012/11/17 Ver 3.440
独立した保存リストメニューからのリスト選択時は直に結果を廻す事にして余分な待ちを省きました。 又 立ち上げ時の コマンドライン 指定の ファイル名と SW オプション キーオプションとの 組み合わせに 柔軟性を持たせ 立ち上げ時のコンフィグレーション の種類を拡大しました。
その他 設定が変わった時のコントロールの無駄な削除をやめて内部的な効率化をしています。
2013/01/10 Ver 3.450
コマンドライン /MEM の Memo Setting の時にフォームを表示する時にはテキスト部を表示する設定にしました。 内部的なコマンドメッセージを呼ぶ前にフィルターで排除して余分な関数コールを減らしました。後 *.CLS ファイル選択読み込みの確認を確実にする様にしました。
ClipSaver.dll は文字列検索コードをより汎用性の高い関数に換えてサイズを減らしました。
2013/03/07 Ver 3.452
ツールティップテキスト取得ルーティン用の関数とバッファ変数の独立性を上げて 他の作業をしても重複から来る 間違い 最悪の場合戻れなくなるパスを無くしました。
2013/04/30 Ver 3.460
アイコンウィンドウをメインウィンドウとの関係をはっきりさせて本体に隠れない様にしました。 タスクトレイ上のアイコンでのアクティブウィンドウ取得をより確実な物に フォームやアイコンウィンドウの 時はより効率的な物にしました。
ClipSaver.dll は速度の速い自前の文字列検索関数にしています。
2013/06/26 Ver 3.500
フォームがフォアグラウンドにならなくても有る程度の事が出来るように B.G.タイマー 機能を新設し マウスカーソル移動での機能の拡大をして 操作の統一を採りました。
フォアグラウンドの相手によっては自分がアクティブになるのとキーの押されるメッセージのタイミングに ずれが有り反応に引っかかりが出てしまう事が有るのを改善 細かい動作の不具合を修正しました。
Windows 8 の Disable メニュー色の違い から出るリストメニュー表示時の見にくさを改善しました。
アイコンウィンドウはアクティベイト インアクティベイト の切り替えをより正確に切り替えられる様にし 又 ある種のメッセージを内部パスする事で此のメッセージには反応しない様にしました。
2013/06/26 Ver 3.501
メニューをDisable から Enable に変えると結構色々なメッセエージが交錯して重なった 動作が散見された為 情報を一元化して此が起こらない様にしました。
2013/08/15 Ver 3.502
保存リストメニューを示して表示を変える関数は他からも使用されて多機能だったので この動作を メニューの書き換え 動作の切り替え メニューの消去 消えた後のメッセージの流れと 各々分けて整理し 余分な巡りが起こらない様にしました。
2013/10/05 Ver 3.504
来る可能性の無い 又は 来ても意味のない メッセージに対応するのはやめました。 又 ClipSaver.dll と共に ある種の数値変換方法を効率の良い物に変えました。
2013/11/05 Ver 3.510
リストのスクロールをさせるコードを一元化して余分なメッセージが出ない様に効率の良いコードに 変えました。
2013/12/15 Ver 3.520
リストとリストのメニューをリアルタイムに変化させるメッセージのやり取りを他のコントロールとは関連の 出にくい独立したメッセージに変えて他への影響が出ない様にしました。
キー入力を待つ所でメッセージを処理消去する所のコードが自分が終了出来なくなる可能性が出てしまうのを この関数と終了まわりのコードを変えて修正しました。
立ち上がる時に画面描画の無駄な重複 待機を避けるコードにしてより速く表示できる様にしました。
2014/02/05 Ver 3.530
キー入力を待つ所でメッセージを処理消去する所のコードをより効率よく安全な物に変えました。 テキストを送る時に 相手が既に準備が整っていれば余分な事はしないでそのままの状態で送る様にして無駄な手間と 相手が変化する可能性を省きました。
Vista から始まった UAC の関係で 貼り付けが出来ない時 出来る時 ( 送れるかどうか ) の表示をはっきり 区別して表示する様にしました。
2014/04/25 Ver 3.532
ツールチップの取得で ツールチップ だと思われるクラスの定義を変えて 取り違えを少なく 出現した物での ツールチップの適用を広げて取得種類を広げました。又 この時の ウィンドウの列挙を自前の物から ウィンドウの 本来持つ推薦方式に変えて 効率アップとサイズダウンをしました。
ClipSaver.DLL はウィンドウを認識するカーソルの範囲が1ドットずれていたのを修正しました。
2014/07/06 Ver 3.540
キーを待つ間や画面を書き換えるのを待つ間のメッセージは出来るだけ此の期間に処理をする事にして後に 残さない様にして復帰後の反応を良くしました。
長い保存リストの時は見通しが悪くなってしまうので保存リストの表示をもう一段長く出来る様にしました。 リストからテキストにフォーカスが移った時に余分なリスト選択が出てしまう不具合を修正しました。
2014/08/20 Ver 3.544
テキスト表示のコンテキストメニューに加わる テキストに をより解りやすく間違えが 出にくい様に リストに追加 と 無変換キーが押された時は リストと入替 Shift キーが押された時は リストに挿入 とリアルタイムに変わる様にしました。又 此の入替リストを取り違える可能性を排除しました。
2014/10/25 Ver 3.546
リストの上で Control を押すと 自分がアクティブにならずにマウスカーソルの有るラインのリストを 送る 機能は 間違いを少なくする為に 二度目はマウスカーソルが違うリストに動くか一度 リストを出ないとトリガーされない 様にしました。又 リストボックス上でのカーソルを変えるコードを整理して より正確な位置で 現実に起こる事との 整合性を高めました。
2015/01/10 Ver 3.550
設定メニューに リスト チップ を新設し此を有効にすると 保存リストとメニューの上にマウスカーソルを置くと 保存リストのサイズをツールチップとして表示する様にして 保存リストの識別を付け易くしました。
システムメニューのタスクトレイに のメニューが最小化になってしまうのを修正しました。
2015/04/25 Ver 3.552
ツールチップの表示がシステム既定色と違わない様にシステムの色とブラシを使用する 様にして リソースも減らし 常駐している時のシステム色の変化にも対応出来る様にしました。
2015/07/10 Ver 3.570
DPI の仮想化による スケーリングの影響で文字が滲んでしまったりフォームが大きく表示されてしまう事が 有るので 此を防ぐ為 内部的には スケーリングに対応している事を 宣言する事で OS のスケーリングの 影響を受けない様にしました。
ClipSaver.dll での GetWinText 機能のマウスカーソルの位置が スケーリングによってずれる事が有るので 無変換キーを押す事で スケーリング 無し 有りを切り替えられる様にしました。ClipSaver.dll は此を受けて クライアント領域の座標の変換が出来る様にしました。
殆ど意味のない 常にクリップボードクリアーの設定メニューは廃止して 複数コラムの取得の時の区切りは 無変換キーから Comma,,区切り の設定メニューに移動しました。
2015/11/10 Ver 3.572
立ち上げられ方によっては後に立ち上げられた物と先に常駐していた物がメッセージのやり取りが出来なくなって しまう事を無くしました。同時に コマンドライン /ACT の機能を 常駐している物にメニューを出させる機能にして 応用範囲を広げました。
2015/12/20 Ver 3.580
UAC ( ユーザーアカウント制御 ) の関係で相手に貼り付けられない状態の時 相手のテキストを 取得出来ない時には Set'g のリストチップを ON にしていれば UAC のフラッグも表示する事にしました。
2016/03/05 Ver 3.581
パスワードの 設定 変更 入力のダイアログの文言の拡張子の重複を修正しました。
2016/07/30 Ver 3.582
COM を使用する為の宣言を予めスレッドでしておく事で確実性と無駄な重複は避ける様にしました。 他のウィンドウを立ち上げる時に余分なパラメーターはやめて無駄を無くしました。
2017/01/25 Ver 3.584
パスワードが掛かっているCSLを読み込んで戻す時に通常は無いはずのキャラクターが有っても確実に戻せる様に 記憶されて指定された範囲まで戻す様にしました。
ClipSaver.dll は 他のテキスト取得 部分が 内部的なバッファが見込みでオーバーしないのではなく 実際に オーバーしない 確実なコードに変えました。
2017/04/30 Ver 3.590
立ち上げる時に 右クリックで立ち上げると 保持している *.csl リストのメニューを 出して *.csl を選択して ( コマンドライン /MNU と同様 ) 立ち上がる事が出来る様にしました。
又 この時のフォームは コマンドライン に *.csl を指定したのと同様に テキストウィンドウは除いて 立ち上げる様にしました。
2017/07/15 Ver 3.600
単発的に 通常と違う所にある *.CSL を開くと此に影響されて 通常開く 作業用 *.CSL の場所を上書きされてしまう 不便さが出ない様にしました。
キー入力待ちや離す時の待ち等のメッセージの取得 送りの 安全性と 効率を上げました。
2017/08/25 Ver 3.700
フォームのメニューでも マウスの右クリックで選択が可能として File Edit Set' Help のメニューについては マウスの右ボタンでの選択は Shift キーを押しながら選択するのと同じ機能にするオプション R ボタンシフト を 新設してマウスの左右ボタンを使い分ける事で Shift キーを押さなくても済む様にしました。
Edit メニューのクリップの行を追加は Shift 又は マウスの右ボタンの選択では 一時的に Set' の同じ物でも取得の 設定を反転して 取得する様にしました。
Help メニューの 作業パスは Control キーから Shift 又は マウスの右ボタンの選択で を開く にしました。
保存リストメニューの上でリストを削除したりした後で キーボードアクセラレーターの Space キー が ( メニュー終了 ) 効かなくなっていたのを修正しました。
内部での メッセージのやり取りを 外部との全般的なメッセージと順序だって 処理できる様に ウィンドウポストから スレッドポストに変えました。その他 キー入力と動作の不整合を修正しました。
2018/02/20 Ver 3.720
速いクリップボードの更新でも オートクリップ が取りこぼす可能性が無い様に 此を取得する タイミングを 早めました。又 リストを クリップボードに代入して 他のプログラムに送るタイミングも若干早くして 冗長さを無くしました。
2018/04/30 Ver 3.740
立ち上がった時の自分が画面に入っているかどうかを確認するのに余分な事をしない様にして 効率を上げて サイズを 減少しました。又 常駐している間に システムの不具合などで デスクトップ周りのベースウィンドウのハンドルが 変わって しまった時の 自動追従機能を付加しました。
2018/06/25 Ver 3.760
デスクトップ周りのベースウィンドウのハンドルが変わって しまった時の 自動追従機能の位置を無駄のない所に 変えました。時間の待機中でも確実に他からのメッセージを受け取る事が出来る様にしました。
ClipSaver.dll は 他のテキスト取得部分を マウスカーソルの位置を予め確認してから 分岐をする様にして無駄な 処理が出ない様に 同時にUAC の関連で最初から処理が出来ない時は 余分なバッファーを取得しない様にして無駄な 事はしない様にしました。
2018/08/25 Ver 3.780
メッセージ取得ループをより安全でメッセージの種類によって偏り無く受け取れるコードに しました。
メニューを消す為等に使用する疑似キーボード出力を必ず完結して後に残らない様に 又 他のプログラムに頼る事も 影響を与える事が無く 自分の中だけで廻す様にしました。
2019/01/10 Ver 3.800
子ウィンドウを作る時のスタイルの整合性を新たに取りました。
UAC 関連と x86 x64 環境の判断を ClipSaver.exe ClipSaver.dll と共に 予め取得して余分な事はしない 様に 他のプログラムにも 出来るだけ影響を与え無い様にしました。
2019/03/05 Ver 3.820
メッセージを取得してからのプロシージャーに廻すのを 決め打ちではなくより汎用性の有る方法に変えて 万が 一の 間違いが起こりにくい様にしました。
カーソル位置を取得する API をその場により合った物を使用する様にして効率を上げました。
ClipSaver.dll は TipText 取得時に認識出来ない文字が有った時に此は除く様にしました。。
2019/08/25 Ver 3.900
Windows 10 1809 から API の返す値が変わり *.csl ファイルメニューを並べる時に環境によっては アイテムの 数が 高さ方向にオーバーして見えない物が出てしまうのを修正しました。
フォームで使用する フォントは エクスプローラーの使用しているフォントと同一の物として 画面表示サイズが 違和感の無い物にし 高精細ディスプレー上でもサイズ対応を良くしました。
2019/10/30 Ver 3.920
リスト部での Control +E +D アイコンウィンドウの E D の扱いを 他のテキストを取得した 後に テキスト部に入れるのではではなく 単にテキストクリップボードに入れる事にしました。
2019/12/20 Ver 4.000
アイコンウィンドウと通常のフォームとの使い分けをはっきりさせて アイコンウィンドウ からの 操作の 時に 違和感のある場所にダイアログなどが表示されるのをなくしました。
同時に メッセージボックスは API のままでは常に画面の中央に位置して違和感が出るので 意味の解り やすい 見やすい位置に移動して表示する様にしました。
2020/03/30 Ver 4.020
表示する メッセージボックスや ダイアログボックス のタイトルバーに ClipSaver のアイコンを 表示するようにしました。
2020/06/10 Ver 4.100
マルチモニターに対応し アイコンウィンドウと本体フォームを違うモニターに置いて 使用出来る様に なりました。
アイコンウィンドウのカーソルが 他の状況に引きずられてしまうのを修正しました。
フォームを最大化した時に場合によっては右が隠れてしまう事が有るのを常に全てが見える様にしました。
2020/11/10 Ver 4.120
アイコンウィンドウが他の最上位ウィンドウに隠れてしまう事が有るので此を リカバーするコードを入れました。
又 アイコンがタスクウィンドウとして認識しやすいように クラス名を IcClipSaver に変え アイコンも 此の クラスで指定する様にしました。
2020/11/25 Ver 4.130
ウィドウクラスを登録する時に初期化していないアイテムが有り リソースを取り過ぎる事が起こり 場合に よっては立ち上がらない不具合を無くしました。
2021/02/25 Ver 4.140
自分の出したメニューを終わるのに効率が良く整合性の有る方法に変えました。
2021/03/30 Ver 4.160
ウィンドウ列挙の時に ClipSaver.exe 同梱の ClipSaver.dll 共に Windows 10 でデスクトップに新設されて 機能と は関係ない見えないウィンドウがテキスト取得に影響をしない様に 最初から此等を避けるコードを入れました。
2021/06/10 Ver 4.200
,;, 以降を代入 は改行が有る時には無効になる事をはっきりさせて 複数行の時は リストチップに 保存リストテキストの 行数を表示する事にしました。
自分のメニューを消す処理は直に作用する API を使用する事で簡潔にしました。
2022/03/10 Ver 4.300
Edit メニューに リスト順序の反転 を加えコピーリストした後の応用を増やしました。
フォームのボタンの Copy Clip メニューの Copy Clipbrd を選択する時に Tab キーを押していると Set' の  同じ物でも取得の反転した動作にしました。
フォームのボタン Copy Clip オートクリップ 選択後 送る は 右クリックでも認める様にして Copy Clip の 右クリックは Tab を押しながらクリックしたのと ( Set' の 同じ物でも取得 の反転 ) 同じ扱いにしました。
内部的に動作をやり取りするメッセージポストが機能をしたり表示を変えたりするウィンドウズメッセージに係らない 様に順序正しく廻る様にして安定性を上げました。
2022/05/05 Ver 4.320
キーの Release を待つ間も他のメッセージは確実に流れる様にしてこの間の滞りを無くしました。
自分でした事の結果を待つルーチンを改善して それ専用のコードで回せる様にしました。
2022/11/30 Ver 4.340
アイコンウィンドウの左クリックでは 0.5秒以上長く押すと保存メニューを出さず単にアクティベートだけの 動作にしました。
ClipSaver.dll は Windows 11 で デスクトップに取得テキストとは関係ない見えないウィンドウ の状況が 変わったので此の排除フィルターを変えれました。
他のコントロールのテキスト取得は共有メモリーの使用はやめて 他のプログラムへの影響が出ない様に しました。
Windows 11 でファイルエクスプローラーがタブになったのでこれに対応しました。
2023/04/25 Ver 4.360
*.csl のファイルメニューを縦に並べる時に Windows 11 から 一列だと多少余裕を取る様になり 並べたメニューが 予期しない形になるのを避けるコードにしました。
2023/06/30 Ver 4.380
自分のパスと コマンドラインを取得する所を統一して若干効率を良くし 値の再確認も入れて安全性を高めました。
コマンドラインで パスワード付き *.csl ファイルを指定された時に パスワード入力ダイアログが 不自然な場所でなく 所定の自分の位置に出る様にしました。
バージョン に出る メールアドレスを最新の物に変えました。
2024/01/15 Ver 4.400
アイコンウィンドウが他のウィンドウの下になって隠されてしまった時でも自身で確認し必ず前面に戻るような コードにしました。此の為 フォーム から余分な確認のポストをしないで済む様になりました。
アイコンウィンドウの操作でフォームが突然前面に来たりしないように アイコンウィンドウとフォームの関連を 薄くしました。
2024/05/10 Ver 4.420
自分の出したポストメッセージ以上を処理してしまう可能性を排除しました。
保存リストを 左クリックで押しながらドラッグして順序を変えるコードを若干効率化しました。
リストチップを出す位置をより解りやすい位置にしました。
自分自身 のダイアログ等を 送る Target として処理してしまう無駄を無くし UAC フラグも出ない様にしました。
アイコンウィンドウが他のウィンドウの下になって隠されてしまった時の捉え方を変えて負荷のより少ない 方法にしました。

 最新版 05/10 2024 Ver  4.420 Size 76 kb ClipSaver のダウンロード


DllTest : 2015/12/20 Ver 1.520 Size 5kb
ClipSaver.DLL のテスト用プログラムです。ClipSaver.DLLと同じフォルダーに置いて立ち上げて下さい。 自分の環境で他のウィンドウの何がどの様に取得できるか又は 取得できないか 試す事が出来ると 思います。GetWinTx の ウィンドウのついた UI だと捉えれば GetWinTx より使いやすいかも知れません。
その他 SortClip DecoClip にも対応しています。
ClipSaver.DLL Ver 1.340 以降用です。( 1.340 より前の ClipSaver.DLL ではエラーになります。)

○ 2015/07/20 ClipSaver の csl ファイルの Password でお困りの時ご使用下さい。ShowPass
−戻る−