[撮影] 三日月と金星 > Z_ ̄∂
どーもボキです。

三日月と金星のコラボ。
もっとパリッと撮るにはどうしたら良いのだろう?
a0021757_21255754.jpg


[PR]
# by yozda | 2018-06-16 21:25 | カメラ | Trackback | Comments(0)
男の料理教室 > Z_ ̄∂
どーもボキです。

近くの公民館で男の料理教室に通い始めた。
1回/月の計6回。

先日の第一回目は前菜。
簡単でうまかった。

ピンクペッパー(ゆで卵にのっている赤い玉)は風味が良いね。
a0021757_11405333.jpg

a0021757_11405413.jpg

a0021757_11405533.jpg
a0021757_11451643.jpg


[PR]
# by yozda | 2018-06-16 11:39 | 暮らし | Trackback | Comments(0)
amiiboのドットマリオを購入した > Z_ ̄∂
どーもボキです。

amiiboのドットマリオ モダンカラー版が中古で安かったので買ってみた。
プチブロックに見慣れているから、縦長に伸びた印象。

a0021757_13010322.jpg


[PR]
# by yozda | 2018-05-27 12:59 | 物・モノ・もの | Trackback | Comments(0)
B’z 30th Year Exhibition “SCENES” 1988-2018 > Z_ ̄∂
どーもボキです。

前期(1988-2002) / 2018年4月1日(日)〜 5月6日(日)を見てきた。

シアターは見れず。イベント開催早々に予約ページ上に
「シアター鑑賞券は、前期分、後期分共に全て完売しました。当日券の扱いもございません」との掲示。

当日券の値段設定があるにもかかわらず「当日券の扱いもございません」となったことが理解できない。
楽しみにしていた分、この点は残念だった。
a0021757_08343436.jpg
会場前にて

a0021757_08350499.jpg
長蛇の列の先頭にあたる場所にて

退場時に通るのでそのときに撮影すると良い。
ちなみに、入場チケットはこの先で回収されるため、撮影したいならココで。

a0021757_08351694.jpg
待ち行列の雰囲気

10時~12時枠でチケットを確保していたのだが、この列。
入場まで40分も待った。当然、会場内は撮影禁止。
a0021757_08352530.jpg
グッズ売り場でのオークション販売?となっていたギターとハーブ。
ここは撮影OK。パンフだけ購入した。

オーディオガイダンスは初めて聴くエピソードもありオススメ。

パンフにはTAKの譜面は未掲載となっているものの、稲葉氏の病んだイラストは掲載されてる。
それが手元で見れるだけでも買いですよ。


[PR]
# by yozda | 2018-05-09 08:32 | カメラ | Trackback | Comments(0)
[撮影] 東京駅周辺 > Z_ ̄∂
どーもボキです。

東京駅近くを観光して来た。
a0021757_08205086.jpg

a0021757_08205344.jpg
丸ビル
a0021757_08205555.jpg

a0021757_08205776.jpg
旧丸ビルを支えていたらしい松柱
a0021757_08211071.jpg
a0021757_08223199.jpg

a0021757_08230764.jpg

a0021757_08240325.jpg

a0021757_08245849.jpg

a0021757_08255724.jpg
a0021757_08265417.jpg

a0021757_08270169.jpg

a0021757_08270940.jpg

a0021757_08271443.jpg

a0021757_08271956.jpg
a0021757_08283568.jpg

a0021757_08284776.jpg

a0021757_08285354.jpg

a0021757_08285812.jpg

a0021757_08290629.jpg


[PR]
# by yozda | 2018-05-09 08:19 | カメラ | Trackback | Comments(0)
[撮影] 大木切ります > Z_ ̄∂
どーもボキです。

よく見かける看板、本当に大木を切るみたい。
a0021757_19484108.jpg

a0021757_19484994.jpg

a0021757_19485642.jpg

a0021757_19491256.jpg

a0021757_19492213.jpg
a0021757_19494783.jpg
a0021757_19501549.jpg


[PR]
# by yozda | 2018-05-04 19:47 | カメラ | Trackback | Comments(3)
ダイソーのアイロンビーズでドットマリオを作成する > Z_ ̄∂
どーもボキです。

ダイソーでカラフルなアイロンビーズを見つけ、これだ!と思って作ったもの。

立体に作ったらどうだろう?などと構想を膨らませていたが、
そもそもなかなかくっつかず苦労した。立体に仕上げるなんてもってのほか。

マリオも裏面(本当は表にしたかった面)のみをアイロン掛けしておしまい。

