//!*script // 位置情報を記録したS_xxxを一時ファイルに保存。ファイルパスを返す // 「PPvの位置を一行編集で保存・再現」用スクリプト // 第一引数 : S_xxx // 位置情報はS_xxx+連番(S_xxx1 S_xxx2 S_xxx3 ...)に保存されている想定 // 例:*ppv %*script(%0Script\getwinpos.js,S_ppvpos) // 引数がなければ終了 if (PPx.Arguments.Length < 1){ PPx.SetPopLineMessage("引数が正しくありません。"); PPx.Quit(); } var id = PPx.Arguments(0); // 一時ファイルを作成 var tempfile = PPx.Extract("%*temp(name,f)"); var stream = new ActiveXObject("ADODB.Stream"); stream.type = 2; stream.charset = 'UNICODE'; stream.open(); for (var i = 0; true; i++) { var l = PPx.Extract("%*getcust\("+id+i+":l\)"); var t = PPx.Extract("%*getcust\("+id+i+":t\)"); var w = PPx.Extract("%*getcust\("+id+i+":w\)"); var h = PPx.Extract("%*getcust\("+id+i+":h\)"); var comment = PPx.Extract("%*getcust\("+id+i+":comment\)"); var str = l+","+t+","+w+","+h+" ;"+comment; if (l){ stream.WriteText(str,1); } else { break; } } stream.saveToFile(tempfile,2); stream.close(); PPx.Result = tempfile;