shirazbj 发表于 2022-7-6 22:41:24

如何使用AutoCAD_2010-2012\u d

你好
 
开始玩vb。net 2008 express for autocad 2010。
 
我曾尝试编写一个dll,它在autocad中为我提供了如下代码:
 
_
公共子HelloWorld()
Dim ed=应用。DocumentManager。MdiActiveDocument。编辑
ed.WriteMessage(vbLf和“你好,世界!”)
末端接头
现在我想使用插件向导。
 
我安装了向导并在vb中创建了一个项目。网我只想打印一张“你好,世界”。只是想知道我如何在myCommand中插入代码。vb在此处或任何地方:
 

Namespace AutoCAD_VB_plug_in1

   Public Class MyCommands

       <CommandMethod("MyGroup", "MyCommand", "MyCommandLocal", CommandFlags.Modal)> _
       Public Sub MyCommand() ' This method can have any name
         ' Put your command code here

       End Sub

 
当我按F5在vb中编译时。net,AutoCAD已启动。我该怎么使用我的新插件?似乎F5将插件发布到autocad中,autocad在启动时将其加载。
 
提前感谢
 
海洋

shirazbj 发表于 2022-7-6 22:53:41

尝试了另一个插件,发现我仍然需要autocad中的NetLoad来加载DLL,只是它会自动注册,并且可以在下次autocad运行时运行。
 
我这样更改了代码:
 

Namespace AutoCAD_VB_plug_in1

   Public Class MyCommands

       <CommandMethod("MyGroup", "MyCommand", "MyCommandLocal", CommandFlags.Modal)> _
       Public Sub MyCommand() ' This method can have any name
         ' Put your command code here
         Application.DocumentManager.MdiActiveDocument.Editor.WriteMessage(vbLf & "Hello World! ")
   
       End Sub

 
并将其构建到DLL中。NetLoad,它正在工作,但当我关闭AutoCAD并再次运行它时,“MyCommand”不再工作。
 
我做错了什么?

Jeff H 发表于 2022-7-6 23:06:30

你又上网了吗?

Kerry Brown 发表于 2022-7-6 23:13:08

你需要
NetLoad“除非您按需加载.DLL。这涉及设置注册表项,以便AutoCAD知道在运行注册命令时加载相关DLL。
 
考虑到您的编程水平,我建议您根据需要netloading dll。
当做
克里

shirazbj 发表于 2022-7-6 23:22:39

2010年6月,我在Autodesk开发者网络上试用了DimensionPatrol,这是本月的最佳插件。我发现它还有一个叫做Demand\u Loading的模块。vb。这就是区别。我更喜欢一个插件只需要下载一次,并注册自己加载
在以后的会话中自动执行。
 
只是想知道这个Demand\u加载在哪里。vb是从还是有另一个向导我应该使用。
 
谢谢你的帮助。

Kerry Brown 发表于 2022-7-6 23:36:14

你可以从这里开始:
 
http://through-the-interface.typepad.com/through_the_interface/2006/09/automatic_loadi.html
 
http://through-the-interface.typepad.com/through_the_interface/2009/05/creating-demand-loading-entries-automatically-for-your-autocad-application-using-net.html
 
... 但如果你学会编码,可能会更好。NET优先。

shirazbj 发表于 2022-7-6 23:42:37

是的,我想稍后再处理。
 
但是想知道的是,使用Inventor插件向导,您只需要将DLL复制到一个特殊的文件夹中,当Inventor启动时,它就会自动加载DLL。如果您不再需要该DLL,请删除它。此外,Inventor中还有插件按钮,您可以检查加载了什么插件。也许AutoCAD不同。你仍然需要手动处理注册。
 
谢谢
页: [1]
查看完整版本: 如何使用AutoCAD_2010-2012\u d