クリップボード履歴の無効化No.03629
yoshi223 さん 03/02/27 12:08
 
昔この掲示板でクリップボードの履歴を一時的に無効化するには
レジストリのClipHistを0にするとよいと知り,それを使用していたのですが,
気が付いたらいつのまにか無効にすることができない様になっていました.
現在クリップボード履歴を一時無効化することは出来ないんでしょうか?

下記が以前掲示板であった情報を元に作成したコードです.
///----
//クリップボード履歴の無効化
//クリップボード履歴のサイズを得る
openreg "CURRENTUSER", "Software\\Hidemaruo\\Hidemaru\\Env";
#clip_size = getregnum("ClipHist");
writeregnum "ClipHist", 0;
//レジストリ変更を通知
envchanged;

copy;

//クリップボード履歴の有効化
//レジストリを元に戻し,変更を通知
writeregnum "ClipHist", #clip_size;
envchanged;
//レジストリを閉じる
closereg;

///履歴を戻す
getcliphist 0;
///----

環境はWindows2000SP2,秀丸Ver3.19,
クリップボードの履歴を取る,バッファサイズ999kbyteです.

[ ]
RE:03629 クリップボード履歴の無効化No.03638
yoshi223 さん 03/03/14 11:00
 
>昔この掲示板でクリップボードの履歴を一時的に無効化するには
>レジストリのClipHistを0にするとよいと知り,それを使用していたのですが,
>気が付いたらいつのまにか無効にすることができない様になっていました.
>
どうも勘違いしていた様です.
ClipHist=0による履歴無効化はsetclipboard, addclipboardに対してのみ
効いているようです.
そちらを使用しているマクロでは3.19でも無効化されました.

copyを使用するマクロについては3.08と3.15でも同様に無効に出来ませんでした.
もしかしたら最初からcopyを使用した場合は無効化できなかったのかも知れません.

また,マクロ内でコピー&ペーストを使用するのはほとんどコピーしたものを
ステルス秀丸に貼り付けて作業するものだったのでcopy;poppaste;で解決しました.

[ ]