Author Topic: [help] Arxload *.crx and *.arx in AutoCAD 2015  (Read 13697 times)

0 Members and 1 Guest are viewing this topic.

chlh_jd

  • Guest
[help] Arxload *.crx and *.arx in AutoCAD 2015
« on: April 15, 2014, 10:29:36 AM »
I have a vlx program , it can be sucessfully loaded in AutoCAD 2011 , but can not be load in AutoCAD 2015 ,
Prompt "Error: Parameter Type Error: stringp nil."  , and Vlide Prompt  "(Arxload nil)" .
However , In the Vlx file hadn't use (Arxload <String>) Such a statement ,  I check all (arxload <string> nil) are correct .
Dose some one catch this case ?
Thanks in advance for your help .

***After find the error where is , I changed the title name for Consult  about arxload *.crx and *.arx .
« Last Edit: April 18, 2014, 09:54:59 AM by chlh_jd »

chlh_jd

  • Guest
Re: [help] vlx unload in AutoCAD 2015
« Reply #1 on: April 16, 2014, 12:03:05 AM »
The reason is (arxload (findfile "geomcal.arx"))-->(arxload nil)
In AutoCAD 2015 , geomcal.arx Extension has been changed into ".crx"

Kerry

  • Mesozoic relic
  • Seagull
  • Posts: 11654
  • class keyThumper<T>:ILazy<T>
Re: [help] vlx unload in AutoCAD 2015
« Reply #2 on: April 16, 2014, 12:17:55 AM »
Ouch !!

That's a nasty trap.

kdub, kdub_nz in other timelines.
Perfection is not optional.
Everything will work just as you expect it to, unless your expectations are incorrect.
Discipline: None at all.

irneb

  • Water Moccasin
  • Posts: 1794
  • ACad R9-2016, Revit Arch 6-2016
Re: [help] vlx unload in AutoCAD 2015
« Reply #3 on: April 16, 2014, 01:34:02 AM »
I wonder why ADesk did this? What would be the benefit in changing a file's extension? Is it due to some special new type of compiling? Even then what is wrong with keeping it as arx?

Anyway, I guess there's 2 ways to go about it:
  • Redo your vlx and have a check for both "geomcal.arx" and "geamcal.crx"
  • Copy the geomcal.crx into the same folder, then rename it to geamcal.arx, no need to update the vlx. NOT recommended from AutoDesk, please try your utmost to modify your code instead.
« Last Edit: April 16, 2014, 10:35:34 AM by irneb »
Common sense - the curse in disguise. Because if you have it, you have to live with those that don't.

Kerry

  • Mesozoic relic
  • Seagull
  • Posts: 11654
  • class keyThumper<T>:ILazy<T>
Re: [help] vlx unload in AutoCAD 2015
« Reply #4 on: April 16, 2014, 04:13:05 AM »

I've sent an email to Kean but he is away till April 22.
kdub, kdub_nz in other timelines.
Perfection is not optional.
Everything will work just as you expect it to, unless your expectations are incorrect.
Discipline: None at all.

Kean

  • Newt
  • Posts: 48
Re: [help] vlx unload in AutoCAD 2015
« Reply #5 on: April 16, 2014, 05:12:59 AM »
Please don't copy and rename: you should check for both extensions if you need to load them programmatically.

.crx is used to denote modules that can be loaded into AcCore - which you can access via the Core Console application in AutoCAD 2013 onwards - and over time I expect more modules to be built to work in this environment. Being able to run commands in a "headless" (GUI-free) AutoCAD is very valuable, so it's all being done with the best of intentions.

Here's some more info, in case: http://adndevblog.typepad.com/autocad/2012/11/developing-a-crx-app.html

Kean

Kerry

  • Mesozoic relic
  • Seagull
  • Posts: 11654
  • class keyThumper<T>:ILazy<T>
Re: [help] vlx unload in AutoCAD 2015
« Reply #6 on: April 16, 2014, 05:23:24 AM »

