Netload 2 - A Missão!!! hehehe então voce fez um probraminha em VB.NET ou (C#, em fim...)
carregou com o net load e nada aconteceu... é.... em lisp, se fazemos isso:
(defun c:algumacoisa
;....
)
(c:algumacoisa)
O programa algumacoisa é executado logo após ser carregada a lisp, correto?
Agora, que tal se um programa feito em VB.NET também fosse executado logo após ser carregado com o netload?? Seria legal né? Imagine colocar um "splashscreen"??
O pior, é que é muito simples de fazer, veja:
Imports Autodesk.AutoCAD.Runtime
Public Class INICIALIZACAO
Implements IExtensionApplication
Private Sub Initialize() Implements IExtensionApplication.Initialize
'faça algo interessante aqui!!!
MsgBox("Ei, carregou!!! Agora, na linha de comando digite: ALGUMACOISA")
End Sub
Private Sub Terminate() Implements IExtensionApplication.Terminate
End Sub
<CommandMethod("algumacoisa")> _
Public Sub algumacoisa()
MsgBox("Ei, deu certo!!")
End Sub
End Class
O truque todo fica por conta daquele Implements IExtensionApplication e as subs Initialize e Terminate.
E olha que me debati um monte pra achar isso.... afff
Ah, claro, adicione as referências ACMGD.DLL e ACDBMGD.DLL do seu autocad!!
junte isso com o outro post do netload e você terá algo muito interessante para "autoinstalar" seu programa!!!
carregou com o net load e nada aconteceu... é.... em lisp, se fazemos isso:
(defun c:algumacoisa
;....
)
(c:algumacoisa)
O programa algumacoisa é executado logo após ser carregada a lisp, correto?
Agora, que tal se um programa feito em VB.NET também fosse executado logo após ser carregado com o netload?? Seria legal né? Imagine colocar um "splashscreen"??
O pior, é que é muito simples de fazer, veja:
Imports Autodesk.AutoCAD.Runtime
Public Class INICIALIZACAO
Implements IExtensionApplication
Private Sub Initialize() Implements IExtensionApplication.Initialize
'faça algo interessante aqui!!!
MsgBox("Ei, carregou!!! Agora, na linha de comando digite: ALGUMACOISA")
End Sub
Private Sub Terminate() Implements IExtensionApplication.Terminate
End Sub
<CommandMethod("algumacoisa")> _
Public Sub algumacoisa()
MsgBox("Ei, deu certo!!")
End Sub
End Class
O truque todo fica por conta daquele Implements IExtensionApplication e as subs Initialize e Terminate.
E olha que me debati um monte pra achar isso.... afff
Ah, claro, adicione as referências ACMGD.DLL e ACDBMGD.DLL do seu autocad!!
junte isso com o outro post do netload e você terá algo muito interessante para "autoinstalar" seu programa!!!
Acredito que seja de conhecimento da maioria mas nunca é demais: existe um aplicativo escrito em AutoCAD C# .NET destinado para o AutoCAD Civil 3D chamado Sincpac3D FreeEdition que mostra o bem o uso de IExtensionApplication. É uma boa fonte para quem quer aprender AutoCAD .NET.
ResponderExcluirsegue o link:
ResponderExcluirhttp://www.ejsurveying.com/SincpacC3D.aspx
muito bom mesmo!!!
não foi de lá que eu tirei a idéia, foi em http://www.theswamp.org/