2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

お前ら、wsh使ってますか? Part8

1 :名無し~3.EXE:2010/12/19(日) 22:20:35 ID:SZFqF39w.net
こんなことコンピュータにやらせろよ。そう思ったことはありませんか?
簡易的な実行環境も含めて普通のOSだったら当たり前に備わっている自動実行。
Windowsの標準に備わっているそれがWSH(Windows Script Host)です。
また、ここではWSHだけに限らずWMI、ADSIなどのネタもOKです。

・煽りや荒らしは無視の方針で。基本的にsage進行です。

・ここでヒントを得て完成したスクリプトは、出来れば皆さんにお披露目してください。
 同じことで悩んでいる人のためになります。

・質問する際は、OS及び使用するコンポーネントのバージョンもお忘れなく。

前スレ
お前ら、wsh使ってますか? Part7
http://hibari.2ch.net/test/read.cgi/win/1190548945/

2 :名無し~3.EXE:2010/12/19(日) 22:22:00 ID:SZFqF39w.net
2 名前:名無し~3.EXE[sage] 投稿日:2007/09/23(日) 21:03:13 ID:2RosR0QK
●便利なリンク
Windows Script
http://www.microsoft.com/japan/msdn/scripting/default.asp
MSDN Library (オンラインドキュメント)
http://msdn.microsoft.com/library/ja/
Windows Script 5.6 ドキュメント ダウンロード (exe 形式; 1.67 MB)
http://download.microsoft.com/download/winscript56/Install/5.6/W98NT42KMe/JA/scd56jp.exe
OLE/COM Object Viewer ダウンロード (exe 形式; 656 KB)
http://download.microsoft.com/download/win2000platform/oleview/1.00.0.1/NT5/EN-US/oleview_setup.exe

Sesame Script (スクリプト作成初心者向けコラム)
http://www.microsoft.com/japan/technet/scriptcenter/resources/begin/default.mspx
Hey, Scripting Guy! (スクリプトのQ&A・ハウトゥ集)
http://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/default.mspx
Windows管理者のためのWindows Script Host入門 (@IT内記事)
http://www.atmarkit.co.jp/fwin2k/operation/wsh01/wsh01_01.html
Windows XP に含まれるコマンドラインツールの紹介 (@IT内記事)
http://www.atmarkit.co.jp/fwin2k/xp_feature/013commandtool/commandtool.html
ADSI (Active Directory Service Interfaces) の特集記事全文
http://web.archive.org/web/20050309045811/http://www.galliver.co.jp/writing/nikkei_tokushu/wad002/index.html

●個人サイト
Windows Script Wiki
ttp://winscript.s41.xrea.com/wiki/index.php
趣味のJavaScriptなページ
ttp://homepage3.nifty.com/aya_js/
Windows Scripting Host Laboratory
ttp://www.roy.hi-ho.ne.jp/mutaguchi/wsh/
Tips - (小技にも満たない)微ワザ集
ttp://www1.u-netsurf.ne.jp/~tomo_c/tips/Scr002.html

3 :名無し~3.EXE:2010/12/19(日) 22:23:08 ID:SZFqF39w.net
●コンポーネント関連リンク

○Microsoft 製外部コンポーネント
DCOM
(98/Me ※リンク切れ) http://www.microsoft.com/japan/com/dcom/dcom98/dcom13.asp
(95)  http://www.microsoft.com/japan/com/dcom/dcom95/dcom13.asp
MDAC - データベース・メールボックス・WebDAV・バイナリの操作
http://msdn2.microsoft.com/ja-jp/data/aa937730.aspx
WMI(95/98/NT4.0) - 統一されたコンピュータオブジェクト化モデルを提供するスクリプティングAPI、リモート管理
http://www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=AFE41F46-E213-4CBF-9C5B-FBF236E0E875
ADSI - Active Dictoryの機能を操作
http://www.microsoft.com/downloads/details.aspx?FamilyID=f4bf2bf6-ed15-4789-9c63-e849d530a6df&DisplayLang=ja
MSXML - XMLパーサ、SAX・DOM API、XSLT変換、POST/HTTPダウンロード
http://www.microsoft.com/downloads/details.aspx?familyid=993c0bcf-3bcf-4009-be21-27e85e1857b1

