な~に、いつものStdinプロパチーの利用でっせ
参考
WSH Panel Modとコンソールアプリケーションとの通信(その壱) - PNNブログCEOの趣味悠々自適生活
http://pnnceo.blog.fc2.com/blog-entry-27.html
WSH Panel Modとコンソールアプリケーションとの通信(その弐) - PNNブログCEOの趣味悠々自適生活
http://pnnceo.blog.fc2.com/blog-entry-28.html
WSH側のスクリプト
1: Set objShell = CreateObject("WScript.Shell")
2: function on_playback_new_track(metadb)
3: Set objExec = objShell.Exec("cmd")
4: objExec.StdIn.Writeline("cd python")
5: objExec.StdIn.Writeline("python md5.py "+fb.TitleFormat("%_path%").Eval(true))
6: objExec.StdIn.Writeline("exit")
7: Do Until objExec.StdOut.AtEndOfStream
8: strLine = objExec.StdOut.ReadLine
9: If InStr(strLine,"result:")<>0 Then
10: col = Instr(strLine,":")
11: md5 = Mid(strLine,col+1)
12: end if
13: loop
14: fb.trace("再生中の楽曲のフルパスのMD5:"+md5)
15: set objExec = Nothing
16: end function
Pythonスクリプト(md5.pyと名前を付けて保存後、Foobarの実行ファイルのあるディレクトリにpythonというディレクトリを作りそこに放り投げる。別にわざわざ作ってやる必要もないが、後々スクリプトが増えてくるとディレクトリが汚くなるのが嫌なので)
1: import sys
2: import hashlib
3:
4: rawtext=sys.argv[1]
5: print('result:'+hashlib.md5(rawtext.encode()).hexdigest())
実行画面(例)
当然PythonがPCにインストールされている必要がある。
インストールの仕方やその辺は外部のサイトが詳しいのでそちらを参考に
Pythonインストールと環境設定
http://www.pythonweb.jp/install/
ちなみに当方のPythonのバージョンは最新版の3.2なので、最新版をインストールしてください。
上のサイトのPythonのバージョンはちょっと古いです。けどまあ、インストールや設定の要領はあんまり変わりないです。
勘の良い人はわかるとは思うがPowerShellも同じ要領で利用できる。てなことで次回はPSで遊んでみる。
0 件のコメント:
コメントを投稿