.NET

Reply
Active Contributor
Fredrik.Larsen
Posts: 46
Registered: ‎11-28-2012
Message 1 of 19 (1,110 Views)
Accepted Solution

PackageContents.xml update from 2013 to 2014

1110 Views, 18 Replies
04-16-2013 06:06 AM

Hi

 

I have recently downloaded the last version of Autocad, 2014. As I understand my applications for 2013-version should run on 2014-version. But my bundle does not seem to load my dll. 

 

I have updated the SeriesMax to 19.1 (See attached image), but the commands does not seem to be recognized. The partial cui is loaded, but the commands does not work when the buttons created from the partial cui is pressed. (See attached image)

 

Why is this happening?

ADN Support Specialist
fenton.webb
Posts: 352
Registered: ‎07-24-2007
Message 2 of 19 (1,035 Views)

Re: PackageContents.xml update from 2013 to 2014

04-17-2013 09:21 AM in reply to: Fredrik.Larsen

Can you post the bundle maybe?





Fenton Webb

Developer Technical Services

Autodesk Developer Network


Active Contributor
Fredrik.Larsen
Posts: 46
Registered: ‎11-28-2012
Message 3 of 19 (1,013 Views)

Re: PackageContents.xml update from 2013 to 2014

04-19-2013 09:13 AM in reply to: fenton.webb

I have found the problem.

 

For the 2014 version you cannot have both of these lines:

LoadOnAutoCADStartup="False" and LoadOnCommandInvocation="True"

So when I just removed the first one everything works fine :smileyhappy:

 

I know it was redundant to have both, but I had it since it was very explaining when someone read the xml file.

Valued Mentor
DiningPhilosopher
Posts: 370
Registered: ‎05-06-2012
Message 4 of 19 (1,005 Views)

Re: PackageContents.xml update from 2013 to 2014

04-19-2013 10:16 AM in reply to: Fredrik.Larsen

Well, great that you've solved that one, but it is not redunduant to have both, when one is false and the other true.

 

I can't imagine why that problem should be happening at all.  It wouldn't happen if the elemetns were being processed correctly. Those elements correspond to a set of flags, any of which can be either true or false.

Distinguished Mentor
BlackBox_
Posts: 741
Registered: ‎02-25-2013
Message 5 of 19 (997 Views)

Re: PackageContents.xml update from 2013 to 2014

04-19-2013 12:02 PM in reply to: DiningPhilosopher

DiningPhilosopher wrote:

... It wouldn't happen if the elemetns were being processed correctly.


*Points finger to nose*

 

 

 

this.Mode = Modes.Rant;

 