○サードパーティ製外部コンポーネント
BASP21 - メール、ファイルエンコード、文字コード変換、FTP/HTTPアップ、その他
http://www.hi-ho.ne.jp/babaq/basp21.html
Doodle2 - グラフィック変換、操作、描画
http://www.vector.co.jp/soft/winnt/prog/se219120.html
DynaCall - Win32APIコール
http://people.freenet.de/gborn/WSHBazaar/WSHDynaCall.htm
AutoItX - マウス・キーボード・クリップボード操作
http://www.hiddensoft.com/AutoIt/

4 :名無し~3.EXE:2010/12/19(日) 22:24:05 ID:SZFqF39w.net
●WSH(COM)参考書籍

「はじめてのWindows Scripting Host」 (株)アンク著 技術評論社
http://www.amazon.co.jp/gp/product/477410650X/

「[改訂版] VBScriptポケットリファレンス」
http://www.amazon.co.jp/gp/product/4774127930/

「使いながら覚えるWindows Scripting Hostプログラミング入門」 竹田英雄著 エーアイ出版
http://www.amazon.co.jp/gp/product/4871936678/

「Windows Scripting Host入門 with VBScript」 毎日コミュニケーションズ
http://www.amazon.co.jp/gp/product/4839900906/

「WSHで楽しむWindows95/98/NT4.0版 ウィンドウズ・スクリプティング入門 VBScript編」 メディアテック出版
http://www.amazon.co.jp/gp/product/4896270207/

「WSHクイックリファレンス」 羽山博著 オライリー・ジャパン
http://www.amazon.co.jp/gp/product/4873110068/

「Rubyを256倍使う本 邪道編」 arton著 ASCII
http://www.amazon.co.jp/gp/product/4756136036/

「ADSIスクリプトによるWindows2000システム管理 Windows2000管理者ガイドブック」ピアソン・エデュケーション トーマス・エック 著
http://www.amazon.co.jp/gp/product/4894712881/ (どちらかというとVBによる操作本?)

「標準ASPテクニカルリファレンス」山田祥寛著 SOFTBANK
http://www.amazon.co.jp/gp/product/4797314001/

5 :名無し~3.EXE:2010/12/19(日) 22:25:19 ID:SZFqF39w.net
●JavaScript、VBScript 以外のWSHで使える言語

TCLScript
http://tclscript.sourceforge.net/
Perl
http://www.activestate.com/Products/Download/Download.plex?id=ActivePerl
Ruby
http://www.geocities.co.jp/SiliconValley-PaloAlto/9251/ruby/
Python
http://www.python.jp/Zope/download
PHP
http://www.php.net/downloads.php
REXX
http://www.borg.com/~jglatt/rexx/win32/rxusrw32.htm

6 :名無し~3.EXE:2010/12/20(月) 01:30:01 ID:0VqfHqM5.net
言いたいことも言えないこんな世の中じゃ


7 :名無し~3.EXE:2010/12/20(月) 01:37:26 ID:pw89Kxj0.net
テンプレ乙


8 :名無し~3.EXE:2010/12/20(月) 02:20:06 ID:aLFKp+NM.net
>>11 に無駄口さんが来るかな、来ないかな。

9 :名無し~3.EXE:2010/12/24(金) 01:04:53 ID:MccdA2yM.net
hosyu

10 :名無し~3.EXE:2010/12/25(土) 10:14:02 ID:7Kf1fKnZ.net
Wscript.Echo("保守");

11 :名無し~3.EXE:2010/12/25(土) 16:11:37 ID:IjNpG0xL.net
---------------------------
Windows Script Host
---------------------------
スクリプト: C:\Users\10\Desktop\10.js
行: 1
文字: 1
エラー: 'Wscript' は宣言されていません。
コード: 800A1391
ソース: Microsoft JScript 実行時エラー

---------------------------
OK
---------------------------


12 :名無し~3.EXE:2010/12/30(木) 00:17:30 ID:08ofgx/l.net
WSHで1番汎用的なのって結局vbsなんですか?


13 :名無し~3.EXE:2010/12/30(木) 00:42:04 ID:xW3gQ5+X.net
wsfだろ

