public class TaskPaneX : Office.ICustomTaskPaneConsumer
{
private Office.ICTPFactory _taskPaneFactory;
internal Office.CustomTaskPane _taskPane;
public void CTPFactoryAvailable(Office.ICTPFactory CTPFactoryInst)
{
try
{
_taskPaneFactory = CTPFactoryInst;
_taskPane = _taskPaneFactory.CreateCTP(
"ContosoAddin.SimpleControl", "SimpleControl", Type.Missing);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
}
1. Make sure user control class has Comvisible and ProgID defined. See for above code:[ComVisible(true)]
[ProgId("ContosoAddin.SimpleControl")]
[Guid("918E7B30-E23A-4226-85A2-181ABB514C66")]
public partial class SimpleControl : UserControl
{
public SimpleControl()
{
InitializeComponent();
}
}
2. Make sure the managed assembly must be strong name assembly and would be better if shim assembly has same GUID /ProgID.
3. First register the original shared add-in assembly:
cd C:\Windows\Microsoft.NET\Framework\v2.0.50727
regasm /codebase "<install_locationC:\Data\COMShims\2.3\Sample Managed Assemblies\TestExcel2007Addin\TestExcel2007Addin\bin\Debug\TestExcel2007Addin.dll"
4. Register shim assembly:
Regsvr32 “<shim assembly path>”
5. Test the add-in.
Hope, It helps.
No comments:
Post a Comment