You should see how (poorly) CUIx are handled by Autoloader (if you haven't already)... Duplicates are replicated into each version's ..\Support\ folder, and if one disables a given plug-in (by deleting, or renaming the .bundle), the 'residue' (duplicate CUIx files replicated) are still loaded!

 

Never mind if you have Foo1.cuix, and Foo2.cuix, the Ribbon shows Foo2, then Foo1 RibbonTabs... Rearranging the elements in PackageContents.xml has no change. Even in CUI Editor Foo2 is shown above Foo1.

 

Further is the issue of incorporating partial CUIx RibbonPanels via common RibbonTab ID, which must include the 'parent' RibbonTab in Main CUIx, and cannot simply be added programmatically via RibbonControl at Startup, because Autoloader loads the CUIx prior to RibbonTab being programmatically added via RibbonServices.RibbonPaletteSet.Loaded Event.

 

So in the scenario of Foo1.cuix, and Foo2.cuix, and a code generated RibbonTab "FOO" (all with same ID), the Ribbon reads ... FOO (showing Foo2 Panel), FOO (showing Foo1 Panel), FOO (blank, from code)... Less than simple, and a great distance from intuitive IMO.



"Potential has a shelf life." - Margaret Atwood


Autodesk Exchange Apps ~ Autoloader ~ AutoCAD Security

Contributor
dhaverstick
Posts: 22
Registered: ‎01-12-2004
Message 6 of 19 (772 Views)

Re: PackageContents.xml update from 2013 to 2014

08-01-2013 09:17 AM in reply to: Fredrik.Larsen

A big "Amen" to what BlackBox said! I've been fighting with CUI's and Autoloader stuff since it came out and apparently nobody at Autodesk understands that there are problems with this.

 

Darren

ADN Support Specialist
fenton.webb
Posts: 352
Registered: ‎07-24-2007
Message 7 of 19 (768 Views)

Re: PackageContents.xml update from 2013 to 2014

08-01-2013 09:59 AM in reply to: dhaverstick

The Autoloader doesn't do anything special, it just utilizes existing functionality. The reason it copies the CUIX's around is because they are per-user editable files.

 

Why the CUI is not being unreferenced when the bundle is deleted is most likely because the bundle has no ProductCode and UpgradeCode defined, or those defines are not unqiue.

 

Also, once the bundle is removed, AutoCAD must be restarted to process the 'bundle remove'





Fenton Webb

Developer Technical Services

Autodesk Developer Network


Distinguished Mentor
BlackBox_
Posts: 741
Registered: ‎02-25-2013
Message 8 of 19 (762 Views)

Re: PackageContents.xml update from 2013 to 2014

08-01-2013 10:47 AM in reply to: fenton.webb

fenton.webb wrote:

The Autoloader doesn't do anything special, it just utilizes existing functionality. The reason it copies the CUIX's around is because they are per-user editable files.

 

Why the CUI is not being unreferenced when the bundle is deleted is most likely because the bundle has no ProductCode and UpgradeCode defined, or those defines are not unqiue.

 

Also, once the bundle is removed, AutoCAD must be restarted to process the 'bundle remove'


Hi Fenton,

 

While the ProductCode, etc. precludes the CUIx from being reloaded after a given .bundle has been renamed to *.bundle.void for example, the CUIx copy(s) remain.

 

Example:

 

Each of 100 users with AutoCAD 2012, 2013, and 2014 installed, and have opened each version with an app enabled once, and then remove/rename the app .bundle, and have restarted each application once again, there's now 400 copies of the associated CUIx (100 being from the source app itself, the others in their respective version's ..\Support\ folder)... When all that is needed is one copy of the app (and the CUIx definitionally), located on the network (provided the license is free, or valid for X users; a separate topic).

 

Further, who is responsible for maintaining the product in the event a user breaks the CUIx, etc.? 

 

... Not sure that the last questions has an answer, really, but I am interested in your thoughts on the matter.

 

As always, I appreciate your time, and consideration.

 

Cheers



"Potential has a shelf life." - Margaret Atwood


Autodesk Exchange Apps ~ Autoloader ~ AutoCAD Security

ADN Support Specialist
fenton.webb
Posts: 352
Registered: ‎07-24-2007
Message 9 of 19 (738 Views)

Re: PackageContents.xml update from 2013 to 2014

08-05-2013 02:35 PM in reply to: BlackBox_

First of all, I think that is an extreme use case that will never happen, 100 users on the same machine?

 

Nevertheless, the autoloader loads partial CUIX files into the main CUIX. It makes a copy of the partial CUIX in the user's roaming support folder so that any changes that the user makes are saved. If the original bundle that houses the CUIX is removed, then any main CUIX that references the named CUIX from the bundle will no longer load the afore mentioned partial CUIX. It will not be deleted, it will simply not be loaded. If the bundle reappears again, the copied CUIX in the user's roaming support folder will be used again, unless, the bundle contains a newer partial CUIX.

 

If any of this is not the case, let me know and we will fix it.





Fenton Webb

Developer Technical Services

Autodesk Developer Network


ADN Support Specialist
fenton.webb
Posts: 352
Registered: ‎07-24-2007
Message 10 of 19 (737 Views)

Re: PackageContents.xml update from 2013 to 2014

08-05-2013 02:37 PM in reply to: fenton.webb

Just so you know, this whole mechanism is supposed to make your life easier - if it doesn't, you need to tell us why and explain how it should work better, then we will get it implemented for you.





Fenton Webb

Developer Technical Services

Autodesk Developer Network


You are not logged in.

Log into access your profile, ask and answer questions, share ideas and more. Haven't signed up yet? Register

Announcements
Are you familiar with the Autodesk Expert Elites? The Expert Elite program is made up of customers that help other customers by sharing knowledge and exemplifying an engaging style of collaboration. To learn more, please visit our Expert Elite website.

Need installation help?

Start with some of our most frequented solutions to get help installing your software.

Ask the Community