14 :12:2010/12/30(木) 17:02:11 ID:08ofgx/l.net
>>13
一般的なデフォルトだと使えるのはVBSとJSCRIPTですよね?

15 :名無し~3.EXE:2010/12/30(木) 17:08:36 ID:0MWDFXK8.net
wsfが何か解ってての発言ならそう
解ってなくての発言なら「wsfもデフォルト、しかもwsf内でVBSとJS、更に他のActiveScript対応言語が混在できる」と言っておく

16 :名無し~3.EXE:2010/12/30(木) 17:55:32 ID:xW3gQ5+X.net
日本語でおk

17 :名無し~3.EXE:2010/12/31(金) 10:08:00 ID:/JGLq4Iy.net
えっ

18 :名無し~3.EXE:2010/12/31(金) 20:09:14 ID:kL9e4eNw.net
汎用的なんつー曖昧なことをいうからだ。
どれも何かの処理に特化したもんでもないし*それなりに*汎用的だ。

19 :名無し~3.EXE:2011/01/01(土) 16:30:59 ID:u9x30d7f.net
wsfはvbsより専用的?
jsはvbsより専用的?
一般的なデフォルト?
特殊なデフォルト?

20 :名無し~3.EXE:2011/01/02(日) 18:32:59 ID:92kNE2ba.net
vbsはvbscript専用。jsはjscript専用。wsfはvbscript、jscript両用なので汎用

21 :名無し~3.EXE:2011/01/03(月) 20:37:47 ID:kMeSMXdr.net
>>20
rubyとかだと物足りないの?

22 :名無し~3.EXE:2011/01/04(火) 03:43:46 ID:EAqM4Qxk.net
>>21
使ってないから

23 :名無し~3.EXE:2011/01/08(土) 02:47:48 ID:wFF3NM0U.net
rubyは一般的なデフォルトで使えないから汎用的でないんだよ

24 :名無し~3.EXE:2011/01/11(火) 18:20:42 ID:qCTX6A0m.net
>>23
デフォルトだとJSCRIPTとVBSCRIPTは使えるけど、って事?

25 :名無し~3.EXE:2011/01/13(木) 17:38:31 ID:xqN3E9C5.net
汎用的なデフォルトは一般的でないんだよ

26 :名無し~3.EXE:2011/01/13(木) 20:44:52 ID:JxRGBuOr.net
>>25
うん
質問が悪かった
窓APIとかWMIいじるならrubyよりVBSのがいいって事だよね?

27 :名無し~3.EXE:2011/01/14(金) 15:33:32 ID:j6FZVWGM.net
rubyはスレチガイ
http://hibari.2ch.net/test/read.cgi/tech/1170047838/l50

28 :名無し~3.EXE:2011/01/14(金) 23:51:58 ID:wa66ecam.net
>>27
>>4は?

29 :名無し~3.EXE:2011/01/15(土) 16:21:12 ID:4x/qG0WE.net
>>28
27ではないけど、書名にあるようにRuby側から見たらあくまで「邪道」
ただRubyやPerlそのものでは無くて
ActiveScriptRubyや、PerlScriptに依存した話なら
ここで良いのではと思う

30 :名無し~3.EXE:2011/01/15(土) 16:21:56 ID:zaQ/9Snk.net
窓APIとかWMIいじるならrubyよりPowerShellがいいって事だよ



31 :名無し~3.EXE:2011/01/16(日) 16:57:09 ID:aEtK6RmW.net
わざわざwshでrubyしていいことあるのか?

32 :名無し~3.EXE:2011/01/18(火) 21:09:35 ID:6oYqEXc4.net
HTAでActiveScriptRubyやPerlScriptやりたいならわからんでもないが

33 :名無し~3.EXE:2011/02/04(金) 19:18:50 ID:zRGsp834.net
Temporary Internet Files に溜まっている容量を食う画像ファイルの削除方


var fs = new ActiveXObject( "Scripting.FileSystemObject" );

function d1(aaa)
{
if(fs.FileExists(aaa)) fs.DeleteFile( aaa );
}