どうやらダイソーのアイロンビーズは高さがバラバラになっているので、
アイロンがけが難しいみたいだ。
a0021757_09503192.jpg


[PR]
# by yozda | 2018-04-15 09:50 | 物・モノ・もの | Trackback | Comments(0)
[VBScript] ワイルドカードを指定したファイル名サーチ > Z_ ̄∂
どーもボキです。

ニュースで英会話のバックアップでは、記事ごとに再生ボタンの表示高さ(Y座標)が異なり、
クリック位置の記録&調整に苦労した。

mp3を上書き更新とすることで、サイズ≠0で録音の成功を判断させた。

このときファイル名が「yymmdd_記事タイトル」となるため「記事タイトル」を固定できない。

FileExistsや、GetFileは、ファイル名をそのものを指定しければならず、記事タイトルを把握しないかぎり利用できない。

そのため、ワイルドカードを指定できるCopyFileやMoveFileを応用したファイル名取得関数「SearchFile」を作成した。
重複しない名前のフォルダへMoveし、そのMove先のファイル名を取得するようにしている。なお、戻り値は最後に見つかったファイル名としている。

' 指定したファイル名が存在するか調べる(ワイルドカードOK)
' 戻り値:見つかったファイル名
Function SearchFile(DirectoryPath, FileName)
Dim objFS,f,r,dpth

r = ""
Set objFS = CreateObject("Scripting.FileSystemObject")
On Error Resume Next
dpth = DirectoryPath & Year(Now) & Month(Now) & Day(Now) & Hour(Now) & Minute(Now) & Second(Now)
objFS.CreateFolder(dpth) ' 重複しないフォルダを作成
objFS.MoveFile DirectoryPath & FileName, dpth &"\"
For Each f In objFS.GetFolder(dpth).Files
r = f.Name
Next
objFS.MoveFile dpth &"
\"& FileName, DirectoryPath
objFS.DeleteFolder dpth
On Error GoTo 0

SearchFile = r
End Function

[PR]
# by yozda | 2018-04-15 09:30 | プログラミング | Trackback | Comments(0)
[VBScript] 世界へ発信!英語術をバックアップする > Z_ ̄∂
どーもボキです。

[VBScript] ニュースで英会話をバックアップするを改良して、新番組である「世界へ発信!英語術」に対応させた。

必要な準備は、前回の記事を参考に。
UWSCの設定 > 指定ウィンドウ名を「 - 世界へ発信!英語術 - 」へ変更すること。

a0021757_11121905.png
実行イメージ

SetScriptHost("CScript")

Set objWS = CreateObject("WScript.Shell")
Set objFS = CreateObject("Scripting.FileSystemObject")

' 18.04.01~実行日までをループさせる
y0 = 2018
y1 = Year(Now)

If y1 = y0 Then
m0 = 4
m1 = Month(Now)
Else
m0 = 1
m1 = 12
End If

d0 = 1
If m0 = m1 Then
d1 = Day(Now)
Else
d1 = 31
End If

Arr_url = Array("s", "k", "w")
Arr_key = Array("_センテンス", "_キーワード", "_ボキャブラリー")

DPath = objWS.SpecialFolders("MyDocuments") &"\"
For yyyy = y0 To y1
For mm = m0 To m1
If Len(mm) = 1 Then mm = "
0" & mm
For dd = d0 To d1: Do
If Len(dd) = 1 Then dd = "
0" & dd

r = -1
On Error Resume Next
r = Weekday(yyyy &"
/" & mm & "/" & dd)
On Error GoTo 0
If (r < vbMonday) Or (r > vbFriday) Then Exit Do

' 保存フォルダ作成
DPath_Save = DPath & Right(yyyy,2) & mm &"
\"
If Not objFS.FolderExists(DPath_Save) Then objFS.CreateFolder(DPath_Save)

' 保存済みmp3のサイズチェック
yymmdd = Right(yyyy,2) & mm & dd
fname = SearchFile(DPath_Save, yymmdd & "
*.mp3")
If fname <> "
" Then
Set fmp3 = objFS.GetFile(DPath_Save & fname)
If fmp3.Size <> 0 Then Exit Do ' 保存済み
End If

' 本文テキスト&音声を録音
fname = ProcURL("
http://www.nhk.or.jp/snsenglish/news/n"& yymmdd &".html", DPath_Save, "")
If fname = "
" Then Exit Do ' 放送なし or アンコール放送

' 残りのテキストを保存
For i = 0 To UBound(Arr_url)
fname = SearchFile(DPath_Save, yymmdd & "
*" & Arr_key(i) & "*")
If fname = "
" Then
ProcURL "
http://www.nhk.or.jp/snsenglish/elearning/" & Arr_url(i) & yymmdd &".html", DPath_Save, fname & Arr_key(i)
End If
Next
Loop Until 1: Next
Next
Next
'===============================================================================
' URLを開く
' 戻り値:(番組が存在した場合)YYMMDD_タイトル
Function ProcURL(URL, FolderPath, PostFix)
Dim objWS: Set objWS = CreateObject("
WScript.Shell")
Dim i,s,key,fname,yymmdd,objIE,ieDoc

i = InStr(URL, "
.html")
yymmdd = Mid(URL, i-6,6) ' yymmddを取得

Do
Set objIE = CreateObject("
InternetExplorer.Application")
objIE.Navigate URL
Do While objIE.Busy: WScript.Sleep 1000: Loop ' ページ読み込み完了待ち

Set ieDoc = objIE.Document
s = ieDoc.Title
i = InStr(s,"
- 世界へ発信!英語術 - NHK") -1
If (i < 0) Or (InStr(s,"
アンコール放送") > 0) then Exit Do ' ⇒ 終了

fname = yymmdd &"
_"& Left(s,i)
If PostFix = "
" Then
dprintf fname

' VoiceRecorderの設定変更
rpth = "
HKCU\Software\Moo0\Moo0 VoiceRecorder\SaveData\MainWindow\CreationPath\"
key = rpth & "
FolderPath"
i = objWS.RegWrite(key, FolderPath, "
REG_SZ") ' 保存フォルダパス
key = rpth & "
FileName"
i = objWS.RegWrite(key, fname, "
REG_SZ") ' 保存ファイル名

' VoiceRecorder起動
objWS.Run "
"""& objWS.SpecialFolders("MyDocuments") &"\AudioRecorder 1.46\VoiceRecorder.exe"""
WScript.Sleep 1000
objWS.SendKeys "
^ " ' Rec Start
Do
objIE.Visible = True ' 再生(UWSC)
WScript.Sleep 10000
objIE.Visible = False
r = CreateObject("
WScript.Shell").PopUp("finish?",80,"now recording...",vbYesNo)
Loop Until (r = vbYes) Or (r = -1)
TerminateProcess("
VoiceRecorder.exe")
End If
' URLをmhtファイルで保存
On Error Resume Next
Set objCDO = CreateObject("
CDO.Message")
objCDO.CreateMHTMLBody(URL)
objCDO.BodyPart.GetStream.SaveToFile FolderPath & fname & PostFix & "
.mht", 2
Set objCDO = Nothing

Loop Until 1

objIE.Quit
Set objIE = Nothing

ProcURL = fname
End Function
'-------------------------------------------------------------------------------
' 指定したファイル名が存在するか調べる(ワイルドカードOK)
' 戻り値:見つかったファイル名
Function SearchFile(DirectoryPath, FileName)
Dim objFS,f,r,dpth

r = "
"
Set objFS = CreateObject("
Scripting.FileSystemObject")
On Error Resume Next
dpth = DirectoryPath & Year(Now) & Month(Now) & Day(Now) & Hour(Now) & Minute(Now) & Second(Now)
objFS.CreateFolder(dpth) ' 重複しないフォルダを作成
objFS.MoveFile DirectoryPath & FileName, dpth &"
\"
For Each f In objFS.GetFolder(dpth).Files
r = f.Name
Next
objFS.MoveFile dpth &"
\"& FileName, DirectoryPath
objFS.DeleteFolder dpth
On Error GoTo 0

SearchFile = r
End Function
' -------------------------------------------------------------------------------
' 指定した名前のプロセスを強制終了する
Sub TerminateProcess(ProcessName)
Dim objProcList,objProcess

Set objProcList = GetObject("
winmgmts:").InstancesOf("win32_process")
For Each objProcess In objProcList
If LCase(objProcess.Name) = LCase(ProcessName) Then
objProcess.Terminate
End If
Next
End Sub
' -------------------------------------------------------------------------------
' 実行ホストを切り替える
Sub SetScriptHost(HostName)
Dim i,s

If InStr(LCase(WSCript.FullName), LCase(HostName)) <> 0 Then Exit Sub

s = HostName & "
""" & WScript.ScriptFullName & """"
If WScript.Arguments.Count > 0 Then
For i = 0 To WScript.Arguments.Count -1
s = s &"
""" & WScript.Arguments.Item(i) & """" ' 引数
Next
End If
CreateObject("
WScript.Shell").Run s
WScript.Quit
End Sub
' -------------------------------------------------------------------------------
' デバッグ ※ここだけ抜粋してもOK
Dim objDbg
' クラス
Class TDebug
Dim FCScript

' 初期化処理
Private Sub Class_Initialize()
FCScript = InStr(LCase(WSCript.FullName), "
cscript") > 0
End Sub

' 終了処理
Private Sub Class_Terminate()
If Not FCScript Then Exit Sub

WScript.StdOut.WriteLine NOW & "
[END]"
WScript.StdIn.ReadLine
End Sub

' CScriptホストかどうか
Public Property Get CScript
CScript = FCScript
End Property

' デバッグメッセージ処理
Public Sub dprintf(v)
Dim i,s,ityp
If Not FCScript Then Exit Sub

s = v
ityp = VarType(v)
If ityp = vbBoolean Then
s = CStr(v)
ElseIf VarType(v) >= vbArray Then
s = "
"
For i = 0 to UBound(v)
s = s & "
dprintf(" &i& ")=" & v(i) & vbCRLF
Next
End If
WScript.Echo s
End Sub
End Class
' 関数
Sub dprintf(v)
If VarType(objDbg) = vbEmpty Then
Set objDbg = New TDebug
objDbg.dprintf(NOW & "
" & WScript.ScriptFullName)
End If
objDbg.dprintf(v)
End Sub
' -------------------------------------------------------------------------------

[PR]
# by yozda | 2018-04-14 11:10 | プログラミング | Trackback | Comments(0)
[VBScript] ニュースで英会話をバックアップする > Z_ ̄∂
どーもボキです。

英語学習を始め、ニュースで英会話の存在を知った。
サイト自体は2009年から存在したようだ。

日々最近のニュースが更新され、1分前後の短い文章がナチュラルスピードで読み上げられ、
センテンスごとの解説も用意されている。TOEICで500点以上を狙う人には最適なサイトと思う。

このニュースで英会話が、この3月で終了した。4月末にはサイトも閉鎖される。
こんなに充実したサイトなのにもったいない。

だからバックアップしよう。
a0021757_10065277.png
スクリプトの実行イメージ


ニュースで英会話の音声はHLS配信(ストリーミング)なので、音声ファイルはダウンロードできない。
ならアナログで対応するしかない。そう、再生される音声を録音する、だ。

キーボード操作ならVBScriptで再現できるが、音声の再生にはマウス操作が必要。なので、以下のフリーソフトを用意する。

 ・Moo0 音声録音機(音声が流れている時間のみを録音するツール)
 ・UWSC(マウス操作を記録&再現するツール)


Moo0 音声録音機 に必要な設定
 ※マイドキュメントに保存すること。VBScriptではマイドキュメントにある前提とした。

 ・無音カット、上書き可にチェック
  これは、録音を音声再生~終了に同期させるため。上書き不要なファイルを作らせないため。
  増幅は、PCによる。音割れするならば100%未満に、録音ボリュームが小さすぎるならば100%より大に。
a0021757_19523648.png

 ・設定 > 無音カット - 「無音」認識のボリューム閾値 > 1%
  これは、センテンス間で録音を止めさせないため。
a0021757_19523714.png

 ・設定 > 無音カット - 停止するまでの無音の長さ > 3.0sec
  これは、終了部をしっかり残すため。上の設定だけでは終了時の音声が切れてしまうので、これも必要。
a0021757_19523665.png

 ・設定 > キーボード・ショートカット > [Ctrl+スペース]:録音開始/終了
  これは、VBScriptからMoo0 音声録音機の録音をスタンバイさせるため。
a0021757_19523603.png

UWSC に必要な設定
 ※UWSCは起動させておく。

 ・ニュースで英会話のサイトにて、音声再生させるマウス位置とクリック操作を記録する。
   Alt+F3で記録開始、Alt+F2で記録停止、記録した操作に名前を付けて保存する。

 ※操作記録ファイル(.UWS)で必要となるコマンドはBTN()のみ。いったん記録したファイルをテキストエディタで編集するとよい。
  以下はマウス左クリック、1040はマウスのX座標、 610~700はY座標、100は実行時の待ち時間[ms]。
  以下は、x=1040、y=610~700を10刻みでクリックしていく。実行PCによるので適宜修正を。

BTN(LEFT,CLICK,1040,610,100)
BTN(LEFT,CLICK,1040,620,100)
BTN(LEFT,CLICK,1040,630,100)
BTN(LEFT,CLICK,1040,640,100)
BTN(LEFT,CLICK,1040,650,100)
BTN(LEFT,CLICK,1040,660,100)
BTN(LEFT,CLICK,1040,670,100)
BTN(LEFT,CLICK,1040,680,100)
BTN(LEFT,CLICK,1040,690,100)
BTN(LEFT,CLICK,1040,700,100)


 ・設定 > スケジュールを設定する にて、上のイベントファイルを選択、指定ウィンドウが現れた時 をチェックし、「- ニュースで英会話 -」を指定。
  これで、ニュースで英会話のWebが立ち上がると自動でマウスクリックされるようになる。
a0021757_19523628.png

以上で準備完了。以下のスクリプトを.vbsファイルととて保存し実行する。
正常に動作すれば、マイドキュメントに[yymm」フォルダを作り、そのなかに日々のニュースを「yymmdd_タイトル」で保存していく。

SetScriptHost("CScript")

Set objWS = CreateObject("WScript.Shell")
Set objFS = CreateObject("Scripting.FileSystemObject")

DPath = objWS.SpecialFolders("MyDocuments") &"\"
For yyyy = 2009 To 2018
m0 = 1
m1 = 12
For mm = m0 To m1
If Len(mm) = 1 Then mm = "
0" & mm
For dd = 1 To 31: Do
If Len(dd) = 1 Then dd = "
0" & dd

r = -1
On Error Resume Next
r = Weekday(yyyy &"
/" & mm & "/" & dd)
On Error GoTo 0
If (r < vbMonday) Or (r > vbFriday) Then Exit Do

' 保存フォルダ作成
DPath_Save = DPath & Right(yyyy,2) & mm &"
\"
If Not objFS.FolderExists(DPath_Save) Then objFS.CreateFolder(DPath_Save)

yyyymmdd = yyyy & mm & dd
' 保存済みmp3のサイズチェック
If yyyymmdd >= "
20150401" Then
fname = SearchFile(DPath_Save, Right(yyyymmdd,6) & "
*.mp3")
If fname <> "
" Then
Set fmp3 = objFS.GetFile(DPath_Save & fname)
If fmp3.Size <> 0 Then Exit Do ' 保存済み
End If
End If

fname = ProcURL("
https://cgi2.nhk.or.jp/e-news/news/index.cgi?ymd=" & yyyymmdd, DPath_Save, "")
If fname = "
" Then Exit Do ' 放送なし or アンコール放送

ProcURL "
https://cgi2.nhk.or.jp/e-news/elearning/explain.cgi?ymd=" & yyyymmdd & "&type=news", DPath_Save, fname & "_センテンス"
ProcURL "
https://cgi2.nhk.or.jp/e-news/elearning/explain.cgi?ymd=" & yyyymmdd & "&type=keyword", DPath_Save, fname & "_キーワード"
ProcURL "
https://cgi2.nhk.or.jp/e-news/news/words.cgi?ymd=" & yyyymmdd, DPath_Save, fname & "_ボキャブラリー"
Loop Until 1: Next
Next
Next
'===============================================================================
' URLを開く
' 戻り値:(番組が存在した場合)YYMMDD_タイトル
Function ProcURL(URL, FolderPath, FileName)
Dim objWS: Set objWS = CreateObject("
WScript.Shell")
Dim i,s,key,fname,yymmdd,objIE,ieDoc

i = InStr(URL, "
ymd")
yymmdd = Mid(URL, i+6,6) ' yymmddを取得

Do
Set objIE = CreateObject("
InternetExplorer.Application")
objIE.Navigate URL
Do While objIE.Busy: WScript.Sleep 1000: Loop ' ページ読み込み完了待ち

Set ieDoc = objIE.Document
s = ieDoc.Title
i = InStr(s,"
- ニュースで英会話 - NHK") -1
If (i < 0) Or (InStr(s,"
アンコール放送") > 0) then Exit Do ' ⇒ 終了

If FileName = "
" Then
FileName = yymmdd &"
_"& Left(s,i)
dprintf FileName

If yymmdd >= "
150401" Then
' VoiceRecorderの設定変更
rpth = "
HKCU\Software\Moo0\Moo0 VoiceRecorder\SaveData\MainWindow\CreationPath\"
key = rpth & "
FolderPath"
i = objWS.RegWrite(key, FolderPath, "
REG_SZ") ' 保存フォルダパス
key = rpth & "
FileName"
i = objWS.RegWrite(key, FileName, "
REG_SZ") ' 保存ファイル名

' VoiceRecorder起動
objWS.Run "
"""& objWS.SpecialFolders("MyDocuments") &"\AudioRecorder 1.46\VoiceRecorder.exe"""
WScript.Sleep 1000
objWS.SendKeys "
^ " ' Rec Start
Do
objIE.Visible = True ' 再生(UWSC)
WScript.Sleep 10000
objIE.Visible = False
r = CreateObject("
WScript.Shell").PopUp("finish?",80,"now recording...",vbYesNo)
Loop Until (r = vbYes) Or (r = -1)
TerminateProcess("
VoiceRecorder.exe")
End If
End If
' URLをmhtファイルで保存
On Error Resume Next
Set objCDO = CreateObject("
CDO.Message")
objCDO.CreateMHTMLBody(URL)
objCDO.BodyPart.GetStream.SaveToFile FolderPath & FileName & "
.mht", 2
Set objCDO = Nothing

Loop Until 1

objIE.Quit
Set objIE = Nothing

ProcURL = FileName
End Function
'-------------------------------------------------------------------------------
' 指定したファイル名が存在するか調べる(ワイルドカードOK)
' 戻り値:見つかったファイル名
Function SearchFile(DirectoryPath, FileName)
Dim objFS,f,r,dpth

r = "
"
Set objFS = CreateObject("
Scripting.FileSystemObject")
On Error Resume Next
dpth = DirectoryPath & Year(Now) & Month(Now) & Day(Now) & Hour(Now) & Minute(Now) & Second(Now)
objFS.CreateFolder(dpth) ' 重複しないフォルダを作成
objFS.MoveFile DirectoryPath & FileName, dpth &"
\"
For Each f In objFS.GetFolder(dpth).Files
r = f.Name
Next
objFS.MoveFile dpth &"
\"& FileName, DirectoryPath
objFS.DeleteFolder dpth
On Error GoTo 0

SearchFile = r
End Function
' -------------------------------------------------------------------------------
' 指定した名前のプロセスを強制終了する
Sub TerminateProcess(ProcessName)
Dim objProcList,objProcess

Set objProcList = GetObject("
winmgmts:").InstancesOf("win32_process")
For Each objProcess In objProcList
If LCase(objProcess.Name) = LCase(ProcessName) Then
objProcess.Terminate
End If
Next
End Sub
' -------------------------------------------------------------------------------
' 実行ホストを切り替える
Sub SetScriptHost(HostName)
Dim i,s

If InStr(LCase(WSCript.FullName), LCase(HostName)) <> 0 Then Exit Sub

s = HostName & "
""" & WScript.ScriptFullName & """"
If WScript.Arguments.Count > 0 Then
For i = 0 To WScript.Arguments.Count -1
s = s &"
""" & WScript.Arguments.Item(i) & """" ' 引数
Next
End If
CreateObject("
WScript.Shell").Run s
WScript.Quit
End Sub
' -------------------------------------------------------------------------------
' デバッグ ※ここだけ抜粋してもOK
Dim objDbg
' クラス
Class TDebug
Dim FCScript

' 初期化処理
Private Sub Class_Initialize()
FCScript = InStr(LCase(WSCript.FullName), "
cscript") > 0
End Sub

' 終了処理
Private Sub Class_Terminate()
If Not FCScript Then Exit Sub

WScript.StdOut.WriteLine NOW & "
[END]"
WScript.StdIn.ReadLine
End Sub

' CScriptホストかどうか
Public Property Get CScript
CScript = FCScript
End Property

' デバッグメッセージ処理
Public Sub dprintf(v)
Dim i,s,ityp
If Not FCScript Then Exit Sub

s = v
ityp = VarType(v)
If ityp = vbBoolean Then
s = CStr(v)
ElseIf VarType(v) >= vbArray Then
s = "
"
For i = 0 to UBound(v)
s = s & "
dprintf(" &i& ")=" & v(i) & vbCRLF
Next
End If
WScript.Echo s
End Sub
End Class
' 関数
Sub dprintf(v)
If VarType(objDbg) = vbEmpty Then
Set objDbg = New TDebug
objDbg.dprintf(NOW & "
" & WScript.ScriptFullName)
End If
objDbg.dprintf(v)
End Sub
' -------------------------------------------------------------------------------'

[PR]
# by yozda | 2018-04-13 20:29 | プログラミング | Trackback(1) | Comments(0)