05/04/15 17:02:04
【VBScriptサンプル02 その1 HTMLフォーム】
HTMLフォームからの受信データを処理するサンプル。sample02.htmで設置。
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=x-sjis">
<TITLE></TITLE>
</HEAD>
<BODY>
<FORM action="./sample02.wsf" method="post" name="form1" taerget="_blank">
テキスト1<BR>
<INPUT name="txt1"><BR>
テキスト2<BR>
<TEXTAREA name="txt2" wrap=off></TEXTAREA><BR>
<INPUT type="submit" value="Submit" name="submit1">
</FORM>
</BODY>
</HTML>
70:nobodyさん
05/04/15 17:06:31
【VBScriptサンプル02 その2 CGIスクリプトWSFファイル】
以下をその1のsample02.htmと同じ、sample02.wsfで設置、なおコードを見ても分かるように、>>61-63のsupport02.vbsファイルも設置。
<JOB>
<SCRIPT language=vbs src="support02.vbs" />
<SCRIPT language=vbs>
Option Explicit
Private ObjWshShell,ColWshEnv
Private d,d0,d1,d2
Set ObjWshShell=WScript.CreateObject("WScript.Shell")
Set ColWshEnv=ObjWshShell.Environment("Process")
Select Case ColWshEnv("REQUEST_METHOD") 'フォーム送信データを取得
Case "POST"
d=WScript.StdIn.ReadAll '実際にはサイズチェックを事前にすべき。
Case "GET"
d=ColWshEnv("QUERY_STRING")
End Select
With WScript.StdOut
.WriteLine "Content-type: text/html" & vbCRLF & vbCRLF & "<HTML><HEAD><TITLE>サンプル02</TITLE></HEAD><BODY noWrap>"
.WriteLine "生データ<BR>" & d & "<BR>取得データ<BR>"
d0=Split(d,"&",-1,1) 'POST生データを"name=data"単位で分離
For Each d1 in d0
d2=Split(d1,"=",2,1) ' "name=data"をnameとdataに要素数2の配列に分離格納
.WriteLine d2(0) & "=" & PF_Decode(d2(1)) & "<BR>"
Next
.WriteLine "完了</BODY>"
End With
</SCRIPT>
</JOB>
71:nobodyさん
05/04/15 17:07:23
【VBScriptサンプル02 その2 CGIスクリプトWSFファイル】
以下をその1のsample02.htmと同じ、sample02.wsfで設置、なおコードを見ても分かるように、>>61-63のsupport02.vbsファイルも設置。
<JOB>
<SCRIPT language=vbs src="support02.vbs" />
<SCRIPT language=vbs>
Option Explicit
Private ObjWshShell,ColWshEnv
Private d,d0,d1,d2
Set ObjWshShell=WScript.CreateObject("WScript.Shell")
Set ColWshEnv=ObjWshShell.Environment("Process")
Select Case ColWshEnv("REQUEST_METHOD") 'フォーム送信データを取得
Case "POST"
d=WScript.StdIn.ReadAll '実際にはサイズチェックを事前にすべき。
Case "GET"
d=ColWshEnv("QUERY_STRING")
End Select
With WScript.StdOut
.WriteLine "Content-type: text/html" & vbCRLF & vbCRLF & "<HTML><HEAD><TITLE>サンプル02</TITLE></HEAD><BODY noWrap>"
.WriteLine "生データ<BR>" & d & "<BR>取得データ<BR>"
d0=Split(d,"&",-1,1) 'POST生データを"name=data"単位で分離
For Each d1 in d0
d2=Split(d1,"=",2,1) ' "name=data"をnameとdataに要素数2の配列に分離格納
.WriteLine d2(0) & "=" & PF_Decode(d2(1)) & "<BR>"
Next
.WriteLine "完了</BODY>"
End With
</SCRIPT>
</JOB>
72:nobodyさん
05/04/15 17:21:38
【VBScriptサンプル02 解説1】
>>70-71 重複失礼。どちらも同じ内容なの。
>>69 訂正。
<FORM action="./sample02.wsf" method="post" name="form1" taerget="_blank">
の taerget="_blank" の taerget は誤り。
targetに直してw
73:nobodyさん
05/04/15 17:34:37
【VBScriptサンプル02 解説2】
このサンプル02は
sample02.htm >>69
sample02.wsf >>70 ※71は70と同じものなので無視。
support02.vbs >>61-63
の3つのファイルを同じフォルダに設置してください。
sample02.htmを表示して送信して下さい。フォームからのデータ取得のサンプルです。
あくまでサンプルですので、エラー処理はしていませんし、実用コードではありません。
POST、GETに対応していますが、POSTデータの場合は実際はただReadAllで読み込むの注意です。
POSTの場合、サイズが巨大なものが有り得ますので、事前サイズチェックはしましょう。
74:nobodyさん
05/07/18 02:41:24 MLViLjPO
ホス
75:nobodyさん
05/07/20 01:42:56 P18HiGG/
ホシュホシュ
76:1
05/07/24 16:43:18
保守されていたので、ネタを何か(w
>>45
俺もわかんない(w 初めてWebサイトみたときの記憶で、質問をジエンするときに使う感じでうろ覚え(w
FAQに似てると思うけど(w
>>50
WSHは使わせないというか、最初から危なくて業務用Winサーバーに入れとかないでしょ。
ここはプライベートというか、あくまで遊びだから。
>>60
みんなももっとネタ出してよ。
【ついでに】
・WSH関係あさればたまに目にすると思うけど。バイナリーのファイル入出力はADO2.8がインストされてればADODB.Streamでできるんだけどさ。
CGI実行時に標準入出力を読み書きする解決にはならないよん。
・>>55-58 >>61-63は Shift-JISデコード関数をVBSで書いてるけどVBSエンジンだけインクルードしてChrやAsc関数をJScropt関数で作ったほうが速いいかなぁ?
作ってみるわ。誰かもやってよ(w
77:1
05/07/24 16:51:21
>>76 思いつき書き込みしかしないから(w、またやってしまった
【訂正】
【ついでに】
>ChrやAsc関数をJScropt関数で作ったほうが速いいかなぁ?
JScropt→JScript
書き方が悪くて意味が伝わりませんね?
Chr関数自体をJScriptで作るのではなく、
JScript中でVBSのChr関数を呼び出して、JScript製のデコード関数を作ると言う意味です。
JScriptのほうが正規表現やユーザー関数の拡張性が高いからね、VBSより効率的にかけるかな。
あとでやっておきます。いつかね(w
78:nobodyさん
05/07/24 17:04:20
自age (w
みんなAN HTTPDめんどいのかなぁ
79:nobodyさん
05/09/06 02:04:33
つーか、デコードするCOMオブジェクトないの?
IEは公開してないのか?
80:nobodyさん
06/05/22 08:58:11
ほす
81:nobodyさん
06/07/08 09:15:04
このスレの内容にばちこーん興味を持ったので保守
82:nobodyさん
06/08/24 12:18:03 UeLY+x3U
藁をもつかむ気持ちでお願いします。
vbsからexcelのマクロを起動する方法ってどうするのでしょうか?
エクセルマクロを使用するためにtest.wsfからvbs.vbsを呼んでいます。
下記のソースでtest.xlsに埋め込まれているMacro1というマクロを呼び出そうと
しましたが「オブジェクトでサーポートされていないプロパティです」
というエラーが出てしまいます。
------------------------------------test.wsf記述
<job id="ExcelJob">
<reference guid="00020813-0000-0000-C000-000000000046"></reference>
<script language="VBScript" src="./vbs.vbs"></script>
<script language="VBScript">
Call prcMain
</script>
</job>
------------------------------------vbs.vbs記述
Sub prcMain()
Set Excel = CreateObject("Excel.Application")
Excel.Workbooks.Open("c:\test.xls")
Set xlSheet = Excel.Worksheets(1)
Excel.Visible = True
Set objSelection = Excel.Workbooks(1).Worksheets(1).Macro1
End Sub
83:82
06/08/24 12:48:36
すいません板違いでした。Web製作板へ行ってきます。
84:nobodyさん
06/08/24 18:56:31
>>82-83
Web製作ではなく↓に誘導しておきます。
WSH(・∀・)スレッド!
スレリンク(tech板)l50
85:nobodyさん
06/09/27 19:51:41
いろいろなサイトを閲覧して、ローカルPCに溜まったCookieファイルを、VBScriptで定期的に自動消去する処理は、どうすれば良いでしょうか?
URLリンク(www.happy2-island.com)
ファイルの削除を参考にしてみましたが、Cookieファイルの指定がうまくできませんでした。
86:nobodyさん
06/09/28 00:09:34
>>85
IEのCOM使ったほうがいいぞ
あと↓で聞いたほうがいい
お前ら、wsh使ってますか? part6
スレリンク(win板)
87:nobodyさん
06/09/28 00:44:11 23IKIm9v
>>86
どうもありがとう。
88:nobodyさん
07/07/04 14:20:44
何にせよ、ありがとうと言いたい
89:nobodyさん
07/09/06 00:53:56 lxdRIcpr
WSH初心者ですが少し教えてください
特定のソフトを起動するためのVBSの書式を教えてください
ちなみにバッチファイルでは起動しないソフトもあったのでこちらが良いと言われました
ソフトは壷です
"C:\Program Files\2chtubo\2chtubo.exe"
通常ならこのようなバッチファイルで起動するはずなんですが
なぜか起動しませんでした
なのでVBSでやってみたいです
90:nobodyさん
07/09/06 09:46:52
>WSH初心者ですが少し教えてください
初心者だから??なに?
>特定のソフトを起動するためのVBSの書式を教えてください
ええと、、、ググリましたか?
>ちなみにバッチファイルでは起動しないソフトもあったのでこちらが良いと言われました
どちらさまに言われましたか?
>なぜか起動しませんでした。なのでVBSでやってみたいです
やりたいなら調べろよ
91:nobodyさん
07/09/06 18:20:14
>>89
Wscript.Run "C:\Program Files\2chtubo\2chtubo.exe"
92:nobodyさん
08/03/10 10:17:26 nD3TpBhG
ローカルで定型処理に VBScript を使っているのですが,
デバッガとしてフリーで使えるものって何かありませんでしょうか?
たとえばどれかの Express Edition とか.
職場では Visual Studio 2005 Professional Edition を使って
いるのですが,自宅でも作業がしたくって.
93:nobodyさん
08/03/12 22:41:47
URLリンク(www.microsoft.com)
をインストールして、cscript.exeやwscript.exeに//Dオプションを付けて
スクリプトを実行すればデバッガが使用可能になりますよ
94:nobodyさん
08/05/25 01:09:26 uDPNiz6J
JavaScript でJISエンコードが可能な、escape() 関数ライブラリ
URLリンク(nurucom-archives.hp.infoseek.co.jp)
但しサーバー運用に向いているかは未確認w
(負荷とか)