Thanks Kean,

Sorry to interrupt your birthday holiday  :evil:


Be well,
kdub, kdub_nz in other timelines.
Perfection is not optional.
Everything will work just as you expect it to, unless your expectations are incorrect.
Discipline: None at all.

irneb

  • Water Moccasin
  • Posts: 1794
  • ACad R9-2016, Revit Arch 6-2016
Re: [help] vlx unload in AutoCAD 2015
« Reply #7 on: April 16, 2014, 05:25:23 AM »
Thanks Kean for clearing that up. It always helps to know the reasons why.
Common sense - the curse in disguise. Because if you have it, you have to live with those that don't.

Kean

  • Newt
  • Posts: 48
Re: [help] vlx unload in AutoCAD 2015
« Reply #8 on: April 16, 2014, 05:40:02 AM »
Thanks Kean for clearing that up. It always helps to know the reasons why.

My pleasure. :-)


Thanks Kean,

Sorry to interrupt your birthday holiday  :evil:


Be well,

No worries! I wouldn't have replied if I didn't have the time to do so. :-)

dgorsman

  • Water Moccasin
  • Posts: 2437
Re: [help] vlx unload in AutoCAD 2015
« Reply #9 on: April 16, 2014, 10:17:58 AM »
Now we know.  And knowing is half the battle (the other half is asking the right questions!).
If you are going to fly by the seat of your pants, expect friction burns.

try {GreatPower;}
   catch (notResponsible)
      {NextTime(PlanAhead);}
   finally
      {MasterBasics;}

chlh_jd

  • Guest
Re: [help] vlx unload in AutoCAD 2015
« Reply #10 on: April 17, 2014, 03:43:43 AM »
Thanks all partner  :-)

 
I wonder why ADesk did this? What would be the benefit in changing a file's extension? Is it due to some special new type of compiling? Even then what is wrong with keeping it as arx?

Anyway, I guess there's 2 ways to go about it:
  • Redo your vlx and have a check for both "geomcal.arx" and "geamcal.crx"
  • Copy the geomcal.crx into the same folder, then rename it to geamcal.arx, no need to update the vlx. NOT recommended from AutoDesk, please try your utmost to modify your code instead.

Thank you, Irneb . I do it like following :
Code - Auto/Visual Lisp: [Select]
  1. (if (and (not(member "GEOMCAL.ARX" (mapcar (function strcase) (arx))))
  2.          (not(member "GEOMCAL.CRX" (mapcar (function strcase) (arx)))))
  3.     (cond ((findfile "GEOMCAL.CRX") (arxload (findfile "GEOMCAL.CRX") nil))
  4.           ((findfile "GEOMCAL.ARX") (arxload (findfile "GEOMCAL.ARX") nil))))
Please don't copy and rename: you should check for both extensions if you need to load them programmatically.

.crx is used to denote modules that can be loaded into AcCore - which you can access via the Core Console application in AutoCAD 2013 onwards - and over time I expect more modules to be built to work in this environment. Being able to run commands in a "headless" (GUI-free) AutoCAD is very valuable, so it's all being done with the best of intentions.

Here's some more info, in case: http://adndevblog.typepad.com/autocad/2012/11/developing-a-crx-app.html

Kean

Thanks Kean a lot !

Another question consult you , there are two VL files in the system folder , vl.crx and vl.arx , which one and when shoud be loaded into VLIDE ? Thank you .

Kerry

  • Mesozoic relic
  • Seagull
  • Posts: 11654
  • class keyThumper<T>:ILazy<T>
Re: [help] vlx unload in AutoCAD 2015
« Reply #11 on: April 17, 2014, 05:06:05 AM »
I think we should ask LOUDLY for some definite documentation on these files.
At the moment there is little bits of information scattered across several blogs ... this information belongs in the help documentation and it needs to be correct and provided in a timely manner.

