Last-modified: 2015-01-04 (日) 13:10:16 (3615d)

 動画1ファイルを無作為に再生したい場合に。

//
// ランダム再生
//
// @author Jomora(kazuhiko@jomura.net)
// @version 2009.11.05 初版作成

//再生ファイルを再帰検索する親フォルダ
var targetFolder = "E:/video";
//再生用アプリケーション
var playerPath = "\"C:/Program Files (x86)/GRETECH/GomPlayer/GOM.exe\"";

//**Start Encode**

if (WScript.Arguments.length != 0) {
	targetFolder = WScript.Arguments(0);
}

//main
var fso = WScript.CreateObject("Scripting.FileSystemObject");
var rootFolderObj = fso.GetFolder(targetFolder);
var arr = new Array();
GetFileList(rootFolderObj, arr);
var filepath = RandomSelect(arr);
Play(filepath);

WScript.Quit(0);

//functions

function GetFileList(folderObj, arr) {
	var i = new Enumerator(folderObj.Files);
	for (; !i.atEnd(); i.moveNext()) {
		arr.push(i.item().Path);
	}
	var j = new Enumerator(folderObj.SubFolders);
	for (; !j.atEnd(); j.moveNext()) {
		GetFileList(j.item(), arr);
	}
}

function RandomSelect(arr) {
	var index = Math.floor(Math.random() * (arr.length));
	return arr[index];
}

function Play(filepath) {
	var shell = WScript.CreateObject("WScript.Shell");
	shell.Run(playerPath + " \"" + filepath + "\"");
}

 下記のように変えると、再生アプリの起動後に自動キー操作をすることもできると。

function Play(filepath) {
	var shell = WScript.CreateObject("WScript.Shell");
	var exec = shell.Exec(playerPath + " \"" + filepath + "\"");
	while (shell.AppActivate(exec.ProcessID)) {
		WScript.Sleep(100);
	}
	WScript.Sleep(5000);
	shell.SendKeys("^x");
	shell.SendKeys("^x");
}

添付ファイル: fileRandomPlay.js 6859件 [詳細]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS