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/
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)); のほうがいいよ
332 名前:デフォルトの名無しさん mailto:sage [2007/12/01(土) 16:45:06 ] 男は黙ってecho
333 名前:デフォルトの名無しさん mailto:sage [2007/12/01(土) 17:09:39 ] >>331 たしかに、 checking...(長い処理) done<改行> みたいな出力するプログラム起動したときカッコ悪かった。 1バイトずつってのが引っかかったけど、別に体感速度変わらんな。
334 名前:デフォルトの名無しさん mailto:sage [2007/12/02(日) 01:13:43 ] 男は黙ってcscript
335 名前:デフォルトの名無しさん mailto:sage [2007/12/02(日) 21:19:06 ] Q >>294 A >>292 なぜかQAの順序が逆ですな。>>292 はエスパーかな?
336 名前:デフォルトの名無しさん mailto:sage [2007/12/02(日) 21:31:52 ] >>335 >>292 を実行したら警告ダイアログが出た奴が質問してるだけ。 環境依存か知らんが。
337 名前:デフォルトの名無しさん mailto:sage [2007/12/02(日) 22:31:07 ] VBScriptで引数省略は,,だけど、JScriptは? JScriptで,,にすると怒られる
338 名前:デフォルトの名無しさん [2007/12/03(月) 03:11:23 ] 低脳言語と一緒にすんなよ。
339 名前:デフォルトの名無しさん [2007/12/03(月) 09:12:27 ] あの突然すいませんが WSH(VBS)のコンパイラってないですかね? www.vector.co.jp/soft/dl/win95/prog/se277804.html これしか見当たりませんが、これにしてもなぜだか動作しないんです。 ほかに知っている方が見えましたらお願いいたします
340 名前:デフォルトの名無しさん mailto:sage [2007/12/03(月) 10:23:32 ] 本来コンパイル出来ない物なんだから、無理矢理やっても不都合あるのは当然かと コンパイルしたいなら実行ファイル生成用のプログラム言語か スクリプト言語の中でも元からコンパイルを想定して作られたもの使いましょう つまりお門違いってもんです
341 名前:デフォルトの名無しさん mailto:sage [2007/12/03(月) 10:36:12 ] >>339 msscript.ocx を忘れてるだけだと思われ
342 名前:デフォルトの名無しさん [2007/12/03(月) 12:25:15 ] EXE 化して改ざんされにくくしたいって事だろ。それくらい理解してやれよ。
343 名前:デフォルトの名無しさん mailto:sage [2007/12/03(月) 12:44:31 ] ↓こっちの方が有名だと思ってたけど、違うのか "MakeExe" www.vector.co.jp/soft/winnt/prog/se389017.html WMIのイベント系メソッドには弱いらしいけど ttp://maglog.jp/pueblo-del-script/Article11074.html 因みにどこかで暗号化も出来るとか言ってる人もいるらしいけど、 (作者のブログにも説明あったけど)暗号化はされない。
344 名前:デフォルトの名無しさん mailto:sage [2007/12/03(月) 14:45:09 ] 改ざん防止は署名だろ
345 名前:デフォルトの名無しさん mailto:sage [2007/12/03(月) 16:19:24 ] 難読化はスクリプトエンコードだろ
346 名前:デフォルトの名無しさん mailto:sage [2007/12/03(月) 17:43:46 ] jscriptにすればコンパイルできるよ
347 名前:デフォルトの名無しさん mailto:sage [2007/12/03(月) 18:14:11 ] VBにすればコンパイルできるよw
348 名前:デフォルトの名無しさん mailto:sage [2007/12/03(月) 20:53:14 ] COMクライアントのプログラムをCで書いてみるといいよ
349 名前:デフォルトの名無しさん mailto:sage [2007/12/03(月) 23:07:15 ] JScript .NETに書き換えればコンパイルできるよ
350 名前:デフォルトの名無しさん [2007/12/03(月) 23:22:19 ] コンパイルしたら、せっかくのスクリプトの意味が無いやん
351 名前:デフォルトの名無しさん mailto:sage [2007/12/03(月) 23:44:59 ] >>337 ,null,
352 名前:デフォルトの名無しさん mailto:sage [2007/12/03(月) 23:49:25 ] set sc=createobject("scriptcontrol") sc.language="vbscript.encode" sc.addcode unescape("%23@%7E%5ENQAAAA%3D%3Dhko8K6%2CEx%7F/1Cw%7F%60E%5D%21%26T*y%5DE2TcW%5DE2T*vuE2%21*%25Y%3B2%21*brb@%23@%26ug0AAA%3D%3D%5E%23%7E@") 解読できる?
353 名前:デフォルトの名無しさん [2007/12/04(火) 00:22:34 ] おちんちん
354 名前:339 [2007/12/04(火) 05:40:22 ] >340 まあインタプリタの方が管理しやすいですが、 EXEだとタスクマネージャーで強制停止できたり、 知り合いに渡すのに環境を選ばなくなりますからね >341 インストール中にはねられてしまいました フリーのコンパイラは複数あって損はないですので調べてみます。 >342 環境に左右されにくくなるかな?と思ったわけです >343 ダウソしました、ありがとうございました。 その他みなさんありがとうございました
355 名前:デフォルトの名無しさん mailto:sage [2007/12/04(火) 09:49:29 ] > EXEだとタスクマネージャーで強制停止できたり、 スクリプトだって出来る、WSHのスクリプトエンジンはexeなんだから ついでに言うと、うちの環境では、vbs,js,wsfなどを右クリックすると「このスクリプトを強制終了する」って項目がある この項目を選択した際に実行されるものもwshで作った あと、多重実行すると既に実行されてるものを強制終了するって仕組みのスクリプトも作ったことがある やり方次第で停止、終了:に関しては全然困らなくなる タスクマネージャーだと複数のWScript.exeが実行されてるときにどれがどれだか解らないとか言うかも知れないが それだってどうにでもなる問題だし > 知り合いに渡すのに環境を選ばなくなりますからね 環境選ばないと言ってもJavaとかじゃなければWindows限定なわけだし Windows限定ならWSH(VBS)が動かないのはWin95のノーマルと個人ではほとんど使われてないNTの4以前くらいだ あとはCOMのバージョンが違うくらいだが、それはCOMを使用するexeだって同じ事だし
356 名前:デフォルトの名無しさん [2007/12/04(火) 18:05:19 ] 自慢うざい
357 名前:デフォルトの名無しさん mailto:sage [2007/12/04(火) 19:13:51 ] 的確な突っ込みを理解できないヤシがマヂギレw
358 名前:デフォルトの名無しさん [2007/12/04(火) 19:17:48 ] ここは自慢スレじゃ無いぞ。
359 名前:デフォルトの名無しさん mailto:sage [2007/12/04(火) 20:19:12 ] >>358 どうしたの?
360 名前:デフォルトの名無しさん [2007/12/04(火) 20:38:30 ] 自慢すんな
361 名前:デフォルトの名無しさん [2007/12/04(火) 20:55:32 ] あんな程度のが自慢に見えちゃうなんて可哀相な子ですね
362 名前:デフォルトの名無しさん mailto:sage [2007/12/04(火) 21:12:34 ] >>355 いや cscript.exe がいっぱいタスクにならんで どれが殺したい相手なのかわからなくなるんだよ
363 名前:デフォルトの名無しさん mailto:sage [2007/12/04(火) 21:25:45 ] > いや cscript.exe がいっぱいタスクにならんで > どれが殺したい相手なのかわからなくなるんだよ そんなの実行時引数が見られるタスク管理ソフト(タスクマネージャ代替ソフト)を使えば一発解決 WSHのオプションスイッチやスクリプトへの引数が無ければ「プロセス名:cscript.exe 実行時引数:スクリプトパス」になってる 実行時引数はWMIでも取得出来るから、俺のはスクリプトのパスを渡す(右クリックから強制終了選択)と 実行時引数にそのパス含むWSHプロセスを殺すようにしてるだけ 多重起動で自殺スクリプトも仕組みは同じ cscript.exeがいっぱいあるだけでなく、実行しているスクリプトまで同じでどれがどれだか解らないなんてのは スクリプトの設計段階での問題
364 名前:339 [2007/12/04(火) 21:33:46 ] >355 環境と言うのはBASP21やセンドキーで日本語を送る為のライブラリ環境の事です。 VBSやらない人に複数のライブラリのインストールを強制するのは酷ですからね。 あと、プログラミング自体はしょぼいPCの時代にやっていただけですので、 (懐かしのMSXやX68000でアセンブラとベーシックをかじった程度ですが) バックグラウンドでプログラムを動かしつづけるのは何だかもったいないような気がするんですよ これは個人的な感覚ですので,気にしないで下さい
365 名前:デフォルトの名無しさん mailto:sage [2007/12/04(火) 21:35:30 ] cscript hoge.vbs fuga hage cscript hoge.vbs fuga hige みたいなのも区別できますか?
366 名前:デフォルトの名無しさん mailto:sage [2007/12/04(火) 21:36:52 ] >>365 もしよろしければそのツールが公開されているURLを教えて頂けませんか?
367 名前:デフォルトの名無しさん mailto:sage [2007/12/04(火) 21:37:38 ] >>365 じゃなくて >>363 だったorz
368 名前:デフォルトの名無しさん mailto:sage [2007/12/04(火) 22:08:35 ] > VBSやらない人に複数のライブラリのインストールを強制するのは酷ですからね。 特定のスクリプトからしか使わないなら、インストール(レジストリへの登録)無しに使う方法もあるけどな > みたいなのも区別できますか? 当然 禿げ と 髭 だって実行時引数なんだから区別できるよ >363では"WSHのオプションスイッチやスクリプトへの引数が無ければ"の例を書いたが、細かく書けば 「プロセス名:cscript.exe 実行時引数:WSHのオプションスイッチ スクリプトパス スクリプトへの引数」だよ プロセス名:cscript 実行時引数://nologo hoge.vbs fuga hage > ツールが公開されているURLを教えて頂けませんか? スレ違い、自分で探すかソフト紹介スレでも行け WMI使って特定のスクリプトを実行しているWSHプロセス殺す方法ならスレ違いじゃないから 要望が有れば教えてもいいが、今から用事があるんで早くても明日になる この板に来る奴ならそれまで待つよりググった方が早いと思うがな
369 名前:デフォルトの名無しさん mailto:sage [2007/12/04(火) 22:15:10 ] >>368 与えられた オプションスイッチ スクリプトパス スクリプトへの引数 の順序が違ってても区別できますか?
370 名前:デフォルトの名無しさん mailto:sage [2007/12/04(火) 23:27:36 ] >>366 ProcessExplorerとか?
371 名前:デフォルトの名無しさん mailto:sage [2007/12/05(水) 09:10:14 ] >>369 区別できるよ コマンドライン文字列 を丸々見ることは可能だし
372 名前:デフォルトの名無しさん mailto:sage [2007/12/05(水) 21:59:30 ] >>364 コンパイルすればライブラリいらなくなるの?マジかよ
373 名前:デフォルトの名無しさん mailto:sage [2007/12/05(水) 22:10:24 ] 355も言ってるが、COMをライブラリとして使用する場合はスクリプトも実行ファイルも同じだよね ソースに取り込めばライブラリファイル(dll=ダイナミックリンクライブラリ)は不要になるけど それはCなどのまともな言語を使うかスクリプト言語を使うかって場合の話で スクリプトそのものとスクリプトをコンパイルしたものの差にはならないよな
374 名前:デフォルトの名無しさん [2007/12/06(木) 00:02:22 ] >>372 バカ。元発言嫁よ。 ”そういうコンパイラはありませんか?”って質問だよ。
375 名前:デフォルトの名無しさん mailto:sage [2007/12/06(木) 06:37:39 ] そんなコンパイラがあれば CreateObject("Excel.Application")とかやってるスクリプトも ExcelをインストールしてないPCで利用可能に やべーすげー俺にも教えて
376 名前:デフォルトの名無しさん mailto:sage [2007/12/11(火) 19:44:45 ] cmdからだとcscript.exe explorerからだとwscript.exe で起動されるようにはどうすればできますでしょうか?
377 名前:デフォルトの名無しさん [2007/12/11(火) 20:10:14 ] ヌケ作マイクロソフトに無理言うなよ。
378 名前:デフォルトの名無しさん mailto:sage [2007/12/11(火) 20:56:05 ] >376 そんな事を考えるよりは素直にコマンドラインから cscript //nologo ***.vbs で 起動する習慣をつけておくほうが良いと思う。 またはvbsファイルをcscript.exeに関連付け、wscript.exeへのショートカットをSendToフォルダに入れておき、 エクスプローラでファイルを右クリック→送る→wscript.exeを起動させるとか。 あと、そこまで考えてるなら、ついでにvbsファイル内で以下のような条件文をつける手法も 覚えておくほうが良いかも。 If Right(UCase(WScript.Fullname),12) = "\CSCRIPT.EXE" Then WScript.Echo("このファイルはCSCRIPT.EXEから起動されました") Else WScript.Echo("このファイルはWSCRIPT.EXEから起動されました") End If
379 名前:デフォルトの名無しさん mailto:sage [2007/12/11(火) 21:13:14 ] >>376 コマンドプロンプトでファイル名叩くとエクスプローラーの関連付けで 起動するのは仕様で無理なんジャマイカ? 難しそうだから、ScriptingGuyに聞いてみたら? >>378 彼が何を考えて、そうしたいのかわからないんだから、素直にやり方は ないと答えるか、スルーするのが吉。
380 名前:デフォルトの名無しさん mailto:sage [2007/12/11(火) 22:07:03 ] Wrapper噛ませればいいじゃん
381 名前:デフォルトの名無しさん mailto:sage [2007/12/11(火) 22:18:05 ] >>380 kwsk
382 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 00:20:36 ] cmd.exeから起動されたかどうかは区別できるので 同じコンソールにcscript.exeで起動し直すのが問題だな
383 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 00:28:43 ] 逆ならおk?
384 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 08:55:28 ] >>382 >cmd.exeから起動されたかどうかは区別できるので kwsk
385 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 08:58:59 ] >>381 >>384 kwskはGoogleで
386 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 09:16:57 ] KaWaSaKi
387 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 17:04:44 ] >>385 Googleの検索キーワードをkwsk
388 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 20:54:28 ] >>387 >>380 >>382 >>385 は性格が悪いので教えてくれるわけがない。
389 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 21:46:40 ] だったら性格のよい388が変わりに教えてやればいいのに・・・ それとも388も性格悪い仲間なの?
390 名前:384=388 mailto:sage [2007/12/12(水) 22:04:43 ] >>389 性格はとてもいいんだけど、387と同じで検索キーすらわからないんだが。 わかれば、すぐ教えるが、残念ながらこれ以上調べてもわからなさそう。
391 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 22:49:07 ] よくわからんけど Win32_Process とかじゃねーの?
392 名前:390 mailto:sage [2007/12/12(水) 23:10:04 ] WSHでは無理、という結論。 .NET系ならGetCurrentProcessを使って自分自身のプロセスを調べ、 さらに親プロセスがcmd.exeである事を判別する、って方法でいけそうだけど。 >>391 自分自身の実行パスをWMIで調べて、そこから親プロセスを割り出す、 って出来そうだけど、同じスクリプトが複数走ってるとアウトのような希ガス。
393 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 23:11:58 ] scriptname = "foo.vbs" set swl = wscript.createobject("wbemscripting.swbemlocator") set s = swl.connectserver set rs = s.execquery("select * from win32_process where caption='cscript.exe' or caption='wscript.exe'") p = -1 for each r in rs if instr(1, r.commandline, scriptname) then wscript.echo r.caption p = r.parentprocessid end if next set rs = s.execquery("select * from win32_process where processid=" & p) for each r in rs wscript.echo r.caption next 'ttp://d.hatena.ne.jp/Ratso/20070313/p1
394 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 23:14:32 ] >>393 同じスクリプトが複数走ってるとアウトのような希ガス
395 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 23:18:35 ] ごめん リンク貼り間違えてた ttp://www.geocities.jp/maru3128/wmi.html
396 名前:392 mailto:sage [2007/12/12(水) 23:22:19 ] >>393 貼り付け乙 穴があるのは承知で、同じような物を作ろうと思ってた。
397 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 23:26:24 ] 自分でうにーくなプロセス起こしてそこからたどればおk
398 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 23:29:20 ] 自分のプロセスidはどうやったらわかるの?
399 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 23:30:15 ] MSは健忘症だから自分のことも平気で忘れる
400 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 23:32:17 ] 自分の子の親は普通、自分だけど、例外もあるかも
401 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 23:36:14 ] 子供のidは分かるけど自分のidは分からんらしい
402 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 23:39:07 ] scripting.cocolog-nifty.com/blog/2007/01/id_548f.html
403 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 00:04:35 ] 自分探しって大変なんだな
404 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 00:04:48 ] >>402 子プロセスを起動してその親プロセスIDを取るのか スゲー力技
405 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 00:08:44 ] >>400 '子の親(=自分)を調べる方法でgetpid()を作ってるサイトがあったので 'そちらを参考(丸写しともいう)にして >>302 を改良 'ttp://www.vector.co.jp/soft/winnt/util/se420729.html 'ttp://www.vector.co.jp/soft/winnt/util/se383755.html set swl = wscript.createobject("wbemscripting.swbemlocator") set s = swl.connectserver set rs = s.execquery("select * from win32_process where processid=" & getpid()) for each r in rs wscript.echo r.caption p = r.parentprocessid set prs = s.execquery("select * from win32_process where processid=" & p) for each g in prs wscript.echo g.caption next next function getpid() set ws = createobject("wscript.shell") set e = ws.exec("mshta.exe -") p = e.processid set o = getobject("winmgmts:root\cimv2") set ps = o.execquery("select * from win32_process where processid=" & p) if ps.count <> 1 then e.terminate err.raise 9 end if for each p in ps getpid=p.parentprocessid next e.terminate end function
406 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 00:13:16 ] なんでメインとサブでわざわざ違うやり方してんの?
407 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 00:13:35 ] そこまでしてわかったところでどうする? cscriptで起動しなおしたって別ウィンドウが開くだけだ
408 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 00:29:41 ] もう充分だよ
409 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 00:31:33 ] >>407 =382だろ? だから、まずできるところまでやってんだろ。 よくいるんだよな。自分では何もしないで人のしてる事にケチをつける奴。
410 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 00:33:07 ] >>405 すげーな。そんな方法思いもよらなかった。
411 名前:デフォルトの名無しさん [2007/12/13(木) 01:46:48 ] 超手抜きだけど、環境変数で判別するって方法もあるよ。 Cドライブのカレントディレクトリが =C: という変数に入ってるなら cmd 無ければ explorer から起動したとみなす。 かなり乱暴なやりかただけど。Win XP 以外でうまくいくかどうかわワカラン。 Dim WshShell,Environment Set WshShell = WScript.CreateObject("WScript.Shell") Set Environment = WshShell.Environment("PROCESS") If Environment("=C:") = "" Then MsgBox "エクスプローラから起動されました" Else MsgBox "コマンドプロンプトから起動されました" End if
412 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 06:07:15 ] PROMPT=$P$G も使えそうだね 消されてたらだめかな
413 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 06:09:08 ] >>411 DドライブにOS入れててCドライブが無い変態さんもいるかも知れない
414 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 19:02:27 ] If Environment("=" & left(wscript.fullname,2)) = "" Then
415 名前:デフォルトの名無しさん [2007/12/14(金) 06:45:12 ] 凄腕プログラマーな皆様!!!!! おいらの悩みを聞いてください replaceで " の入っている文章を置換したんですがどうすれば良いんでしょうか 具ぐってもサンプルコードばかりで解決策が見つかりません