Hi Sangsen,
Thanks for your update.
How did you start your external commands? via the Ribbon buttons?
I loaded the same commands from two dlls via addin file. Thw two identical commands will show in the external tools drop list in Add-ins Tab with different name.
Here is the addin file. The name shows in the drop list is different: one is HelloWorld_New, the other is HelloWorld.
<?xml version="1.0" encoding="utf-8"?>
<RevitAddIns>
<AddIn Type="Command">
<Assembly>C:\test\HelloWorld\HelloWorld\bin\Debug\HelloWorld.dll</Assembly>
<ClientId>a63fafe7-690b-413c-a9e3-efdbaa0971c2</ClientId>
<FullClassName>HelloWorld</FullClassName>
<Text>HelloWorld</Text>
<Description>""</Description>
<VisibilityMode>AlwaysVisible</VisibilityMode>
<VendorId>ADSK</VendorId>
<VendorDescription>Autodesk, www.autodesk.com</VendorDescription>
</AddIn>
<AddIn Type="Command">
<Assembly>C:\test\HelloWorld\HelloWorld\bin\HelloWorld.dll</Assembly>
<ClientId>a562d3cb-e06a-4ad6-b2b7-e57b9b63618f</ClientId>
<FullClassName>HelloWorld</FullClassName>
<Text>HelloWorld_New</Text>
<Description>""</Description>
<VisibilityMode>AlwaysVisible</VisibilityMode>
<VendorId>ADSK</VendorId>
<VendorDescription>Autodesk, www.autodesk.com</VendorDescription>
</AddIn>
</RevitAddIns>
And the two commands' content is a little different on a string.
These two commands can started their own external commands, the they can show different task dialogs.
Not sure how you start the two commands? By clicking the Ribbon buttons?
For external applications, for the Tab name, you need to assign different name for the two versions. Revit doesn't allow the duplicate name. In each external application, bound its buttons to the right dll. I think this should work.
______________________________________________________________
If my post answers your question, please click the "Accept as Solution" button. This helps everyone find answers more quickly!
Joe Ye
Contractor
Developer Technical Services
Autodesk Developer Network