本ページには広告が含まれています。
Folder2オブジェクト自身を表すFolderオブジェクトを返します。
- 構文
- FolderItem = Folder2.Self
- 引数
- 戻り値
Folder2 オブジェクトを返すメソッド・プロパティ
- Shell.NameSpace メソッド
- 指定されたフォルダのFolder2 オブジェクトを作成して返します。
プログラム実行例
全ファイルをサブフォルダから直下に取り出す
D:\Pictures\100ANDRO\より下層フォルダにあるファイルを直下に移動させます。ファイル名が重複する場合は - コピー、 - コピー (2)のような連番をつけて変更されます。
空になったフォルダを削除するにはdeleteEmptyFoldersを使います。
CONST FOF_RENAMEONCOLLISION = 8
DIM folderspec = "D:\Pictures\100ANDRO\"
DIM array = getFileList(folderspec)
DIM Shell = CREATEOLEOBJ("Shell.Application")
DIM Folder = Shell.NameSpace(folderspec)
DIM FSO = CREATEOLEOBJ("Scripting.FileSystemObject")
FOR item IN array
IF FSO.FolderExists(item) THEN CONTINUE
PRINT Folder.Self.Path
PRINT item
Folder.MoveHere(item, FOF_RENAMEONCOLLISION)
NEXT
//////////////////////////////////////////////////
// 【引数】
// folderspec : フォルダのパス
// TextStream : TextStreamオブジェクト
// filename : 一時ファイル名
// bool : 再帰呼び出しの深さが最上部かを表すブール値
// 【戻り値】
//
//////////////////////////////////////////////////
FUNCTION getFileList(folderspec, TextStream = NOTHING, filename = "", bool = TRUE)
DIM FSO = CREATEOLEOBJ("Scripting.FileSystemObject")
IFB TextStream = NOTHING THEN
CONST TemporaryFolder = 2
DIM TempFolder = FSO.GetSpecialFolder(TemporaryFolder)
DIM TempFolderspec = TempFolder.Path
DIM name = FSO.GetTempName
filename = FSO.BuildPath(Tempfolderspec, name)
TextStream = FSO.CreateTextFile(filename)
ENDIF
DIM Folder = FSO.GetFolder(folderspec)
DIM Folders = Folder.SubFolders
FOR Folder IN Folders
getFileList(Folder.Path, TextStream, filename, FALSE)
FOR File IN Folder.Files
TextStream.WriteLine(File.Path)
NEXT
NEXT
IFB bool THEN
TextStream.Close
TextStream = FSO.OpenTextFile(filename)
DIM str = TextStream.ReadAll
TextStream.Close
FSO.DeleteFile(filename)
RESULT = SPLIT(str, "<#CR>")
ENDIF
FEND
使用関数
デスクトップにChromeのショートカットを作成
デスクトップにGoogle Chromeで[createLink url="https://google.co.jp" title="https://google.co.jp"]をシークレットモードで起動するショートカットを作成します。
CONST ssfDesktop = 0
DIM Shell = CREATEOLEOBJ("Shell.Application")
DIM FSO = CREATEOLEOBJ("Scripting.FileSystemObject")
DIM WshShell = CREATEOLEOBJ("WScript.Shell")
DIM Folder2 = Shell.NameSpace(ssfDesktop)
DIM path = Folder2.Self.Path + "\Chrome.lnk"
DIM WshShortcut = WshShell.CreateShortcut(path)
WITH WshShortcut
DIM chromePath = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
.Description = "Chromeをシークレットモードで起動します。"
.Hotkey = "Ctrl+Shift+C"
.IconLocation = chromePath + ",7"
.TargetPath = chromePath
.WindowStyle = 3
.Save
ENDWITH
Folder = Shell.NameSpace(FSO.GetParentFolderName(path))
DIM FolderItem = Folder.ParseName(FSO.GetFileName(path))
DIM ShellLinkObject = FolderItem.Getlink()
DIM Args[] = "--incognito", "https://google.co.jp"
WITH ShellLinkObject
.Arguments = JOIN(Args)
.Save
ENDWITH
結果
使用関数
解説