規定されているお気に入りフォルダを実行ファイルと同じフォルダにある
ダミーの同名フォルダと入れ替えることで、達成しようと以下のプログラム
を試しに組みました。しかし、上手く機能してくれません。どうも命令1の時点で
移動ではなく単なるコピーのようになっているということまではわかりましたが…。
どなたか原因と解決策もしくは別のアプローチでの偽装方法を教えていただけませんか?
// ディレクトリをコピーするモジュール //引用元 http://fs-cgi-basic01.freespace.jp/~hsp/ver3/hsp3.cgi?print+200801/08050033.txt #uselib "shell32" #func global SHFileOperation "SHFileOperation" sptr #module // DirCopy ここから, ここへ, モード(1= 移動 2= コピー 3= 削除 4= リネーム(同一Disc内)) #deffunc DirCopy str FromFolder,str ToFolder,int mode From= FromFolder : To= ToFolder SHFILEOPSTRUCT = hwnd, mode, varptr.From, varptr.To, $150, -1, 0, 0 SHFileOperation varptr.SHFILEOPSTRUCT return #global //------------------------------------------------------------------------------------------------------------- //お気に入りパスを作成 favpass = dirinfo($10006) //お気に入りのフォルダ名 favname = getpath(favpass,8) //お気に入りのあるフォルダのパス favdir = getpath(favpass,32) //syori = 交換のために保留するフォルダ syori = dir_exe + "\\処理用" //syorifav = 交換のために保留するフォルダにあるお気に入り syorifav = dir_exe + "\\処理用\\" +favname //ダミーのお気に入りのパス dummy = dir_exe + "\\" + favname //お気に入りを処理用のフォルダに移動 命令1 DirCopy favpass,syori,1 //ダミーのお気に入りを本物の場所に移動 命令2 DirCopy dummy,favdir,1 //処理用からダミーの場所に移動 命令3 DirCopy syorifav,dir_exe,1 stop