replacebufferNo.00849
ひろ さん 99/11/27 16:55
 
 皆さん今日は、ひろです。
 検索文字列の履歴を参照・復元するには、setsearc, searchbuffer,
searchoption を使えばよいですが、置換文字列の履歴を参照および復元はど
うすればよいのでしょうか?

 getregstr を使っても、ReplaceHist が binary data では上手くいかない
んですよね。

[ ]
RE:00849 replacebufferNo.00850
ENCODINGSHIFTJIS さん 99/11/29 14:16
 
> getregstr を使っても、ReplaceHist が binary data では上手くいかない
>んですよね。

外線経由で社内の席に電話するような解しか思いつきません。しかも危険。

1..VBSなどを起動して レジストリを読んで .REG ファイル化して保存
2.マクロ本体を実行
3..REG によりレジストリを復旧。

' 読む段階までは行った。
'// オブジェクト指向言語の書き方はどれもよく似てる,しかしVBは。
' .js  で書き直しても同様。読んではいるが書き込めない。
Dim objWshShell,bin

Set objWshShell=WScript.CreateObject("WScript.Shell")
bin=objWshShell.RegRead("HKCU\Software\Hidemaruo\Hidemaru\" _
                      & "Hidemaru.dat\ReplaceHist")
 WScript.Echo UBound(bin) 'サイズは合っている。260*ヒストリ数
'WScript.Echo VarType(bin)  
'WScript.Echo TypeName(bin) 'vbArrayなので.jsの時は要変換?
    objWshShell.RegWrite "HKCU\Software\Hidemaruo\Hidemaru\" _
                       & "Hidemaru.dat\ReplaceHist",bin,"REG_BINARY"
' 型が一致しません vbArrayをWSHで書き込む方法は?
WSH2.0の SendKeys は秀丸にも有効か?

REGファイル とか REG_BINARY で検索するといろいろ出ます。

 マクロの足跡消しならば Hidemaru.dat の ReplaceHistSize を
零に書き込んでからマクロ本体を実行し。最後にKをKに置換する
のを実行して(次に↓↑しても安全側) ReplaceHistSize を戻す
というのも考えられます。完全復旧ではありませんが。

$END


[ ]
RE:00850 replacebufferNo.00851
ろん さん 99/11/29 14:24
 


重ねてお願いします.
このメールの配信を停止するにはどうしたらよいか
教えてください.




xxxxxxxxxx@maruo.co.jpに返信してください

宛先: xxxxxxxxxxxxxx@maruo.co.jp
cc:    (bcc: RYUTARO KATAGIRI/toshiba-tsp)
件名: hidesoft.4:00850| RE 00849 replacebuffer




> getregstr を使っても、ReplaceHist が binary data では上手くいかない
>んですよね。

外線経由で社内の席に電話するような解しか思いつきません。しかも危険。

1..VBSなどを起動して レジストリを読んで .REG ファイル化して保存
2.マクロ本体を実行
3..REG によりレジストリを復旧。

' 読む段階までは行った。
'// オブジェクト指向言語の書き方はどれもよく似てる,しかしVBは。
' .js  で書き直しても同様。読んではいるが書き込めない。
Dim objWshShell,bin

Set objWshShell=WScript.CreateObject("WScript.Shell")
bin=objWshShell.RegRead("HKCU\Software\Hidemaruo\Hidemaru\" _
                      & "Hidemaru.dat\ReplaceHist")
 WScript.Echo UBound(bin) 'サイズは合っている。260*ヒストリ数
'WScript.Echo VarType(bin)
'WScript.Echo TypeName(bin) 'vbArrayなので.jsの時は要変換?
    objWshShell.RegWrite "HKCU\Software\Hidemaruo\Hidemaru\" _
                       & "Hidemaru.dat\ReplaceHist",bin,"REG_BINARY"
' 型が一致しません vbArrayをWSHで書き込む方法は?
WSH2.0の SendKeys は秀丸にも有効か?

REGファイル とか REG_BINARY で検索するといろいろ出ます。

 マクロの足跡消しならば Hidemaru.dat の ReplaceHistSize を
零に書き込んでからマクロ本体を実行し。最後?
のを実行して(次に↓↑しても安全側) ReplaceHistSize を戻す
というのも考えられます。完全復旧ではありませんが。

$END





[ ]
RE:00851 replacebufferNo.00852
ろん さん 99/11/29 14:35
 


重ねてお願いします.
このメールの配信を停止するにはどうしたらよいか
教えてください.


> getregstr を使っても、ReplaceHist が binary data では上手くいかない
>んですよね。

外線経由で社内の席に電話するような解しか思いつきません。しかも危険。

1..VBSなどを起動して レジストリを読んで .REG ファイル化して保存
2.マクロ本体を実行
3..REG によりレジストリを復旧。

