测试环境为
windows XP 专业版 SP2,暂时发现代码着色方面有Bug,虽然已有解决方法,不过由于代码量的原因(用记事本写代码真的很恼火),暂时未纠正,另外预计将来加入自动完成等功能。
8 C4 s0 y0 u* i4 K- L ^
ps:利用VBS脚本+DHTML,主要功能由正则表达式+wmic来完成,代码需保存为HTA类型的文件,当然也可以更改为纯粹的VBS脚本,不过那样效率低多了,而且代码更复杂。
8 S$ S, j; x$ Y
CODE: [Copy to clipboard]
; v4 {0 I( n F0 r& X1 Z/ s代码编辑器--------
中国DOS联盟脚本版专用
5 K ], U' o- J c' a$ ?9 k
. n1 g8 M4 Z2 t% }2 {'*******************************************************************'
/ `1 H, V8 M' z( {) B! d; q'脚本开始
" Y# _8 N8 q6 B) K$ R7 F! `2 A
'*******************************************************************'
! } _2 Y, {2 [6 F/ [
Set shell=CreateObject("WScript.Shell")
- S/ U) q/ t7 M8 s0 c
Set fso=CreateObject("Scripting.FileSystemObject")
9 {* ^9 k8 `/ R'*******************************************************************'
+ ?+ v" |1 g1 W) h) z8 N
'遍历本地所有类型文件
5 z5 |/ R c; \! F
'*******************************************************************'
+ w6 T! H _- g) _4 U9 s) y, j; [
Sub OptionAdd(fExt)
6 T6 Q* U) ]( Y! D- ?
str = ""
7 p8 E# H# S5 g, Y4 Q( ZSet objDataFiles = GetObject("winmgmts:" _
3 B$ Q6 `; Q3 F6 o4 R & "{impersonationLevel=impersonate}!\\.\root\cimv2")
+ Z3 M' V' {$ i. y4 t
Set colFiles = objDataFiles. _
' M5 l4 n0 Y" g: v! [ ExecQuery("Select * from CIM_DataFile where extension = '" & fExt & "'")
0 f1 O& Z. I; y$ A3 R) m. y
For Each objFile in colFiles
5 }' g3 L3 F8 j- s& D. N0 B2 D str = str & "" & _
k* K$ |0 X( k objFile.name & ""
& w7 L/ b. E$ m2 C3 \: Q: Pnext
0 Z9 }6 H. [$ }' F5 q8 d str = "本地脚本文件:" & str & ""
7 i6 V) P5 S4 k; _% m1 M forOption.innerHTML = str
$ I( ]$ R6 Z3 E$ P' `" q7 z: t! \; H$ |& S
end Sub
; i5 V; l# _: x }% V7 B% s! ~'*******************************************************************'
" p0 x1 c5 V& f/ a" t4 U# B7 o'颜色转换
. U" `* ^2 b1 O; N9 }$ k
'*******************************************************************'
) q0 K }7 w9 G$ [, K8 [7 m6 |& xSub ChangeColor
$ X; t' Q2 E0 s8 t& E if cxs.value = "vbs" then
( a6 K" r+ ?( r% t, {3 _ WinMain.innerHTML = ChangeVBS(WinMain.innerText)
+ M/ C; B4 }% J9 u h7 `
else 'CMD脚本
/ K/ q! p2 I0 H6 ?5 J2 g& J8 G WinMain.innerHTML = ChangeCMD(WinMain.innerText)
% E/ g9 g" z8 Q1 u5 b5 \4 Y end if
& }+ [$ K* {7 Y, F' ^end Sub
" \/ W- a- O! [8 l( j'*******************************************************************'
# [, S/ G9 m. K, ]0 e'VBS转换模块
) r1 x! |3 X' k* [% p3 j8 N/ F'*******************************************************************'
+ F& E d0 i3 B W
Function ChangeVBS(sText)
: Q/ C% w. c3 C( k X; }" U* W Set re=new RegExp
. x2 G" ]4 }6 Q- b" A( H
re.IgnoreCase =true
! e! O1 H; B' t! g3 O
re.Global=true
# l9 t8 M8 w# {8 F
'注释转换
4 o9 r* W; B2 y9 S2 \6 P* [
re.Pattern = "(\'.*)\r\n"
! R8 K/ ]# |! |! E
sText = re.Replace(sText,"$1
y( [3 h3 c6 j
")
, o- O1 B2 p7 s E2 \7 A j+ E'转换符号为[蓝色]
: {& _5 @$ d n. K" m- S* Q
re.Pattern = "(\(|\)|\&|\+|\-|\*|\%|\:|\;|\.|\""" & ")"
8 v( `& O( m: }9 R$ B! Q
sText = re.Replace(sText,"$1")
+ H8 p* w: t; Z( F! p sText = "" & _
/ _3 U# K, ?2 @, s9 E" e "" & sText & ""
# J4 O: L2 B5 h, ~0 T: u sText = Replace(sText,chr(13) & chr (10) ," ")
3 J" I" q% o O$ D/ Z'转换保留字为[蓝色]
6 f- x7 _+ {( A2 V' P# Z
re.Pattern="(\bAnd\b|\bByRef\b|\bByVal\b|\bCall\b" & _
9 d+ ?3 R* {% C
"|\bCase\b|\bClass\b|\bConst\b|\bDim\b|\bDo\b" & _
) T# i2 d# M, Z: I" o k/ r" a "|\bEach\b|\bElse\b|\bElseIf\b|\bEmpty\b|\bEnd\b" & _
6 z! n, i/ z, B "|\bEqv\b|\bErase\b|\bError\b|\bExit\b|\bExplicit\b" & _
! c, h' h$ g; U" h
"|\bFalse\b|\bFor\b|\bFunction\b|\bGet\b|\bIf\b|\bImp\b" & _
6 g( d, Y) K/ x ^( ~* z- l "|\bIn\b|\bIs\b|\bLet\b|\bLoop\b|\bMod\b|\bNext\b|\bNot\b" & _
( f7 M# C/ b5 b1 M5 k3 d
"|\bNothing\b|\bNull\b|\bOn\b|\bOption\b|\bOr\b|\bPrivate\b" & _
3 P: Y0 d7 T/ V3 m* H9 N
"|\bProperty\b|\bPublic\b|\bRandomize\b|\bReDim\b|\bRem\b" & _
9 q) E2 R) s1 \& X- g
"|\bResume\b|\bSelect\b|\bSet\b|\bStep\b|\bSub\b|\bThen\b" & _
3 _- C& `! j, l2 M/ h* ?
"|\bTo\b|\bTrue\b|\bUntil\b|\bWend\b|\bWhile\b|\bXor\b|Vb[a-z]*)"
# P- m& L4 f8 C! ?$ T
sText=re.Replace(sText,"$1")
# ^% r/ f/ W) d. S$ S# X" G) ['转换函数和对象为[红色]
- w7 A" }+ S" F, _/ |& J
re.Pattern="(\bAnchor\b|\bArray\b|\bAsc\b|\bAtn\b" & _
! @; `; C) u1 ]- d8 M "|\bCBool\b|\bCByte\b|\bCCur\b|\bCDate\b|\bCDbl\b" & _
$ y) F! E6 h# T$ X! d "|\bChr\b|\bCInt\b|\bCLng\b|\bCos\b|\bCreateObject\b" & _
0 ?2 x; C2 f" h7 O, q "|\bCSng\b|\bCStr\b|\bDate\b|\bDateAdd\b|\bDateDiff\b" & _
, ^. a- W1 Y7 [. n/ M3 c1 K4 S
"|\bDatePart\b|\bDateSerial\b|\bDateValue\b|\bDay\b" & _
- J! ~* G" Q# a: T/ ^
"|\bDictionary\b|\bDocument\b|\bElement\b|\bErr\b|\bExp\b" & _
( K6 w1 Q# E3 p7 K% q! ^ "|\bFileSystemObject \b|\bFilter\b|\bFix\b|\bInt\b|\bForm\b" & _
: q8 L( _# Z, h7 b. X4 @% U "|\bFormatCurrency\b|\bFormatDateTime\b|\bFormatNumber\b" & _
; Z$ s7 _9 N; ]6 H3 V "|\bFormatPercent\b|\bGetObject\b|\bHex\b|\bHistory\b|\bHour\b" & _
: g; {3 j; \4 Y( u "|\bInputBox\b|\bInStr\b|\bInstrRev\b|\bIsArray\b|\bIsDate\b" & _
' M" Z f9 I o$ f- j "|\bIsEmpty\b|\bIsNull\b|\bIsNumeric\b|\bIsObject\b|\bJoin\b" & _
4 Z7 X5 |5 @* y1 C5 J2 Y% R* @' x "|\bLBound\b|\bLCase\b|\bLeft\b|\bLen\b|\bLink\b|\bLoadPicture\b" & _
% m- U% |$ g: _: v/ ^4 ]) h7 h
"|\bLocation\b|\bLog\b|\bLTrim\b|\bRTrim\b|\bTrim\b|\bMid\b" & _
& U. B. K$ q% F7 N$ |. z! g "|\bMinute\b|\bMonth\b|\bMonthName\b|\bMsgBox\b|\bNavigator\b" & _
! ?2 O, p, R: j6 I9 ^# B
"|\bNow\b|\bOct\b|\bReplace\b|\bRight\b|\bRnd\b|\bRound\b" & _
3 p* n; t( L: e+ A, Q% G, g "|\bScriptEngine\b|\bScriptEngineBuildVersion\b" & _
\& p" i0 N' a
"|\bScriptEngineMajorVersion\b|\bScriptEngineMinorVersion\b" & _
% y8 r! S! u0 A9 a r "|\bSecond\b|\bSgn\b|\bSin\b|\bSpace\b|\bSplit\b|\bSqr\b" & _
& ?% s; i1 t3 R8 x2 X4 Z0 I4 q! ~
"|\bStrComp\b|\bString\b|\bStrReverse\b|\bTan\b|\bTime\b" & _
: Y( i) A/ P0 m) z "|\bTextStream\b|\bTimeSerial\b|\bTimeValue\b|\bTypeName\b" & _
8 F0 J* r m& l "|\bUBound\b|\bUCase\b|\bVarType\b|\bWeekday\b|\bWeekDayName\b" & _
# z! Q D, g% e( `' \( V6 w
"|\bWindow\b|\bYear\b|\bWscript\b)"
1 _: H8 ?3 L1 c+ D sText=re.Replace(sText,"$1")
+ V: l( Y" ]- {1 u' i
ChangeVBS = sText
+ h K3 h! m# R& J5 J7 k* N8 aend Function
$ @% G3 V0 }, j( x1 m# o
'*******************************************************************'
2 {8 b0 a4 ~3 n$ }) Q( H# O
'CMD转换模块
' c. H1 e$ v, f2 ^+ H5 r0 S- u'*******************************************************************'
6 C7 d4 \" \: H' @
Function ChangeCMD(sText)
' R5 Q/ v0 f; p/ a' A
( \. x7 g5 m+ z v Set re=new RegExp
- e- m* I% f& Q C5 Y" U% v$ s
re.IgnoreCase =true
! J" X' q* [) z
re.Global=true
# _# _ H/ f# w'等号转换
2 k/ {, z8 x' P/ n8 { 'sText = Replace(sText,"/","/")
h0 u* j; }+ ^; d4 n re.Pattern = "(\%|\=|\/[a-z]*\b|\>|\$1")
, c( ], w+ d$ \) f6 f' Z'注释转换
' F' Y- q8 Q: _' D2 W# K% v1 j/ X. o& | re.Pattern = "(Rem\b.*\r\n|\bRem\b.*)"
2 Y" R, ~3 k! J8 `6 |: g1 L sText = re.Replace(sText,"$1")
1 l- @1 C+ P! q- E3 p f9 {
'改变符号的颜色
0 Y! m- P0 Z2 U. y; A% ^
re.Pattern = "(\(|\)|\&|\+|\-|\*|\;|\""" & ")"
7 X! m* d' D# s' F- u/ ^$ m, J7 W3 G sText = re.Replace(sText,"$1")
6 }( c# X& d/ Q. F
'改变所有命令的颜色
. f. C% \! u% ^ re.Pattern = "(\bShare\b|\bSetver\b|\bNlsfunc\b|\bMem\b|\bLh\b" & _
% I. C+ M* N/ S5 P! d O3 {# t% E) G
"|\bLoadhigh\b|\bloadfix\b|\bGraphics\b|\bForcedos\b" & _
" _# f- j3 X& k9 } "|\bFastopen\b|\bExe2bin\b|\bEdlin\b|\bEdlin\b|\bEdit\b" & _
7 W' T7 v& E! }$ I
"|\bDebug\b|\bDebug\b|\bAppend\b|\bSwitches\b|\bStacks\b" & _
* W6 p. j R: } "|\bShell\b|\bNtcmdprompt\b|\bLastdrive\b|\bInstall\b" & _
S* d0 y7 T4 R7 @3 D5 } "|\bFiles\b|\bFcbs\b|\bEchoconfig\b|\bDriveparm\b|\bDosonly\b" & _
$ a" \+ [1 b8 E# E
"|\bDos\b|\bDevicehigh\b|\bDevice\b|\bCountry\b|\bBuffers\b" & _
0 E1 o2 A8 `6 s: g) ^% | "|\bXcopy\b|\bWMIC\b|\bWinnt32\b|\bWinnt\b|\bW32tm\b" & _
% H1 y6 ~" f8 G6 ~- ?; n "|\bVssadmin\b|\bVol\b|\bVerify\b|\bVer\b|\bUnlodctr\b" & _
- d% c) i4 ?& Z% @0 I* t/ I5 v- g
"|\bTypeperf\b|\bType\b|\bTree\b|\bTracert\b|\bTracerpt\b" & _
7 U: A) Q8 o! U6 n
"|\bTitle\b|\bTime\b|\bTftp\b|\bTelnet\b|\bTcmsetup\b" & _
" M0 D1 D9 I1 i- }1 i" e* a! N
"|\bTasklist\b|\bTaskkill\b|\bSfc\b|\bSysteminfo\b|\bSubst\b" & _
7 }/ q: V" k4 N
"|\bStart\b|\bSort\b|\bShutdown\b|\bShift\b|\bSetlocal\b|\bSet\b" & _
3 {) ~8 X# U" n! d5 T. _2 e* Y7 X
"|\bSecedit\b|\bSchtasks\b|\bSc\b|\bRunas\b|\bRsm\b|\bRsh\b" & _
4 G& O$ S+ q B, ]) g! c+ l "|\bRoute\b|\bRmdir\b|\bRexec\b|\bReset\b|\bReplace\b|\bRename\b" & _
3 K: L% g1 r$ Y6 w "|\bRelog\b|\bRegsvr32\b|\bReg\b|\bRecover\b|\bRcp\b|\bRasdial\b" & _
/ U2 U" k* O( B1 {% s1 x/ t
"|\bQuery\b|\bPushd\b|\bPrompt\b|\bPrnqctl\b|\bPrnport\b" & _
1 h) a8 C4 }, T" E0 c, k
"|\bPrnmngr\b|\bPrnjobs\b|\bPrndrvr\b|\bPrncnfg\b|\bPrint\b" & _
; h. k6 D8 t& a, i5 k2 v' c5 F "|\bPopd\b|\bPing\b|\bPerfmon\b|\bPentnt\b|\bPbadmin\b|\bPause\b" & _
3 B- q ^. m1 [2 u5 K" l
"|\bPathping\b|\bPath\b|\bPagefileconfig\b|\bOpenfiles\b|\bNtsd\b" & _
+ Y* y0 W. i' k7 F9 I6 _7 P "|\bNtcmdprompt\b|\bNtbackup\b|\bNslookup\b|\bNetstat\b|\bNetsh\b" & _
1 j4 |- c% E" q1 r
"|\bNet\b|\bNbtstat\b|\bMsinfo32\b|\bMsiexec\b|\bMove\b" & _
/ A F1 ]/ t0 M3 r6 \! n
"|\bMountvol\b|\bMore\b|\bMode\b|\bMmc\b|\bMd\b|\bMkdir\b" & _
4 i: x" k+ V2 i8 S0 `, x
"|\bMacfile\b|\bLpr\b|\bLpq\b|\bLogman\b|\bLodctr\b|\bLabel\b" & _
0 a2 l* [$ W$ s( f/ M- L "|\bIrftp\b|\bIpxroute\b|\bIpseccmd\b|\bIpconfig\b|\bIf\b" & _
8 B, f2 t: s/ ~' E; i
"|\bHostname\b|\bHelpctr\b|\bHelp\b|\bGraftabl\b|\bGpupdate\b" & _
/ f& n4 G& ]: ]* B2 t "|\bGpresult\b|\bGoto\b|\bGetmac\b|\bFtype\b|\bFtp\b|\bFsutil\b" & _
3 `/ d& k& ? J4 H "|\bFormat\b|\bFor\b|\bFlattemp\b|\bFinger\b|\bFindstr\b|\bFind\b" & _
: w3 {0 \2 y4 I e. U
"|\bFc\b|\bExpand\b|\bExit\b|\bEvntcmd\b|\bEventtriggers\b" & _
% S* p" w% y9 l, J0 }. O
"|\bEventquery\b|\bEventcreate\b|\bEndlocal\b|\bEcho\b" & _
: ~3 [- A& |# v "|\bDriverquery\b|\bDoskey\b|\bDiskPart\b|\bDiskcopy\b" & _
7 G N+ }7 Q+ H% ?0 M% a9 w "|\bDiskcomp\b|\bDir\b|\bDel\b|\bDefrag\b|\bDate\b|\bCScript\b" & _
1 E) [ V6 X i) n$ S "|\bCprofile\b|\bCopy\b|\bConvert\b|\bCompact\b|\bComp\b" & _
2 I( X" u) l, F# V! ?( Q
"|\bCmstp\b|\bCmd\b|\bCls\b|\bCipher\b|\bChkntfs\b|\bChkdsk\b" & _
7 O, v3 B) K, T6 {
"|\bChdir\b|\bChcp\b|\bChange\b|\bCall\b|\bCacls\b|\bBreak\b" & _
* F$ w/ f5 a( Y5 g8 K) Z
"|\bBootcfg\b|\bAttrib\b|\bAtmadm\b|\bAt\b|\bAssoc\b|\bArp\b)"
]1 L. F5 r3 \9 F: T! K3 b& Y3 O% O; j
sText=re.Replace(sText,"$1")
2 |4 `0 P( S9 J& f sText = "" & _
i5 J0 o2 H9 R/ d7 E& k "" & sText & ""
) ]+ }! T$ u, D! K$ ?9 S
sText = Replace(sText,chr(13) & chr (10) ," ")
6 ?+ b! s1 f. H% b- t ChangeCMD = sText
. A: S9 I' w, h& }8 O! d5 V& `3 @: Q- Vend Function
% A& Y4 {# m: c& k6 h* v$ d9 O7 ~
'*******************************************************************'
- d' C/ i4 V- K% R'帮助窗口
3 L( j2 [. l/ V3 z0 a% }/ I# U'*******************************************************************'
Y8 ^# R0 t$ |. L2 ~
set oPopup = window.createPopup
* D7 N u6 S6 \( s' vsub HelpWindow
; A. Q: n) s, u2 P) [/ d! e( B if usehelp.checked then
8 S1 w. j- h9 d( J Q set oPopBody = oPopup.document.body
( R S4 @0 k& K Y
oPopBody.style.backgroundColor = "lightyellow"
/ A* f- h/ X7 @5 c oPopBody.style.border = "solid black 1px"
6 r" [' D5 f, m$ F i6 d oPopBody.innerHTML = "帮助功能未完成,取消帮助见右下角"
4 D* w2 r+ g' X( w7 A9 m$ S oPopup.show WinMain.offsetleft, _
: h9 ~" z9 ]9 E( T, m- \ WinMain.offsettop + WinMain.offsetheight - 20, _
; V3 ]: ~: {: x# H' y4 x6 \ v; P
WinMain.offsetWidth, 20, document.body
9 p, F& [1 K& Z2 O! q# N& J6 g+ c
end if
& G7 ?4 W3 s7 _4 R( L- Send sub
9 c: N% d; h, ~: z. n
'*******************************************************************'
9 ?$ B9 @$ g) z
'运行代码
4 x2 c0 w! D- S2 e& k# E* s
'*******************************************************************'
( `( H4 N$ b& n# D0 m0 q; d
Sub RunCode
7 ^3 U4 p: S& j) Z% z
if cxs.value = "vbs" then
. N# P q) }# I p
tmpfile = "temp_script.vbs"
6 [, p( D I+ O str = tmpfile
! ?- ?$ i9 Y: U8 f else
9 C1 c }8 Q ] n0 u tmpfile = "temp_script.bat"
8 h. }2 j9 L7 W' i9 m8 ~ str = "cmd /k " & tmpfile
# s& ?7 L2 D$ J
end if
5 V, c; B9 B' b; T
Set file = fso.OpenTextFile(tmpdir & tmpfile,2,True)
; \1 K" c$ V. d% }- w
file.Write WinMain.innerText
4 P% ^& s! r3 D, j* M
file.Close
5 d0 I) o3 D8 j! o: w2 R# o
shell.Run str
5 x5 H5 f; R2 t( h/ C0 c4 L+ B" n
End Sub
+ q' O B h T8 x7 Q'*******************************************************************'
2 O, H8 G7 f. e- n'保存文件
9 E6 x$ W4 C: s8 H, J: O3 A6 ]
'*******************************************************************'
0 z6 ~) o! I' y1 eSub SaveFile
. T: x- \* k$ h
Set objDialog = CreateObject("SAFRCFileDlg.FileSave")
% ^, b5 `' M7 o( r/ Z, U4 \ objDialog.FileName = Cstr(date)
1 H) S. s0 w' l" _( t9 j if cxs.value = 1 then
: Y1 u8 c, W( }/ `# A objDialog.FileType = ".vbs"
- m) i8 P% s y
else
7 U3 y: l- Q$ ^ Q+ K& ]0 w objDialog.FileType = ".bat"
& }* S- d( o6 I4 j# e& Z
end if
' Q* F: x1 h# J; a! c6 T intReturn = objDialog.OpenFileSaveDlg
, z. X. I; @. J
If intReturn Then
" |, [0 E3 L3 Y% D/ v+ W* C0 ~ Set objFile = fso.CreateTextFile( _
& Y% h1 i9 [, _1 m) y- T objDialog.FileName & objDialog.FileType)
}" F# g( ? j. Q; l
objFile.WriteLine WinMain.innerText
, t. a- i* e8 H objFile.Close
7 K3 ~) o8 O+ i& t& z7 e
end if
0 _+ ~8 r8 b+ W/ ^' C. @8 w, p
end Sub
9 X7 u! z7 @" P* ~' ?. w7 S7 A
'*******************************************************************'
; _+ S4 Z2 Q1 k9 d, I0 [6 G' B3 I'打开文件
: K+ c; l. w" q3 e! S: G3 z'*******************************************************************'
! l$ M5 c& r$ h2 _, C
Sub OpenFile
4 p! s% F, ]3 G8 L" g6 P8 r
Set objDialog = CreateObject("UserAccounts.CommonDialog")
( V6 W" v* f8 p
objDialog.Filter = "bat文件|*.bat;*.cmd|vbs 文件|*.vbs|所有文件|*.*"
5 a( W: d. P: K' E
'objDialog.MaxFileSize = 10000
3 w: k% C2 z o" z* p, Y( U; K3 L 'objDialog.FilterIndex = 1
) t+ p7 E+ N% B9 ^; L, z 'objDialog.InitialDir = ""
, {1 g5 }6 h0 W, b8 p
objDialog.ShowOpen
# P$ C2 j$ i, s& f
'strLoadFile = objDialog.FileName
( S' I* u! S0 @; \0 s4 x( H
If len(trim(objDialog.FileName)) = 0 Then Exit Sub
# y2 S% y: R% y0 I( \Set objFile = fso.OpenTextFile(objDialog.FileName,1,True)
. h% R1 @( d# P! m, b3 n WinMain.innerText = objFile.ReadAll
7 U/ u) \* ^5 r# ?3 _7 a
end Sub
, E% R* F' d4 y% H" v# q, v'*******************************************************************'
' h% n' ~' n7 A, r# e'启动时自动移动到屏幕中心
. x3 c0 S9 ~7 z- z% R2 `3 ?
'*******************************************************************'
0 T1 l4 n& c/ y% v7 N$ PSub Window_OnLoad()
) m1 Y( s* i% d% D# f0 ? Q self.ResizeTo 1,1
_' [; r: h) k; o( O- g" q
self.MoveTo 300,300
/ s/ ]: S. q5 X7 P; k# T- t
" Y( {/ L8 X+ n '显示一个窗口
0 T }8 ~9 v4 K4 V" | Set objWindow = window.Open("about:blank","ProgressWindow","height=15,width=250,left=300,top=300,status=no,titlebar=no,toolbar=no,menubar=no,location=no,scrollbars=no")
! X3 K! [" n1 z9 u( _. G$ S With objWindow
- a- n& Z. R6 \, R .Focus()
" C' ^- U: [; ^6 E# y( z |
.ResizeTo 250,15
# ^) l$ x+ H7 J, G- a% n
.document.body.style.f
0 a7 r+ H8 O. v$ B! ?& |
.document.body.style.f
0 @' `, W# d4 P
.document.writeln "正在搜索本地文件...."
* ^: a1 n. R. h& J4 t$ A5 t' ] .document.title = "请稍侯..."
/ \2 L3 c5 z; ^- u8 N( B/ C2 x' s
.document.body.style.backgroundColor = "buttonface"
" E @- p) M9 C, d0 ]* C
.document.body.style.borderStyle = "none"
' {9 v& e7 K2 _" V6 B& {* B/ m .document.body.style.marginTop = 15
6 R5 t- h" g! ?+ t3 d$ c7 u end With
% W3 {* s. k8 ^, r'如果
系统并非XP,IE不为6.0版本则退出
) d5 T9 H& @3 j3 Z* b6 V
strWindowsVer = shell.RegRead _
; \/ F1 I4 X) ?" ?; \
("HKLM\SOFTWARE\
Microsoft\Windows NT\CurrentVersion\ProductName")
?- d! B x0 ?2 g# [* g# |
strIeVer = shell.RegRead _
1 H8 W( B; D$ k: k
("HKLM\SOFTWARE\Microsoft\Internet Explorer\Version")
& c3 r6 z+ g; j# X9 K
if strWindowsVer "Microsoft Windows XP" or _
, e9 }5 a7 H0 I# p1 t4 I1 K
left(strIeVer,3) "6.0" then
- f7 n& [' R3 J intFlag = msgbox("
操作系统不是XP或者IE版本低于6.0,是否退出?",1)
6 ?* L$ k( T' F
if intFlag = 1 then
& K" j5 i7 e# V; l4 f self.close
4 f4 A" E' Z: l$ I else
9 Z% B7 d, {3 X* g- f8 D6 Z2 H1 W( y. [/ Y
Began
! Z5 d, m# B* ?3 [7 |7 |( o end if
' Q, E7 ~- C$ t Y
else
% }/ [2 A6 x9 Y, {
Began
0 [6 w0 r% }' d
end if
W) S/ W" f+ f( y! w" o/ |# y q objWindow.Close
$ e) i" n; d: i
End Sub
% T, v, X" S' A0 d3 c7 y* YSub Began
0 g$ d+ Q9 y1 u OptionAdd "bat"
7 |& h7 ^( _, x" m7 H, ]
intLeft = (document.parentwindow.screen.availwidth - 800) / 2
6 _% u/ \; j' [' @2 D* I4 o
intTop = (document.parentwindow.screen.availheight - 600) / 2
- M( q: Q9 D1 H0 s0 P0 k0 n window.resizeTo 800,650
. ^: w5 ~8 Q6 q( a9 n8 v& L, l+ T window.moveTo intLeft, intTop
1 a) n* L0 k% v" Oend Sub
+ q% E) ?( |' N6 z$ H% ^! H: E'*******************************************************************'
% `9 O4 S) Q: f( ~'搜索本地脚本
7 D6 ^9 O% v8 B4 X% I'*******************************************************************'
8 }' g+ b- ]! V6 Q% j, S
Sub TestSub
' j$ ?/ [$ H! X! f: K Set objFile = fso.OpenTextFile(objOption.value,1,True)
, K. K( o9 ?7 i- t( D+ } WinMain.innerText = objFile.ReadAll
8 j$ T a0 ^- g$ z
end Sub
; N2 K* B3 d! v5 k: O1 }0 o6 T
'*******************************************************************'
) a/ m. i+ L$ \5 N
'擦屁股
* s, |+ p( r k
'*******************************************************************'
' ^4 R) T; o3 U; U4 K# RSub Window_OnBeforeUnload()
5 T+ H6 }! l& r* C) P On Error Resume Next
! L! t+ C$ T9 I j( S- P1 _
fso.DeleteFile "temp_script.vbs",True
6 z! M% i3 a% a$ t( z fso.DeleteFile "temp_script.bat",True
; Q* m; c! L& D$ n* ? Set shell = Nothing
/ K2 t# Y" G, t$ n n) { Set fso = Nothing
* o: A! u; T, Y' P0 e
set oPopup= Nothing
0 r( R) [2 W6 O9 o5 K
End Sub
" U8 w# r; s) z5 c6 G'*******************************************************************'
+ z9 H7 p# _. W( G% S9 ]1 J2 {7 `'清空代码
1 B0 o+ g1 ?3 o' j3 V'*******************************************************************'
% ^* `1 a/ H: I% o; i( F9 X
Sub Clear
. f6 y$ N8 [% @) a WinMain.innerText = ""
$ b, M* X% g r# B, D4 _4 B 'WinMain.innerHTML = ""
5 U% L$ W* U: `0 Y5 ~, g. p/ J
end Sub
% d4 F9 U1 i0 D, _/ }, o% |) u) n'*******************************************************************'
# w0 I$ q1 A- h0 w( c* k'复制到剪贴板
8 M+ ?. f) q/ v) q
'*******************************************************************'
e% i* ^9 a2 f" ?. @
Sub ClipBoard
2 P' q. @% Y5 n0 O window.clipboardData.SetData "text", WinMain.innerHTML
3 U% w' e4 W; ]) _! K& S
end Sub
$ N$ U+ Q& k7 u, [1 J! x/ ?3 W$ R6 D1 Y* { padding:0; border:0; overflow:hidden; font:16px Arial;}
5 c% b8 |3 d' W- K' C1 R3 D- W
html,body { height:100%; margin:0;}
* {7 |9 G8 K+ V _/ m8 D2 M* _#box_2 { height:100%; background:#ccc;}