If someone has a guess, that guess gets copied 10 times and each of those gets reproduced 10 times and people MAY build on incorrect information. This is something that the people at AutoDesk don't seem to understand even though it happens quite often.

I don't have 2015 installed yet so I can't even have a good look.

From your code it seems that here is an ARX and a CRX available. I can't understand this because the CORE code is installed into all sessions if I understand correctly, so i'd guess that only the CRX is needed .. but that is a guess without complete data.

Kean, who should we be chasing to get this whole issue resolved completely in a timely manner ??
kdub, kdub_nz in other timelines.
Perfection is not optional.
Everything will work just as you expect it to, unless your expectations are incorrect.
Discipline: None at all.

irneb

  • Water Moccasin
  • Posts: 1794
  • ACad R9-2016, Revit Arch 6-2016
Re: [help] vlx unload in AutoCAD 2015
« Reply #12 on: April 17, 2014, 06:31:37 AM »
Regarding the VL.ARX/CRX I know they're not simply copies of each other. I've looked into their exported functions before to see if I could create some form of error-handler from DotNet into the LispFunction: http://forums.augi.com/showthread.php?154154-Error-Handling-in-LISP-Net&p=1257069&viewfull=1#post1257069

The same exported functions are not available in the CRX as they are in the ARX.

So there must be "some" variant to these. And yes, some good documentation for this would avoid lots of future problems.
Common sense - the curse in disguise. Because if you have it, you have to live with those that don't.

owenwengerd

  • Bull Frog
  • Posts: 451
Re: [help] vlx unload in AutoCAD 2015
« Reply #13 on: April 17, 2014, 10:35:43 AM »
The .arx modules link to the AutoCAD editor host (e.g. acad.exe); the .crx modules link to the core console (accore.dll). The separation allows core-specific stuff to work in any core host, while still enabling *all* the stuff when running inside an AutoCAD host.

chlh_jd

  • Guest
Re: [help] vlx unload in AutoCAD 2015
« Reply #14 on: April 17, 2014, 11:15:16 AM »
Thanks Kerry for your attention and reply .

Irneb , thank you giving this site to help .
Although I don't know how to write programe by DotNet , but I still try to use eXeScope 17.2 to see their output functions ,  not sucessful .

The .arx modules link to the AutoCAD editor host (e.g. acad.exe); the .crx modules link to the core console (accore.dll). The separation allows core-specific stuff to work in any core host, while still enabling *all* the stuff when running inside an AutoCAD host.

Thanks Owen a lot . I seem to have a better understand of the two types of files .
But on my computer, AutoCAD 2015 works on the local machine only , not for online collaboration. Whether in the near future, we need to connect AutoDesk server to obtain these *.crx files ?

Lee Mac

  • Seagull
  • Posts: 12913
  • London, England
Re: [help] vlx unload in AutoCAD 2015
« Reply #15 on: April 17, 2014, 01:19:44 PM »
Thank you, Irneb . I do it like following :
Code - Auto/Visual Lisp: [Select]
  1. (if (and (not(member "GEOMCAL.ARX" (mapcar (function strcase) (arx))))
  2.          (not(member "GEOMCAL.CRX" (mapcar (function strcase) (arx)))))
  3.     (cond ((findfile "GEOMCAL.CRX") (arxload (findfile "GEOMCAL.CRX") nil))
  4.           ((findfile "GEOMCAL.ARX") (arxload (findfile "GEOMCAL.ARX") nil))))