d1( "J:/Documents and Settings/inet2004user.ZISAKUPCAT1.001/Local Settings/Temporary Internet Files/Content.IE5/07HBQI7X/*.jpg" );
d1( "J:/Documents and Settings/inet2004user.ZISAKUPCAT1.001/Local Settings/Temporary Internet Files/Content.IE5/07HBQI7X/*.gif" );
d1( "J:/Documents and Settings/inet2004user.ZISAKUPCAT1.001/Local Settings/Temporary Internet Files/Content.IE5/09CZH168/*.jpg" );
d1( "J:/Documents and Settings/inet2004user.ZISAKUPCAT1.001/Local Settings/Temporary Internet Files/Content.IE5/09CZH168/*.gif" );
たらたら

スマートではないな。

34 :名無し~3.EXE:2011/02/04(金) 19:21:56 ID:H0i5uLHI.net
環境変数くらい使えw

35 :名無し~3.EXE:2011/02/05(土) 17:42:37 ID:oOuGbzzj.net
そんなもんバッチファイルでやれや

36 :名無し~3.EXE:2011/02/05(土) 18:19:50 ID:rk7KWhb/.net
バッチファイルとかDOS窓ひらくじゃん

37 :名無し~3.EXE:2011/02/05(土) 18:28:22 ID:oOuGbzzj.net
それくらい最小化すればええがな

38 :名無し~3.EXE:2011/02/07(月) 08:37:45 ID:DSR2LhTh.net
むしろ俺はWSHもcscriptでやるし、wscriptでもmsgbox表示するぞ
何かしらの表示があったほうが進行状況が分かって個人的に安心できる

39 :名無し~3.EXE:2011/02/07(月) 14:58:51 ID:FEcKz/Kj.net
いみふ 日本語使え

40 :名無し~3.EXE:2011/02/07(月) 18:42:46 ID:T7YFH+4h.net
わかるだろw

41 :名無し~3.EXE:2011/02/07(月) 21:08:05 ID:FEcKz/Kj.net
color f0
ってやれば気にならねーよ

42 :名無し~3.EXE:2011/02/07(月) 21:50:23 ID:FEcKz/Kj.net
ついでに
title Temporary Internet Files に溜まっている容量を食う画像ファイルを削除中です...

43 :名無し~3.EXE:2011/02/09(水) 21:43:47 ID:bFO76Jsd.net
>>38
バッチファイルからCSCRIPT.EXEで.vbsファイルを呼び出す手法は、私も良く使うほうだな。

44 :名無し~3.EXE:2011/02/10(木) 03:35:40 ID:p4x9btO0.net
個人的にはバッチファイルならJSかな

@if (0)==(0) @echo off
cscript.exe "%~f0" //Nologo //J:JScript %*
goto :EOF
@end
var args = new Enumerator(WScript.Arguments)

この辺まで個人的にテンプレ文だわ

45 :名無し~3.EXE:2011/02/10(木) 16:10:00 ID:DW3C2PEC.net
>>44
//Jてなんだよ

やっぱバッチもVBSが楽だな
rem; & @cscript.exe "%~f0" //Nologo //E:VBScript %* & @goto :EOF

46 :名無し~3.EXE:2011/02/10(木) 17:14:47 ID:uU7ZMDHw.net
俺は拡張子でwscript.exeとcscript.exeを使い分けてる
.vbs、.js、.wshはwscript.exe、.vbc、.jcs、.cshはcscript.exeってね
C Shell等、別な物と被るなら他の拡張子でもいいし

エディタが拡張子で言語見分けてるから、.bat拡張子だと
中身がJSやVBSでもバッチファイルの強調表示や入力補完になっちゃうし

47 :名無し~3.EXE:2011/02/10(木) 21:49:52 ID:p4x9btO0.net
>>45
ごめん間違えたw Eで合ってる

VBSだとそういう書き方になるんだな

