こちらの続きです。
VSCodeでPowerMillマクロ開発環境を作りたい9 - C#ATIA
悩みに悩んだ末、F5キーでPowerMillデバッガを起動出来るようになりました。
実際にデバッガを起動するVBSprict "call_debugger.vbs"
'powermill Dim pm Set pm = GetObject(, "PMILL.Document") 'デバッガ終了 Call pm.docommand("MACRO CLOSE FORM CANCEL MACRODEBUG") 'マクロパス Dim path path = WScript.Arguments(0) 'コマンド Dim cmd cmd = "MACRO DEBUG " & path 'デバッガ起動 Call pm.docommand(cmd)
デバッガが既に起動している場合もあるため、最初にデバッガを終了する
処理を入れました。
続いてVBSprictを呼び出すための tasks.json
{ "version": "2.0.0", "tasks": [ { "label": "call_debugger", "type": "shell", "command": "wscript", "args": ["${workspaceFolder}/src/call_debugger.vbs", "${file}"], "presentation": { "reveal": "silent"}, "problemMatcher": [] } ] }
引数はエディタ上でアクティブになっているファイルです。
最後にデバッガ起動のアクションを起こしている launch.json
"version": "0.2.0", "configurations": [ { "type": "node", "request": "launch", "name": "Call Debugger", "preLaunchTask": "call_debugger", "program": "${workspaceFolder}/src/dmy.js" } ]
"program"を指定しないとデバッガが起動するのですが、VSCode側でエラーを
起こすため、何も処理しないJavaSprictを用意し実行することにしました。
動画を撮っている暇が無いため割愛。
こんな処理方法が正しいVSCodeAPIの利用方法とは思えないのですが、
とりあえずかなり目標状態に近づきました。
最近は、"色々検索するより本家のドキュメントを見るべき" と言う神のお告げを
思い出し見てはいるのですが
Extension API | Visual Studio Code Extension API
自分の行っている方法は、ちょっと間違っていることに気が付きました。
参考にしたものが悪いんだな…。