Maybe another way could be:
Code - Auto/Visual Lisp: [Select]
  1. (setq axl (mapcar 'strcase (arx)))
  2.     (   (member "GEOMCAL.ARX" axl))
  3.     (   (member "GEOMCAL.CRX" axl))
  4.     (   (and (setq tmp (findfile "geomcal.arx")) (arxload tmp nil)))
  5.     (   (and (setq tmp (findfile "geomcal.crx")) (arxload tmp nil)))
  6. )

The same behaviour could be achieved using OR:
Code - Auto/Visual Lisp: [Select]
  1. (setq axl (mapcar 'strcase (arx)))
  2. (or (member "GEOMCAL.ARX" axl)
  3.     (member "GEOMCAL.CRX" axl)
  4.     (and (setq tmp (findfile "geomcal.arx")) (arxload tmp nil))
  5.     (and (setq tmp (findfile "geomcal.crx")) (arxload tmp nil))
  6. )

Kerry

  • Mesozoic relic
  • Seagull
  • Posts: 11654
  • class keyThumper<T>:ILazy<T>
Re: [help] vlx unload in AutoCAD 2015
« Reply #16 on: April 17, 2014, 02:21:31 PM »
Lee,
Your optional code is still questionable, result wise.

There is a chance the original code from chlh_jd does not conform to the required load logic.

kdub, kdub_nz in other timelines.
Perfection is not optional.
Everything will work just as you expect it to, unless your expectations are incorrect.
Discipline: None at all.

Lee Mac

  • Seagull
  • Posts: 12913
  • London, England
Re: [help] vlx unload in AutoCAD 2015
« Reply #17 on: April 17, 2014, 02:49:03 PM »
Lee,
Your optional code is still questionable, result wise.

Are you saying the CRX should be preferred over the ARX if both are available?

owenwengerd

  • Bull Frog
  • Posts: 451
Re: [help] vlx unload in AutoCAD 2015
« Reply #18 on: April 17, 2014, 07:28:50 PM »
My 2 cents:

1) The .crx should always be preferred (unless both .arx or .crx may exist, and the app utilizes additional functionality in the .arx when it is available). The reason is two-fold. First, code should usually be optimized for the most recent version of AutoCAD, since over a typical app's lifetime it will be running on the current or a later version of AutoCAD much more often than on older versions of AutoCAD. Second, it's best to minimize dependencies, and in the event both a .crx and an .arx are available (or will be in a future AutoCAD), choosing the .crx results in fewer dependencies.

2) It's usually a bad idea to check whether the dependent module is already loaded instead of just going ahead and loading it, again for two reasons. One, there is very little performance benefit, and possibly even a net loss if the module usually is NOT loaded. Two, the act of calling (arxload) might be the mechanism that expresses a dependency on the module -- and if it is, then skipping the (arxload) could mean the module might be unloaded between the time it's status is checked and the time it is used. In fact, current versions of AutoCAD do not perform reference counting via (arxload), but there is such a mechanism under the hood that is used by ObjectARX apps, and it could very well be utilized in a future version of AutoCAD.

GP

  • Newt
  • Posts: 83
  • Vercelli, Italy
Re: [help] vlx unload in AutoCAD 2015
« Reply #19 on: April 18, 2014, 03:29:43 AM »
The reason is (arxload (findfile "geomcal.arx"))-->(arxload nil)
In AutoCAD 2015 , geomcal.arx Extension has been changed into ".crx"

In AutoCAD 2013, geomcal, geom3d and other...

My 2 cents (for all versions):

(or CAL (arxload "GEOMCAL"))
(or ALIGN (arxload "GEOM3D"))
(or MIRROR3D (arxload "GEOM3D"))
.....
.....
« Last Edit: April 18, 2014, 03:41:28 AM by GP »

Kerry

  • Mesozoic relic
  • Seagull
  • Posts: 11654
  • class keyThumper<T>:ILazy<T>
Re: [help] vlx unload in AutoCAD 2015
« Reply #20 on: April 18, 2014, 05:11:59 AM »
kdub, kdub_nz in other timelines.
Perfection is not optional.
Everything will work just as you expect it to, unless your expectations are incorrect.
Discipline: None at all.

irneb

  • Water Moccasin
  • Posts: 1794
  • ACad R9-2016, Revit Arch 6-2016
Re: [help] vlx unload in AutoCAD 2015
« Reply #21 on: April 18, 2014, 06:23:54 AM »
2) It's usually a bad idea to check whether the dependent module is already loaded instead of just going ahead and loading it, again for two reasons. One, there is very little performance benefit, and possibly even a net loss if the module usually is NOT loaded. Two, the act of calling (arxload) might be the mechanism that expresses a dependency on the module -- and if it is, then skipping the (arxload) could mean the module might be unloaded between the time it's status is checked and the time it is used. In fact, current versions of AutoCAD do not perform reference counting via (arxload), but there is such a mechanism under the hood that is used by ObjectARX apps, and it could very well be utilized in a future version of AutoCAD.
There's one issue with this in AutoLisp. From the help on the arxload function:
Quote
Attempting to load an application that has previously been loaded results in an error. Before using arxload you should use the arx function to check the currently loaded applications.
So the help documentation actually states that you must first check to see if the file has already been loaded. So the documentation actually contradicts this, should the documentation be ignored and no check be done?

