環境によるかも知れませんが、解凍が上手く出来ないようです。
圧縮に関しても、空の圧縮を作成するとツールによっては不正なファイルとして扱われ使用できない場合があるようです。
WSH
'===============================
'プログラムが終了するまで待つ
'-----------------------------------
'特徴
'バッチプログラムでも正常に動作する。
'===============================
Const NORMAL_WINDOW = 1 '(0-6 http://msdn.microsoft.com/ja-jp/library/x91s3x5x.aspxを参照)
strComputer = "。"
strCommand = "notepad.exe"
'strCommand = "C:\ Users \ ntaka \ Documents \ test.bat"
Set objWMIService = GetObject( "winmgmts:" _
& "{impersonationLevel =偽装}!\\"&strComputer& "\ root \ cimv2")
Set objStartup = objWMIService.Get( "Win32_ProcessStartup")
Set objConfig = objStartup.SpawnInstance_
objConfig.ShowWindow = NORMAL_WINDOW
Set objProcess = objWMIService.Get( "Win32_Process")
Set colMonitorProcess = objWMIService.ExecNotificationQuery _
( "SELECT * FROM __InstanceDeletionEvent" _
& "1 WHERE TargetInstance ISA 'Win32_Process'内)
intReturn = objProcess.Create _
(strCommand、Null、objConfig、intProcessID)
Err.Number = 0の場合
'Set objExecCmd = objWshShell.Exec(strCmdLine)
Err.Number = 0の場合
WScript.Echo strCommand& "を起動しました。"
Set colMonitorProcess = objWMIService.ExecNotificationQuery _
( "SELECT * FROM __InstanceDeletionEvent"&_
"1つのWHERE TargetInstance ISA 'Win32_Process'"&_
"AND TargetInstance.ProcessId = '"&intProcessID& "'"))
objLatestEvent = colMonitorProcess.NextEventを設定します。
'strProcDeleted =今すぐ
'Wscript.Echo VbCrLf& "プロセス名:"&_
'objLatestEvent.TargetInstance.Name
'Wscript.Echo "プロセスID:"&objLatestEvent.TargetInstance.ProcessId
'1秒待ってみる
WScript.Sleep(1000)
Loop While objLatestEvent.TargetInstance.Name = ""
その他
WScript.Echo "エラ:"&Err.Description
終了の場合
その他
WScript.Echo "エラ:"&Err.Description
終了の場合
WScript.Echo strCommand& "は終了しました。"
'-----------------------------
' 動的配列
'-----------------------------
Dim mytxt1()
strType ="R"
If strType ="L" Then
strIn = "1,2,3,4,5"
'左から切り出し
Do
count = count + 1
ReDim Preserve mytxt1(count + 1) '動的に配列拡張
comma = InStr(strIn, ",")
If comma <> 0 Then mytxt1(count) = Left(strIn, comma - 1)
If comma <> 0 Then strIn = Mid(strIn, InStr(strIn, ",") + 1, _
Len(strIn) - InStr(strIn, ","))
If comma = 0 Then mytxt1(count) = strIn
If comma = 0 Then Exit Do
Loop
End If
If strType ="R" Then
strIn = "1,2,3,4,5"
' 右から切り出し
Do
count = count + 1
ReDim Preserve mytxt1(count + 1) '動的に配列拡張
mytxt1(count) = Right(strIn, Len(strIn) - InStrRev(strIn, ","))
strIn = Left(strIn, InStrRev(strIn, ",") - 1)
mytxt1(count + 1) = Right(strIn, Len(strIn) - InStrRev(strIn, ","))
If InStrRev(strIn, ",") = 0 Then Exit Do
Loop
End If
msgbox "mytxt1(1)=" & mytxt1(1) &vbCR &_
"mytxt1(2)=" & mytxt1(2) &vbCR &_
"mytxt1(3)=" & mytxt1(3) &vbCR &_
"mytxt1(4)=" & mytxt1(4) &vbCR &_
"mytxt1(5)=" & mytxt1(5)
ADODB.Streamオブジェクトを利用してファイルの読み込む(UTF-8 など)
■クリックボード編集 テキストのみ
=CreateObject("Forms.Form.1") は Officeがインストール & 32ビット版で動かす必要あり
----------------------------------------------------------------------------------------------------------------------------------
sendkeysで「ctrl+A」を押せない ⇒ Excel 経由でkeybd_event を使用してをキーをシミュレートする
JScript で BOM なし utf-8 ファイルを出力
URLを抜き出すには
patrn ="(https?|ftp)(:\/\/[a-zA-Z0-9;\/?:\@&=\+$,\-_\.!~*'\(\)%#]+)"
Function RegExpTest(patrn, strng)
Dim regEx, Match, Matches ,RetStr ' 変数を作成します。
Set regEx = New RegExp ' 正規表現を作成します。
regEx.Pattern = patrn ' パターンを設定します。
regEx.IgnoreCase = True ' 大文字と小文字を区別しないように設定します。
regEx.Global = True ' 文字列全体を検索するように設定します。
Set Matches = regEx.Execute(strng) ' 検索を実行します。
For Each Match in Matches ' Matches コレクションに対して繰り返し処理を行います。
RetStr = RetStr & "一致する文字列が見つかった位置は、"
RetStr = RetStr & Match.FirstIndex & " です。一致した文字列は、"
RetStr = RetStr & Match.Value & " です。" & vbCRLF
Next
RegExpTest = RetStr
End Function