2005/09/26

EmEditorのマクロから様々なCOMコンポーネントを利用する

EmEditorのマクロから様々なCOMコンポーネントを利用する: "フォルダ"
//ファイルを開くダイアログ //なぜか別のウィンドウがアクティブになってしまいます。(それ以外は正常に動作します) function FileOpenDialog() { var ie = new ActiveXObject("InternetExplorer.Application"); ie.Navigate2("about:"); while (ie.Busy || (ie.ReadyState != 4)) Sleep(10); ie.Document.all.fileDialog.click(); var file = ie.Document.all.fileDialog.value; ie.Quit(); return file; } var file = FileOpenDialog(); alert(file);
//フォルダ選択ダイアログ function FolderSelectDilaog() { var title = "フォルダを選択してください"; var option = 0x0050; var root = ""; var shell = new ActiveXObject("Shell.Application"); var folder = shell.BrowseForFolder(0, title, option, root); return folder ? folder.Self.Path : ""; // WinXP // return folder ? folder.Items.Item(0).Path : ""; // WinXP以前 } var folder = FolderSelectDilaog(); alert(folder);