Given I understand fully that this check is non-trivial as an entire list needs to be searched using member or vl-position - this can be very time consuming if the list is long (hopefully it isn't but can you make the assumption).

So more probably you can simply pass an on-failure to the arxload function so the lisp environment doesn't crash if the file was already loaded.

What's not clear though is if it searches for various known extensions to the file like the load function does. It appears so from the examples, but nowhere is it explicitly stated:
Only that:
Quote
You can omit the .arx extension from the file name.
Is this a case of the documentation needing updating in that it should state the following?
Quote
You can omit the .arx or .crx extension from the file name.
If so then to alleviate both possible issues it is extremely simple:
Code - Auto/Visual Lisp: [Select]
  1. (arxload "geomcal" nil)

If not then you can always do something like this:
Code - Auto/Visual Lisp: [Select]
  1. (or (arxload "geomcal.crx" nil)
  2.     (arxload "geomcal.arx" nil)
  3. )
Common sense - the curse in disguise. Because if you have it, you have to live with those that don't.

irneb

  • Water Moccasin
  • Posts: 1794
  • ACad R9-2016, Revit Arch 6-2016
Re: [help] vlx unload in AutoCAD 2015
« Reply #22 on: April 18, 2014, 06:51:30 AM »
(or CAL (arxload "GEOMCAL"))
That's a good idea to get around the possibly slow check through the arx list, it should be faster since it's using the symbol table instead of the list of strings. Not sure how AutoLisp implements this internally, but most languages use something faster than a serial list search - usually something like a hash table.

Though I can think of one situation where such might not work: What if another defun / symbol was created with the name cal? E.g. what if someone's rolled their own "cal" function (like I did here)but you want to rather use the geomcal one?
Common sense - the curse in disguise. Because if you have it, you have to live with those that don't.

irneb

  • Water Moccasin
  • Posts: 1794
  • ACad R9-2016, Revit Arch 6-2016
Re: [help] vlx unload in AutoCAD 2015
« Reply #23 on: April 18, 2014, 06:57:28 AM »
What's not clear though is if it searches for various known extensions to the file like the load function does. It appears so from the examples, but nowhere is it explicitly stated: ...
Doing a bit more searching in the documentation ... even the 2015 docs say nothing about CRX. Only arx for windows and bundle for Mac: http://help.autodesk.com/view/ACD/2015/ENU/?guid=GUID-965A0D2A-CFD0-4D7C-9D2B-2D8188F0DAC8

Though now the wording on searching the arx list has changed from "you should" to "you may want to".
Common sense - the curse in disguise. Because if you have it, you have to live with those that don't.

chlh_jd

  • Guest
Re: [help] vlx unload in AutoCAD 2015
« Reply #24 on: April 18, 2014, 09:41:30 AM »
Thanks LeeMac for opt suggest . :-) It does require the order just like Owen's clarify .  Maybe
Code - Auto/Visual Lisp: [Select]
  1. ((lambda (a)
  2.    (if (and (not (member "GEOMCAL.ARX" a)) (not (member "GEOMCAL.CRX" a)))
  3.       (cond ((findfile "GEOMCAL.CRX")
  4.              (arxload "GEOMCAL.CRX" nil))
  5.             ((findfile "GEOMCAL.ARX")
  6.              (arxload "GEOMCAL.ARX" nil)))))
  7.  

Thanks Kerry for keeping paying attention .  :-)

