ご存知のように、InventorのiLogicエディタには、ステップ実行や変数の値を参照する等のデバッグを行うための機能が無いため、実行中のTraceログを出力するなどの間接的な方法以外にはiLogicをデバッグを行うことが出来ません。
このため、新規にiLogicを作成する場合や、運用中に発生したエラーの調査を行う場合等、どこで何が起きているのかの現象の確認、原因および修正方法の調査を行うのに、苦慮することがあるかと思います。
今回の記事では、Inventor iLogicをVisual Studioでデバッグ実行する方法をご紹介します。
前提条件:
- Inventor 2019以降 (Inventor 2018ではデバッグ実行をすることは出来ません)
- Visual Studio 2017 または 2019 (Community、 Professional 、または Enterprise エディション。Visual Studio Codeは対象外)
設定方法:
この記事では、Visual Studio 2019 Professionalでの設定を例に説明をします(Visual Studio 2017でも多少のGUIの違いはありますが設定内容は同じです)。
1.Visual Studioを起動し、Visual Basic のクラスライブラリ(.NET Framework) プロジェクトを新規作成
2.メニューから「デバッグ」- 「ウィンドウ」-「例外設定」を選択し、例外設定パネルで、「Common Language Runtime Exceptions」の設定をOnに変更
3.メニューから「デバッグ」- 「オプション」を選択してオプションウィンドウを起動し以下の設定を変更
オプションウィンドウの「デバッグ」-「全般」配下の「元のバージョンと完全に一致するソースファイルを必要とする」オプションのチェックを外す。
「従来のC#およびVBの式エバリュエータを使用する」をチェック
デバッグ実行:
1.Inventorを起動し、iLogicを含むInventorファイルを開く
2.Visual Studioのメニューから、「デバッグ」-「プロセスにアタッチ」を選択し、アタッチ先に「自動マネージド(v4.6、v4.5、v4.0)コード」を選択し、ダイアログのプロセス一覧から「Inventor.exe」を選択
3.InventorのiLogicエディタで、実行するiLogicに Break 命令を記入し、iLogicを実行
4.Visual Studioで、pdbが存在しない例外により実行がストップする場合がありますので、不要な例外のハンドリングは無視するように設定して、F10キーなどで継続して実行していくと、Visual StudioにInventorが実行中のiLogicコードが表示され、デバッグ実行が可能となります。
Visual Studioに表示されたコード上では、Break Pointの設定、ステップ実行、ローカル変数の値の参照といったVisual Studioでのデバッグ機能を利用することが可能です。
制限事項:
Visual StudioでiLogicのデバッグを行う手順を紹介しましたが、幾つかの制限事項がある点にご留意ください。
- デバッグ実行中はInventorのエディタはすべての操作を受け付けない状態となります
- Visual Studioに表示されているソースコードは、実行しているiLogicを元にしたソースコードですが、iLogicの記述とは多少の差異があります
- Visual Stuidoに表示されているソースコードを編集できません。変更をする場合は、元のiLogicを編集するようにしてください
いかがでしたでしょうか?Visual Studioを利用する必要があったり、プロセスへのアタッチ等の多少の手間はかかりますが、Traceログの出力する方法と比較すると、ステップ実行や変数の値の参照などにより、iLogicの開発や保守が容易に行えるようになるかと思いますので、是非ご活用ください。
By Takehiro Kato
コメント