' 読む段階までは行った。
'// オブジェクト指向言語の書き方はどれもよく似てる,しかしVBは。
' .js  で書き直しても同様。読んではいるが書き込めない。
Dim objWshShell,bin

Set objWshShell=WScript.CreateObject("WScript.Shell")
bin=objWshShell.RegRead("HKCU\Software\Hidemaruo\Hidemaru\" _
                      & "Hidemaru.dat\ReplaceHist")
 WScript.Echo UBound(bin) 'サイズは合っている。260*ヒストリ数
'WScript.Echo VarType(bin)
'WScript.Echo TypeName(bin) 'vbArrayなので.jsの時は要変換?
    objWshShell.RegWrite "HKCU\Software\Hidemaruo\Hidemaru\" _
                       & "Hidemaru.dat\ReplaceHist",bin,"REG_BINARY"
' 型が一致しません vbArrayをWSHで書き込む方法は?
WSH2.0の SendKeys は秀丸にも有効か?

REGファイル とか REG_BINARY で検索するといろいろ出ます。

 マクロの足跡消しならば Hidemaru.dat の ReplaceHistSize を
零に書き込んでからマクロ本体を実行し。最後?
のを実行して(次に↓↑しても安全側) ReplaceHistSize を戻す
というのも考えられます。完全復旧ではありませんが。

$END



[ ]
RE:00852 replacebufferNo.00853
ろん さん 99/11/29 14:48
 


【再送】【再送】【再送】【再送】1




ろん <xxxxxxxxxx@maruo.co.jp> on 99/11/29 13:35:46

xxxxxxxxxx@maruo.co.jpに返信してください

宛先: xxxxxxxxxxxxxx@maruo.co.jp
cc:    (bcc: RYUTARO KATAGIRI/toshiba-tsp)
件名: hidesoft.4:00852| RE 00851 replacebuffer






重ねてお願いします.
このメールの配信を停止するにはどうしたらよいか
教えてください.


> getregstr を使っても、ReplaceHist が binary data では上手くいかない
>んですよね。

外線経由で社内の席に電話するような解しか思いつきません。しかも危険。

1..VBSなどを起動して レジストリを読んで .REG ファイル化して保存
2.マクロ本体を実行
3..REG によりレジストリを復旧。

' 読む段階までは行った。
'// オブジェクト指向言語の書き方はどれもよく似てる,しかしVBは。
' .js  で書き直しても同様。読んではいるが書き込めない。
Dim objWshShell,bin

Set objWshShell=WScript.CreateObject("WScript.Shell")
bin=objWshShell.RegRead("HKCU\Software\Hidemaruo\Hidemaru\" _
                      & "Hidemaru.dat\ReplaceHist")
 WScript.Echo UBound(bin) 'サイズは合っている。260*ヒストリ数
'WScript.Echo VarType(bin)
'WScript.Echo TypeName(bin) 'vbArrayなので.jsの時は要変換?
    objWshShell.RegWrite "HKCU\Software\Hidemaruo\Hidemaru\" _
                       & "Hidemaru.dat\ReplaceHist",bin,"REG_BINARY"
' 型が一致しません vbArrayをWSHで書き込む方法は?
WSH2.0の SendKeys は秀丸にも有効か?

REGファイル とか REG_BINARY で検索するといろいろ出ます。

 マクロの足跡消しならば Hidemaru.dat の ReplaceHistSize を
零に書き込んでからマクロ本体を実行し。最後?
のを実行して(次に↓↑しても安全側) ReplaceHistSize を戻す
というのも考えられます。完全復旧ではありませんが。

$END






[ ]
RE:00850 replacebufferNo.00854
ひろ さん 99/11/29 19:37
 
 ENCODINGSHIFTJIS さん今日は、ひろです。
> 外線経由で社内の席に電話するような解しか思いつきません。しかも危険。
 やはりこういった特殊な方法しかありませんか(^^)。危険な方法なので諦めます。

[ ]
RE:00854 replacebufferNo.00859
ENCODINGSHIFTJIS さん 99/11/30 12:18
 
           レジストリ操作でもムリらしい。
Envにないものは(ここではHidemaru.dat)envchanged; 効かない。
(クリップボード履歴数は Env にあったが)
検索・置換ヒストリはメモリーに在り終了時にレジストリに
書かれるのかもしれない。動作環境のヒストリクリアでは
レジストリは変更されなかった事がある。レジストリは
起動時と終了時のみ、さわるのかもしれない。
秀丸を起動すると常に固定の数で履歴を取るで動作する。
 マクロ操作の廃棄物を表に出さないようにするには
マクロの最後にヒストリをあふれさせるダミー置換をする
くらいでしょうか。現状では。



[ ]