My 2 cents:

1) The .crx should always be preferred (unless both .arx or .crx may exist, and the app utilizes additional functionality in the .arx when it is available). The reason is two-fold. First, code should usually be optimized for the most recent version of AutoCAD, since over a typical app's lifetime it will be running on the current or a later version of AutoCAD much more often than on older versions of AutoCAD. Second, it's best to minimize dependencies, and in the event both a .crx and an .arx are available (or will be in a future AutoCAD), choosing the .crx results in fewer dependencies.

2) It's usually a bad idea to check whether the dependent module is already loaded instead of just going ahead and loading it, again for two reasons. One, there is very little performance benefit, and possibly even a net loss if the module usually is NOT loaded. Two, the act of calling (arxload) might be the mechanism that expresses a dependency on the module -- and if it is, then skipping the (arxload) could mean the module might be unloaded between the time it's status is checked and the time it is used. In fact, current versions of AutoCAD do not perform reference counting via (arxload), but there is such a mechanism under the hood that is used by ObjectARX apps, and it could very well be utilized in a future version of AutoCAD.

Thanks Owen a lot for Clarified it .

Thanks Irneb for keep helping me , Indeed there is  no clear something about .crx and .arx by AutoCAD .

Thanks GP's suggest , by this way it has some case like Irneb has said , before I used cal function of geomcal.arx , I did it to cal "-0.2+5^3/2*sin(1.4)"  like
Code - Auto/Visual Lisp: [Select]
  1. (defun cal (str / r o)
  2.   ;;from http://www.mjtd.com/BBS/dispbbs.asp?boardID=3&ID=62105&page=1
  3.                 (vlax-get-acad-object)
  4.                 "ScriptControl"
  5.               ))
  6.     (progn
  7.       (vlax-put-property o "language" "vbs")
  8.       (setq r (vl-catch-all-apply 'vla-eval (list o str)))
  9.       (vlax-release-object o)
  10.       (if (not (vl-catch-all-error-p r))
  11.         r))))
  12.  
« Last Edit: April 18, 2014, 10:04:01 AM by chlh_jd »

MP

  • Seagull
  • Posts: 17750
  • Have thousands of dwgs to process? Contact me.
Re: [help] Arxload *.crx and *.arx in AutoCAD 2015
« Reply #25 on: April 18, 2014, 11:52:03 AM »
I'm in dire need of coffee this morning so there's a very good chance I'm overlooking something but in my mind it needn't be any more ambitious than this:

