1 名前:デフォルトの名無しさん [2007/04/16(月) 13:48:54 ] ( ´ゝ`) 誰か詳しい情報キボンヌ ●過去スレ WSH(・∀・)スレッド! pc11.2ch.net/test/read.cgi/tech/1055075469/ ●関連スレ お前ら、wsh使ってますか? part6 pc11.2ch.net/test/read.cgi/win/1155040873/ 【イケメン】阿龍スレ避難所@自己紹介【彼女募集中!】 life8.2ch.net/test/read.cgi/intro/1171897814/ ●個人サイト Windows Scripting Host Laboratory www.roy.hi-ho.ne.jp/mutaguchi/wsh/ Windows Script Wiki winscript.s41.xrea.com/wiki/index.php 音楽 winscript.mine.nu/music/ キャラネタ板・なな板のための何か charaneta.mine.nu/
231 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 04:32:11 ] COMでIEを操作する際に、JavaScript や <a href="..." target="_blank">...</a> でポップアップして 新たに開いた子IEのオブジェクトを得るにはどうしたら良いでしょうか?
232 名前:sage [2007/10/27(土) 10:52:08 ] >>204 .NetFrameWorkってwshから使えるの?
233 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 12:34:50 ] >>232 204ではないが、.NetFrameworkとWSHは別物 ただし、.NetFrameworkの提供するクラスライブラリのいくつかは COMインタフェースが公開されているので、それらのクラスに ついてはWSHからでもCOM経由で利用することはできる
234 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 13:41:49 ] >>231 ShellのWindowsメソッドで列挙してParentが元のと一致するの、と言うのを考えてみたが 泥臭いので検証もしていない
235 名前:デフォルトの名無しさん [2007/10/27(土) 15:14:39 ] (・∀・)つ●
236 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 22:09:40 ] つopener
237 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 22:15:18 ] それは子から親であって親から子ではないんじゃね?
238 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 22:30:35 ] >>232 たいしたものは使えんよ。 PowerShellなら.NETもWin32APIも使い放題だわ
239 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 22:46:03 ] >>231 NewWindow3 Event
240 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 21:48:45 ] WSHじゃ無理だけど BeforeNavigate2でCancelして別のIEでNaviagte
241 名前:デフォルトの名無しさん [2007/10/29(月) 19:42:35 ] はじめまして。今、WebからAccessを実行し、それに引数を渡す方法を探しています。 Set objShell = CreateObject("WScript.Shell") objShell.Run "\\hogehoge\hoge.adp /cmd Hello,World" イメージとしてはこういう感じかなぁと思いコードを組んでいますが引数を渡す段階まで至っていません。 エラーは出ないのですが、引数がCommand$で受け取れないという状況です。 Accessをフルパスで指定する必要があるのかと思い objShell.Run """C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.EXE"" ""\\hogehoge\hoge.adp /cmd Hello,World""" 2行目を上記のように変更してみましたが、こちらはHello,Worldまでがファイル名と認識されてしまい、実行できません。 ローカルでなら "C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.EXE" C:\hogehoge\hoge.adp /cmd Hello,World というショートカットを作成する事でAccessに引数を渡すところまでは行っているのですが。 ただ、フルパスで指定するってのは、人によっては環境も違うわけで… Officeのインストールパスを探す環境変数って無いですよねぇ 出来れば3行目の方向性で、こうすればいいよとかアドバイスを頂けませんでしょうか
242 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 19:57:44 ] >>241 ""\\hogehoge\hoge.adp /cmd Hello,World"" の前後の""は要らないのでは。 MSACCESS.EXEのフルパスは objShell.RegRead "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\MSACCESS.EXE" または objShell.RegRead "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\MSACCESS.EXE\Path" & "MSACCESS.EXE" で取得できます(上は8.3形式となる)。
243 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 21:09:11 ] Runするのにフルパスは要らん
244 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 21:23:50 ] >>242 runしたらその情報が自動的に使われるのでは?
245 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 22:04:02 ] >>244 Runの仕様上はそうだから、RegReadする必要がないと言えばないですよ
246 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 01:51:30 ] 確かにRunで動かすだけならフルパスは要らないな。 でも、ローカルでコマンドライン引数渡そうとしたらフルパス必要、と。 結局、WebからWSH使って引数渡すにはどうすればいいんだろ?
247 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 02:39:14 ] だいじょうぶ?
248 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 04:34:44 ] 標準入力
249 名前:241 mailto:sage [2007/10/30(火) 14:17:39 ] 色々アドバイス有難うございました。 >>242 さんの意見を参考に組んでみた所、引数を渡せる事を確認しました。 Set objShell = CreateObject("WScript.Shell") strFile = "\\hoge\hoge.adp" strPath = objShell.RegRead("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\MSACCESS.EXE\Path") & "MSACCESS.EXE" objShell.Run """" & strPath & """ """ & strFile & """ /cmd hoge" どうも、引数を渡したい場合にはACCESSのフルパスを省略出来ないようで。 単純に実行したいだけならADPファイルのフルパスのみで可能でしたが。 なかなか難産でしたが、ようやく先に進めます。 ありがとうございました。
250 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 15:51:10 ] わからんやっちゃ
251 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 20:27:52 ] WMIでthreadの数は分かりますが、どれがなんのthreadか調べるにはどうするのでしょうか?
252 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 22:00:10 ] 意味が分からん スレッドってもんを正しく認識できてる?
253 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 09:13:48 ] 理解してないだろうね こういう子には >>251 1年勉強して出直しなさい ということで
254 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 14:43:43 ] Win32_Thread.Name
255 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 00:27:43 ] WSHで、キーボードのボタンのどれを押したかを取得する方法はないでしょうか? たとえば、tabボタンやカーソルキーを押した場合を考えています。
256 名前:255 mailto:sage [2007/11/11(日) 00:36:14 ] 追加です。 想定しているのは、while(true){...}のなかに処理が入ったときに、 コンソール上からタブボタンを押すと、while(true)からぬけるようなものです。
257 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 02:30:40 ] WSHではスレッドが一つなので入力を受け付ける場合は処理を止めなければならない。 WSH(wscript.exe,cscript.exe)を2つ実行して、一方をフラグ的に使えば擬似的に出来ないことも無いが 君が想定してる通りのことはWSHだけでは無理。 COMを自作するって手もあるけど、だったら普通のアプリ作った方がいいだろ。 あとは君が想定してる通りのことを出来るスクリプト言語に乗り換えるとかね。 スレ違いだから具体的な紹介や説明は伏せるけど。
258 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 04:33:32 ] >>255 pc11.2ch.net/test/read.cgi/tech/1124559962/370-376
259 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 10:24:32 ] >>258 それ、HTAの場合だよね?
260 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 20:53:36 ] WSHに翻訳できない?
261 名前:デフォルトの名無しさん mailto:sage [2007/11/14(水) 16:29:16 ] IEの場合、JScriptで ie.document.getEtementsByName('foo')[0] は使えても、 ie.document.getElementByID('foo')[0] はエラーになるんだね。
262 名前:デフォルトの名無しさん mailto:sage [2007/11/14(水) 17:29:55 ] JScriptからだと、windowオブジェクトのopenerやparentってもしかして使えない?
263 名前:デフォルトの名無しさん mailto:sage [2007/11/14(水) 19:16:23 ] Etements 複数形だし
264 名前:デフォルトの名無しさん [2007/11/16(金) 20:00:56 ] XPsp2の環境に >www.imagemagick.org/script/binary-releases.php から >ImageMagick-6.3.6-10-Q16-windows-dll.exe (32bit版XP等の場合)を >ダウンロードしてインストール。インストールの過程で >□ Install ImageMagickObject OLE Control for VBscript, Visual Basic, and WSH >のチェックを入れてください。 ↑のインストールをしました。 その状態で、 var fs = WScript.CreateObject("Scripting.FileSystemObject"); var stream = fs.CreateTextFile("chintama.txt"); with(stream) { Write("..."); Close(); } を、a.jsファイルに書いてダブルクリックするとうまく動作しました。 これは↑をインストールしたから動作したのでしょうか? あるいは、XPsp2の環境のみでも動作するのでしょうか?
265 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 20:54:37 ] FileSystemObjectはOS標準だな
266 名前:デフォルトの名無しさん [2007/11/16(金) 22:49:07 ] >>265 レスありがとうございます。 では、JScript、Windows Script 5.6で記述したWSHも、OS標準ですか?
267 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 22:55:00 ] そうだな まあWSH標準のオブジェクト群でできることはそんなにないけど
268 名前:デフォルトの名無しさん [2007/11/16(金) 23:05:08 ] >>267 どうもです。 では、 var fs = WScript.CreateObject("Scripting.FileSystemObject"); var stream = fs.CreateTextFile("chintama.txt"); with(stream) { Write("..."); Close(); } これの、1行目、2行目の変数を使わず、全部、with() のカッコの中に押し込めるとすると、どう書けばいいですか?
269 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 23:10:16 ] with(WScript.CreateObject("Scripting.FileSystemObject").CreateTextFile("chintama.txt")) {
270 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 23:15:39 ] >>264 ImageMagickのImageMagickObject OLE Controlをインストールすると new ActiveXObject("ImageMagickObject.MagickImage.1"); が使えるようになってWSHからImageMagickの機能が使えるようになるわけだわさ
271 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 23:50:42 ] var f=new ActiveXObject("Scripting.FileSystemObject").GetFile(WScript.ScriptFullName); WScript.Echo(f.DateLastModified==f.DateLastModified); なぜ、false(0)?
272 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 00:04:51 ] >>271 f.DateLastModifiedをDateオブジェクトにしてやればいいのです var f=new ActiveXObject("Scripting.FileSystemObject").GetFile(WScript.ScriptFullName); var d = new Date(f.DateLastModified); WScript.Echo(d == d);
273 名前:271 mailto:sage [2007/11/17(土) 00:09:49 ] >>272 ども、でも var f=new ActiveXObject("Scripting.FileSystemObject").GetFile(WScript.ScriptFullName); var d1 = new Date(f.DateLastModified); var d2 = new Date(f.DateLastModified); WScript.Echo(d1 == d2); がやっぱ変
274 名前:272 mailto:sage [2007/11/17(土) 00:18:08 ] >>273 あ、>>272 の比較だとポインタが等しいかどうか比較しているようなものか。 これでokかな var f=new ActiveXObject("Scripting.FileSystemObject").GetFile(WScript.ScriptFullName); var d1 = new Date(f.DateLastModified); var d2 = new Date(f.DateLastModified); WScript.Echo(d1.valueOf() == d2.valueOf());
275 名前:271 mailto:sage [2007/11/17(土) 00:33:50 ] おkです。 >>271 の比較も、ポインタが等しいかどうか比較しているようなもの? でしょうか?
276 名前:272 mailto:sage [2007/11/17(土) 00:48:49 ] >>275 というよりJScriptがDateLastModifiedの型をサポートしてないってことのような
277 名前:271 mailto:sage [2007/11/17(土) 17:41:07 ] WScript.Echo(f.DateLastModified-f.DateLastModified); や WScript.Echo((f.DateLastModified>=f.DateLastModified)&&(f.DateLastModified<=f.DateLastModified)); もおk。算術比較はいいみたい。==は算術比較じゃないようで。
278 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 19:22:14 ] f.DateLastModifiedプロパティが、 毎回日付をラップした新規オブジェクトを返してくるみたいだな。 比較の処理はWin32のVarCmpあたりを使ってるのかも。 FileSystemObjectとか、返すオブジェクトの詳細が書かれていないので結構困る。
279 名前:デフォルトの名無しさん mailto:sage [2007/11/17(土) 19:34:11 ] f.DateLastModifiedを整数に変換してやるのもよさげ var f=new ActiveXObject("Scripting.FileSystemObject").GetFile(WScript.ScriptFullName); var d = f.DateLastModified | 0; WScript.Echo(d);
280 名前:271 mailto:sage [2007/11/18(日) 00:01:07 ] それなら WScript.Echo(Number(f.DateLastModified)); ところが、 WScript.Echo(Date(f.DateLastModified)); が変。ずれる。なんでだろ?
281 名前:デフォルトの名無しさん mailto:sage [2007/11/18(日) 01:27:31 ] new Date(...) じゃないの? new無しのは、単に現在日時返ってきてるっぽいな。 JScriptのDateとは違う表記方法だし、メソッドもエラーが出るところを見ると、 VBScript用のDate関数を呼び出してしまっている気がする。
282 名前:264、268 [2007/11/19(月) 04:28:00 ] >>269 >>270 レスありがとうございます。感謝します。
283 名前:デフォルトの名無しさん mailto:sage [2007/11/20(火) 20:04:29 ] >>280 Numberは型だけどDateはオブジェクトだから
284 名前:デフォルトの名無しさん mailto:sage [2007/11/21(水) 04:53:30 ] Win2KやWinXP SP2とかだと、 ttp://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/nov04/hey1102.mspx に書かれている事がどうも嘘っぽいんだけど… ここに書かれている方法で、Temporary Internet Files を削除出来たって人居る? Cookieの削除は、Temporary Internet Files に在る、Cookie:username@... を削除しないと駄目みたい。
285 名前:デフォルトの名無しさん [2007/11/21(水) 15:58:49 ] もしかして Temporary Internet Files\Content.IE5\ 以下の話してる?
286 名前:デフォルトの名無しさん mailto:sage [2007/11/21(水) 16:33:08 ] >>284 ブラウザ終了してないと駄目だよ
287 名前:デフォルトの名無しさん mailto:sage [2007/11/21(水) 19:11:21 ] Hey, Scripting Guy!氏はわざとひねった答えを書くのよ。 コピペのままでは動かない、バグ探しのクイズだと思えばいいのよ。
288 名前:デフォルトの名無しさん mailto:sage [2007/11/21(水) 19:48:38 ] Hey, Scripting GuyのやつはVBSなので JSに書き換えて使ってる
289 名前:デフォルトの名無しさん mailto:sage [2007/11/21(水) 19:53:24 ] クイズに答えると Const TEMPORARY_INTERNET_FILES = &H20& Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.Namespace(TEMPORARY_INTERNET_FILES) Set objFSO = CreateObject("Scripting.FileSystemObject") For Each objFolderItem In objFolder.Items objFSO.DeleteFile objFolderItem.Path Next 試してないけど
290 名前:デフォルトの名無しさん mailto:sage [2007/11/21(水) 20:02:12 ] >>284 objFSO.DeleteFolder の間違いじゃないの
291 名前:デフォルトの名無しさん mailto:sage [2007/11/21(水) 20:46:42 ] >>286 ブラウザを終了させてやってみました。 >>285 Content.IE5 というフォルダが出来ていて、IEを起動すると まるでゾンビの如く復活しています。
292 名前:デフォルトの名無しさん mailto:sage [2007/11/21(水) 21:12:05 ] >>291 さてはdesktop.ini消しちゃったねww [.ShellClassInfo] UICLSID={7BD29E00-76C1-11CF-9DD0-00A0C9034933} 2000は知らないけどMe以降ならこんなのは? Const TEMPORARY_INTERNET_FILES = &H20& Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.Namespace(TEMPORARY_INTERNET_FILES) objFolder.Items().InvokeVerbEx "delete"
293 名前:デフォルトの名無しさん mailto:sage [2007/11/21(水) 22:02:13 ] >>292 有難う御座います。 綺麗サッパリと消えてくれました。
294 名前:デフォルトの名無しさん mailto:sage [2007/11/22(木) 03:25:17 ] ところで、InvokeVerbEx "delete" を使用した場合、警告ダイアログがポップアップするのですが、 この警告を出さずに実行させる方法は無いでしょうか?
295 名前:デフォルトの名無しさん mailto:sage [2007/11/22(木) 15:33:50 ] 出ないけど?
296 名前:デフォルトの名無しさん mailto:sage [2007/11/24(土) 15:23:03 ] directory\backgroundのverbsを調べてinvokeverbする方法はありませんか?
297 名前:デフォルトの名無しさん mailto:sage [2007/11/24(土) 17:33:51 ] 有りますが?
298 名前:デフォルトの名無しさん mailto:sage [2007/11/26(月) 18:28:52 ] AppActivate タイトル アクティベートしないで、ウィンドウの有無だけ調べるにはどうすればよいでしょう?
299 名前:デフォルトの名無しさん mailto:sage [2007/11/26(月) 20:16:40 ] >>298 そういう機能のCOM作ればOKだよ ウィンドウタイトルではなくプロセス名での有無を調べるならWMIで出来るけど WMIもWSHの機能ではなく外部のCOMなので、使い方とかはここでは聞かないでね というかググれは簡単に解るし
300 名前:デフォルトの名無しさん [2007/11/26(月) 23:46:57 ] ↑ 氏ね、ググれ厨!クソレス増やすな!
301 名前:デフォルトの名無しさん mailto:sage [2007/11/26(月) 23:52:56 ] プログラム板って299のようにちょっとおかしい人多いんだよね
302 名前:デフォルトの名無しさん mailto:sage [2007/11/26(月) 23:56:30 ] 299も300もどっちもどっち、そしてこのレスも。
303 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 01:07:53 ] 自分の無知を曝け出してるだけだから、温かく無視してあげようよ
304 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 09:09:22 ] そうでもないか
305 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 10:16:24 ] うんこが長すぎて切れない どうすればいい?
306 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 11:16:54 ] そのために神は はさみを作り給うた
307 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 14:33:36 ] >>298 wordを使う
308 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 16:55:28 ] つExcel
309 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 16:59:49 ] >>298 pc11.2ch.net/test/read.cgi/tech/1178281991/752-754
310 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 19:52:09 ] >>307-309 こういうのはスレ違いだろ? >>299
311 名前:デフォルトの名無しさん mailto:sage [2007/11/28(水) 00:21:12 ] CIM_DataFileのInUseCountは実装されてないのかなぁ? nullが返って来る。
312 名前:デフォルトの名無しさん [2007/11/28(水) 23:40:19 ] cscript.exeでの使用が前提のスクリプトで、 C言語のsystem()みたいな同期型のプログラム実行関数を書きたいんだけど、 WshExecオブジェクトのStdErr, StdOutを少しずつ読みながら、 Statusプロパティが0以外になるまで待つ、 よりもストレートで標準的なやり方ってありますか? できればプログラムの終了コードも取得したいです。 あと、本当はjsファイルダブルクリックでwscript.exeに 起動されたときは、コンソール立ち上げて、 WshShellのStdIn/Out/Errをどうにかしてコンソールに結び付けたい・・・ Windowsしかインストールしてないような 他人のマシンでも動くスクリプトを書きたいのでjscript試し始めたけど、 標準入出力の扱いが異様に面倒・・・
313 名前:デフォルトの名無しさん mailto:sage [2007/11/28(水) 23:54:22 ] 素直にCで書いたほうがいいよ
314 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 00:01:36 ] わざわざwshでやらなくても適当なスクリプトで書いたりすればいいんじゃね?perlとかなんでもいいけど
315 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 00:21:42 ] >>312 の2 自分をcscriptで再起動
316 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 00:28:05 ] >>312 の1 system()ならRun()でしょ >>312 の2 jscriptだろうがvbscriptだろうが、 標準入出力はwshやfsoなのだから変わらんけど?
317 名前:デフォルトの名無しさん [2007/11/29(木) 00:36:45 ] Workgroupとドメインが混じった環境がありまして Workgroupのコンピュータでドメインユーザを使って ADの認証を取りたいのですが、なにか良い方法ありますか? 認証はKerberosでもNTLMでもいいです。 WorkGroupのコンピュータは、ADのDCに名前解決できています。 (DNS,lmhosts両方とも) OSは2000とXPProです。
318 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 01:30:17 ] >>315 同じようなこと考えてた。 スクリプト終了後にコンソールがすぐ消えて、経過が見えんなあ・・・と思ったけど、 cmd /k cscript ... で解決した。 >>316 連続してプログラムをRunする度に別のコンソールが立ち上がるのがイヤ。 1つのプログラムが終ると、その分のコンソールが消えて、 stdout/errの経過が見れないの困る・・・ なので、WshExecのStdOut/Errを読んで、Echoに横流ししてる。 けど、stdout/errが入り乱れてるときにちゃんとリアルタイムに出力できるか疑問。 あと、プログラムの終了コードが取れない。
319 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 01:57:30 ] exec("cmd /c hoge 2>&1")
320 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 02:08:50 ] >>319 基本でしたw tnx
321 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 02:22:16 ] >>317 runas /user:ドメイン名\ユーザー名 hogehoge.exe
322 名前:デフォルトの名無しさん [2007/11/29(木) 23:37:30 ] >321 明日試してみます。 もちろん、321さんは実験済みなんですよね?
323 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 23:44:24 ] イラつくよお前
324 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 23:53:11 ] お前火病るの早すぎwwwwww
325 名前:デフォルトの名無しさん mailto:sage [2007/11/30(金) 19:01:46 ] >あと、プログラムの終了コードが取れない。 取れるよ。 >Statusプロパティが0以外になるまで待つ、 してる?
326 名前:デフォルトの名無しさん mailto:sage [2007/11/30(金) 20:40:19 ] >321 試してみました。 書いていただいた「コマンドライン」では動きませんでした。 でも他の方法で解決できました。 本当にありがとうございました。
327 名前:デフォルトの名無しさん [2007/12/01(土) 02:35:35 ] >>326 もう二度と来んな!
328 名前:デフォルトの名無しさん mailto:sage [2007/12/01(土) 02:37:04 ] >>326 その「他の方法」とやらを書く気は全く無い訳だな
329 名前:デフォルトの名無しさん mailto:sage [2007/12/01(土) 05:44:51 ] 書きに戻ってくる必要もないよ 興味ないから
330 名前:デフォルトの名無しさん mailto:sage [2007/12/01(土) 12:31:11 ] >>325 ExitCodeプロパティの存在に気付かなかった。 最初読んでた本と適当にググったサイトでスルーされてたので・・・ とりあえずこのスレで得た成果をまとめてみた。 var shell = new ActiveXObject("WScript.Shell"); function system(cmd) { var e = shell.Exec("cmd /c " + cmd + " 2>&1"); while (!e.StdOut.AtEndOfStream) { WScript.Echo(e.StdOut.ReadLine()); } while (e.Status == 0) { WScript.Sleep(50); } return e.ExitCode; }
331 名前:デフォルトの名無しさん mailto:sage [2007/12/01(土) 15:20:48 ] >WScript.Echo(e.StdOut.ReadLine()); は WScript.StdOut.Write(e.StdOut.Read(1)); のほうがいいよ