48 :名無し~3.EXE:2011/02/13(日) 00:53:31 ID:lqMvXV0f.net
// jscriptでも1行でいけるね
@if (0)==(0) (@cscript.exe "%~f0" //nologo //e:jscript %*) & (@goto :eof) & @end

for(var iii=0;iii<WScript.Arguments.length;iii++){ WScript.Echo(iii + '-'+ WScript.Arguments(iii));};
new ActiveXObject('WScript.Shell').popup(WScript.Arguments.length);

49 :名無し~3.EXE:2011/02/13(日) 23:01:21 ID:n+mBrObW.net
>>45
コマンドエコーが玉に瑕だね

50 :名無し~3.EXE:2011/02/13(日) 23:22:03 ID:6qPKG8Qf.net
それほどの事でもないだろ

51 :名無し~3.EXE:2011/02/14(月) 06:15:38 ID:v7eRmHxP.net
>>45
remの後って、セミコロン?
; だと上手く行かなくて、^ に変えたら上手く行ったんだけど…

52 :名無し~3.EXE:2011/02/14(月) 15:25:37 ID:WWZot1vK.net
昔はVBSのほうがドキュメントもそろってたけど、もう立場は逆転した感じ。

53 :名無し~3.EXE:2011/02/14(月) 17:13:42 ID:MBnaCfqF.net
コロンだっちゃ

54 :名無し~3.EXE:2011/02/14(月) 19:39:06 ID:IB1nvu1Z.net
>>52
JavaScriptだとWEB関連でJSだとあやしいのがひっかかり検索しにくい困ったところ

55 :名無し~3.EXE:2011/02/15(火) 02:33:03 ID:5kt/fSLl.net
ちょっと教えてください。
時刻の文字列から、合計の秒数を計算して表示しようとしてるのだけれど、数字によって表示がおかしくなります。
何か大事なことを忘れてるんでしょうか?
わけがわからないです。

oshl=new ActiveXObject('WScript.Shell');
var nsec=33.48 ;
nsec=nsec + 60;
oshl.popup(nsec);/ * なにも文字を付け足さないと表示は問題ない * /;
oshl.popup(nsec +''+ " 60を足した結果に、文字を付け足すと数字がおかしくなる");

var nsec=33.48 ;
nsec=nsec + 100;
oshl.popup(nsec);/ * なにも文字を付け足さないと表示は問題ない * /;
oshl.popup(nsec +''+ " 100を足した結果に、文字を付け足しても数字がおかしくならない");

56 :55:2011/02/15(火) 02:49:44 ID:5kt/fSLl.net
わかりにくいかもしれないんで、書き直します。たとえば、関数の戻り値がおかしくなっちゃうのです。

test=function(n){
return( "合計 "+ (33.48 + n)+ "" + " 秒です");
};

oshl=new ActiveXObject('WScript.Shell');

n=60;
oshl.popup( test(n));// この場合は、数字がおかしい。

n=100;
oshl.popup( test(n));// この場合は、数字は問題ない。


57 :55:2011/02/15(火) 03:13:19 ID:5kt/fSLl.net
ぐぐったら、これがjavascriptの仕様なんだとw そ、そんな馬鹿なと思ったけど。
少数を含む数値を1000倍にしといて整数にしてから計算して、1000で割ることにしました。まんどくせえw

test=function(n){
return( "合計 "+ (33.48 + n)+ "" + " 秒です");
};

test2=function(n){
return( "合計 "+ (((33.48)*1000 + (n*1000))/1000)+ "" + " 秒です");
};

oshl=new ActiveXObject('WScript.Shell');

n=60;
oshl.popup( test(n));// 数字がおかしい。

n=60;
oshl.popup( test2(n));// 数字は問題ない。

58 :名無し~3.EXE:2011/02/15(火) 11:21:20 ID:KQK8NgNf.net
nが文字列になる瞬間に数字が変わってるね。
「return n;」だと異常ないのに、「return n+"";」だと循環小数になる。
こっちでもっと良い解決方法が無いか15分くらい探してみたけど、見付からなかった……。

あと、returnは関数ではなくて文なので、「return(n);」でなくて「return n;」の方が良いと思う。

59 :名無し~3.EXE:2011/02/15(火) 11:26:34 ID:KQK8NgNf.net
「return n;」の前に「n+=33.48;」って書いて説明するの忘れてた……。

function test(n){
n+=33.48;
//return n;/*93.48*/
//return n+"";/*93.47999999999999*/
return "合計"+n+"秒です";
};
var oshl=new ActiveXObject('WScript.Shell');
oshl.Popup(test(60));

総レス数 947
299 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200