<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity name="InvAddIn" version="1.0.0.0" /> <clrClass clsid="{2bf59d73-5170-4524-b0e1-391760aaffa5}" progid="CSharpOEMAddIn.StandardAddInServer" threadingModel="Both" name="CSharpOEMAddIn.StandardAddInServer" runtimeVersion="" /> <file name="InvAddIn.dll" hashalg="SHA1" /> </assembly>
In Assembly name, the attribute of the assemblyIdentity element is the name of the assembly, as highlighted in the following image.
The "name" attribute of the clrClass element consists of two parts, separated by periods. The first is the name of the namespace that the COM class is defined within. For this example is it CSharpOEMAddIn, and the second part is the name of the class that implements the ApplicationAddInServer interface, which is "StandardAddInServer". Both are highlighted in the following image.
call "%VS90COMNTOOLS%vsvars32" mt.exe -manifest $(ProjectDir)\InvAddin.X.manifest -outputresource:"$(TargetPath)";#2
To verify that the manifest is correctly embedded, drag the add-in .dll into Visual Studio. The "RT_MANIFEST" folder displays, as shown in the following image. Double click the "2" icon to display a window with the actual manifest data.
<?xml version="1.0" encoding="utf-16"?> <Addin Type="Standard"> <ClassId>{2bf59d73-5170-4524-b0e1-391760aaffa5}</ClassId> <ClientId>{2bf59d73-5170-4524-b0e1-391760aaffa5}</ClientId> <DisplayName>MyOEMApp</DisplayName> <Description>Inventor OEM Sample App</Description> <Assembly>MyOEMApp\MyOEMApp.dll</Assembly> <Hidden>0</Hidden> </Addin>
Descriptions of elements in the addin file example:
There can be other elements that are defined for other add-ins that either do not apply, or are ignored for an OEM primary add-in.
Copy the add-in .dll to the new folder.