Code: [Select]
(   (lambda ( a b )
        (or
            (vl-some '(lambda (f) (member f a)) b)
            (vl-some '(lambda (f) (and (findfile f) (arxload f nil))) b)
        )
    )
    (mapcar 'strcase (arx))
   '("GEOMCAL.CRX" "GEOMCAL.ARX")
)

or

Code: [Select]
(   (lambda ( a b )
        (or
            (vl-some '(lambda (f) (member f a)) b)
            (arxload "geomcal" nil)
        )
    )
    (mapcar 'strcase (arx))
   '("GEOMCAL.CRX" "GEOMCAL.ARX")
)

:shrug:
Engineering Technologist • CAD Automation Practitioner
Automation ▸ Design ▸ Drafting ▸ Document Control ▸ Client
cadanalyst@gmail.comhttp://cadanalyst.slack.comhttp://linkedin.com/in/cadanalyst

owenwengerd

  • Bull Frog
  • Posts: 451
Re: [help] Arxload *.crx and *.arx in AutoCAD 2015
« Reply #26 on: April 18, 2014, 12:06:15 PM »
Michael, it's documented somewhere that (arx) always returns results in all lower case, so you can eliminate your (strcase) if you ensure that the module names are all lower case.

MP

  • Seagull
  • Posts: 17750
  • Have thousands of dwgs to process? Contact me.
Re: [help] Arxload *.crx and *.arx in AutoCAD 2015
« Reply #27 on: April 18, 2014, 12:21:03 PM »
Thanks Owen. It's really hard to break the habit of thwarting case issues. :)

For fun:

Code: [Select]
(defun _ArxLoad ( basename )
    (   (lambda ( a b x )
            (or
                (vl-some '(lambda (s) (member (strcat b "." s) a)) x)
                (arxload b nil)
            )
        )
        (arx)
        (strcase (vl-filename-base basename) t) ;; ijit proofed
       '("crx" "arx")
    )
)

(_ArxLoad "geomcal")
Engineering Technologist • CAD Automation Practitioner
Automation ▸ Design ▸ Drafting ▸ Document Control ▸ Client
cadanalyst@gmail.comhttp://cadanalyst.slack.comhttp://linkedin.com/in/cadanalyst

Kean

  • Newt
  • Posts: 48
Re: [help] Arxload *.crx and *.arx in AutoCAD 2015
« Reply #28 on: April 22, 2014, 08:03:37 AM »
It seems like I didn't set a notification to follow this thread (fixed, now).

Something I should probably add on the whole .arx vs. .crx question: just as monolithic .arx apps were encouraged to split out custom entity definitions into a .dbx, these same .arx apps should now see long-term benefit from splitting into .arx (for GUI) and .crx (for everything else). The .arx module's GUI-centric commands would then call into core implementations inside the .crx modules (which also house command-line versions of the commands that call into the same core functions).

So vl.arx probably implements some GUI-related stuff and depends on vl.crx. You can see the dependency using the Dependency Walker (see below).

All this also applies to .NET applications, although their nature isn't declared by the file extension. You could (should) have a .DLL module that refers to acdbmgd.dll and accoremgd.dll (which can then be loaded by the Core Console) and then an AutoCAD-specific .DLL that would depend on the first .DLL and could also make use of acmgd.dll (in addition to accoremgd.dll and acdbmgd.dll).

The ability to call commands natively in AutoCAD 2015's .NET API should greatly help this GUI separation work (or you could just have the GUI code call into functions that are shared between the two modules in some way).

Hopefully all this isn't making the topic less clear. Let me know if that's the case - I'll try to broaden the explanation into a blog post.

Kean

chlh_jd

  • Guest
Re: [help] Arxload *.crx and *.arx in AutoCAD 2015
« Reply #29 on: April 24, 2014, 11:04:08 AM »
Thanks Kean , thank you a lot   :-)
Although I know DotNet so little , it seems that : currently , vl.arx  include vl.crx because it shoud  not only be used in the core .

Kean

  • Newt
  • Posts: 48
Re: [help] Arxload *.crx and *.arx in AutoCAD 2015
« Reply #30 on: April 24, 2014, 11:10:27 AM »
Almost: vl.crx can be in any "host" that uses AcCore (i.e. the Core Console or full AutoCAD), while vl.arx can only be used in AutoCAD.

Kean

chlh_jd

  • Guest
Re: [help] Arxload *.crx and *.arx in AutoCAD 2015
« Reply #31 on: April 24, 2014, 08:44:25 PM »
Almost: vl.crx can be in any "host" that uses AcCore (i.e. the Core Console or full AutoCAD), while vl.arx can only be used in AutoCAD.
Kean
Thanks Kean .

It's clear for me now through Owen's early warm-up, Kean's clear and everyone's eager to help . Thank you very much .
« Last Edit: April 24, 2014, 08:48:59 PM by chlh_jd »