技術評論社の2012年出版の古い本だが、「AutoCAD VB.NETマクロサンプル大全集」を見ながら頑張ってみた。
まずはVisualStudioで以下のVB.NETコードを書く。
Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.EditorInout
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.EditorInput
Public Class Class1
<CommandMethod("HLWL")>
Public Sub MyHelloWorld()
Dim ed As Editor = Application.DocumentManager.MdiActiveDocument.Editor
ed.WriteMessage(vbCrLf + "Hello World!")
End Sub
End Class
その後の表現が我々初心者プログラミング厨房にとって難解極まりない。
参照するだのパスを通すだの、詳しく説明せずに煙に巻くのはやめんかい!!!(この本のことではなく、他の本またはサイト)
マジぶっ●すぞ!!!(この本にはそこそこ分かりやすく書かれてあったからこそ成功したのだ。)
参照とは、一番上の帯でプロジェクトというところを選び、このプログラムのプロジェクト名のプロパティの部分を押すと、本で指定されたdllファイルを選んでチェックを入れ、Trueに設定変更するように指示が出ているので、その通りに従えばよい。(accoremgd.dll,acdbmgd.dll,acmgd.dllの3つ)
そして、どのサイトを見ても書かれていなかったのが「パスを通す」という表現の作業であった。
具体的に何をするのかというと、いったんこのプログラムを書き終えて参照設定まで終えたらビルドボタンを押すと、幾種類かのファイルが生成されるので、その中のプロジェクト名.vbprojというファイルをメモ帳で開いて中身を編集していくことになるのだ。その過程でacad.exeというファイルのディレクトリをフルパスで「C:¥Program Files¥Autodesk¥AutoCAD 2023¥acad.exe(この部分は個々のPCの設定によって変わるので、acad.exeがどこにあるか探してディレクトリパスをコピっておくべき)」(なぜか半角¥はブログに書けない)追記する場面があるから、それをパスを通すと呼んでいるらしい。自称凄腕プログラマー&エンジニアはそういうわけわからん事ばかりほざいてドヤ顔で悦に浸り、後進の教育をおろそかにするから日本は世界で最低レベルとバカにされるんだよ。教えるのがめんどくさいとか教えてる時間がないとか嘘の言い訳をし、教える能力がないのがバレるのを恐れているだけだ。
愚痴はここまでにして・・・本には <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
のすぐ下に <StartAction>Program</StartAction>
<StartProgram>C:¥Program Files¥Autodesk¥AutoCAD 2023¥acad.exe</StartProgram>
と追記して上書き保存し、ビルドしたプログラムをデバッグするとAutoCADが立ち上がり、
作図画面上でコマンドと表示されている状態で、NETLOADと入力すると.NETアセンブリを選択するというウィンドウが立ち上がるので、Hello_World.dllを選んで開き、HLWLとコマンドを打つと無事HelloWorld!と表示されて成功に終わった。
本文は以上。以下は画面のキャプチャー画像。
1.VB.NETのソースコード打ち込みの様子。
2.いわゆるパスを通している所wwwメモ帳で追記しているだけだがwww
3.小さすぎて見えないが中央下部にHelloWorldが表示されている所。
山場、難所は超えたから次はもっと難しいこと、さらにC#やF#でソースコードを書き替えて実践してみたい。
古い本なのに、AutoCAD2023とVisual Studio2022で本に書かれてある内容そのままでバッチリ動いて成功できたのは非常に大きな一歩だ!!!
おい、ボンクラ自称プログラマー、エンジニア共よ、首を洗って待って居ろ。いずれフリーランスとなってつぶしにいってやるからな、覚悟せい!!!