ファイルの削除についてNo.02625
たっち さん 01/11/15 11:21
 
はじめまして。

マクロでファイル名を変更したいのですが、
changename というコマンドをつかってみたところ
名前が変更されたファイルができましたが、変更前のファイルも
残ってしまいます。元のファイルを消すことってできないのでしょうか?
Q&Aなんかも覗いてみたんですが、わかりません。

悩んだあげくとりあえず、ファイル名を変更後、元のファイルの内容を
全部削除してセーブさせようとして、削除しますか?というダイアログを
出力させて消すっていうやり方をしてるのですが、ダイアログのOKボタンを
マクロで勝手に実行させるとかも無理ですか?

よい方法がありましたら教えていただけないでしょうか?
 

[ ]
RE:02625 ファイルの削除についてNo.02626
山紫水明 さん 01/11/15 20:58
 
 たっちさん,こんばんは。

》changename というコマンドをつかってみたところ
》名前が変更されたファイルができましたが、変更前のファイルも
》残ってしまいます。元のファイルを消すことってできないのでしょうか?

 DOS のコマンドを使う方法もありますが, Windows のバージョンによって,異
なるようですので,秀まるおのマクロサーバを使います。
 秀丸のホームページのソフトウェアのところにありますので,まずそれをダウン
ロード&解凍して macserv.exe だけを Hidemaru.exe のあるフォルダに置いてく
ださい。
 その上で以下のマクロを実行してみてください。

     では, (^^)/~
                                        山紫水明

//-------------------------------------------------//
$oldfile = filename;
$newfile = input( "新しいファイル名は?", basename2 );
if( $newfile == "" ) endmacro;
changename $newfile;
save;
run "macserv.exe";
ddeinitiate "HideMacroServer", "FileService";
if( !result ) {
    message "DDE 初期化に失敗しました。";
    endmacro;
}
ddeexecute "setcurdir " + hidemarudir;
ddeexecute "delete \"" + $oldfile + "\"";
if( !result ) {
    message "削除できませんでした。";
    endmacro;
}
ddeexecute "exit";
endmacro;
//-------------------------------------------------//

[ ]
RE:02625 ファイルの削除についてNo.02627
ひろ さん 01/11/15 23:08
 
 たっちさん今日は、ひろです。
> マクロでファイル名を変更したいのですが、
> changename というコマンドをつかってみたところ
> 名前が変更されたファイルができましたが、変更前のファイルも
> 残ってしまいます。元のファイルを消すことってできないのでしょうか?
run "commmand.com /c del " + $file;
//  ^^^^^^^^^^^^^ NT 系の場合は、cmd.exe
というように DOS コマンドを呼び出すが、DDE サーバや DLL など外部アプ
リと連携すればよいと思います。

[ ]
RE:02626 ファイルの削除についてNo.02644
たっち さん 01/11/19 09:42
 
山紫水明さん

たっちです。こんにちは。
遅くなりましたが、下記の件ありがとうございました。


> たっちさん,こんばんは。
>
>》changename というコマンドをつかってみたところ
>》名前が変更されたファイルができましたが、変更前のファイルも
>》残ってしまいます。元のファイルを消すことってできないのでしょうか?
>
> DOS のコマンドを使う方法もありますが, Windows のバージョンによって,異
>なるようですので,秀まるおのマクロサーバを使います。
> 秀丸のホームページのソフトウェアのところにありますので,まずそれをダウン
>ロード&解凍して macserv.exe だけを Hidemaru.exe のあるフォルダに置いてく
>ださい。
> その上で以下のマクロを実行してみてください。
>
>     では, (^^)/~
>                                        山紫水明
>
>//-------------------------------------------------//
>$oldfile = filename;
>$newfile = input( "新しいファイル名は?", basename2 );
>if( $newfile == "" ) endmacro;
>changename $newfile;
>save;
>run "macserv.exe";
>ddeinitiate "HideMacroServer", "FileService";
>if( !result ) {
>    message "DDE 初期化に失敗しました。";
>    endmacro;
>}
>ddeexecute "setcurdir " + hidemarudir;
>ddeexecute "delete \"" + $oldfile + "\"";
>if( !result ) {
>    message "削除できませんでした。";
>    endmacro;
>}
>ddeexecute "exit";
>endmacro;
>//-------------------------------------------------//

[ ]
RE:02627 ファイルの削除についてNo.02645
たっち さん 01/11/19 09:45
 
ひろさんへ

たっちです。こんにちは。
遅くなりましたが下記の件ありがとうございました。
この会議室いいひとばっかですね♪

> たっちさん今日は、ひろです。
>> マクロでファイル名を変更したいのですが、
>> changename というコマンドをつかってみたところ
>> 名前が変更されたファイルができましたが、変更前のファイルも
>> 残ってしまいます。元のファイルを消すことってできないのでしょうか?
>run "commmand.com /c del " + $file;
>//  ^^^^^^^^^^^^^ NT 系の場合は、cmd.exe
>というように DOS コマンドを呼び出すが、DDE サーバや DLL など外部アプ
>リと連携すればよいと思います。

[ ]