鉴于:
override object RequestComAddInAutomationService()
返回Facade
在我的场景中调用的类的实例。AddIn.Object
以获取 Facade 并使用它。更新:原来是特定用户有问题。她一直都有,别人从来没有(?永远不要说“从不”)
在这“几次”中,我得到
错误:对象变量或未设置块变量
在试图访问Facade
. 简而言之,我可以告诉您,其中的代码RequestComAddInAutomationService()
没有任何容易出错的魔法,而且用于访问加载项的 VBA 代码也取自网络,看起来也不错。更长的版本尚未推出,对于那些花时间阅读它的人:-)
问题:有没有人知道为什么会发生这种情况?是Excel问题吗?
承诺的细节:
我的插件.cs:
public partial class MyAddIn
{
public Facade Facade { get; private set; }
protected override object RequestComAddInAutomationService()
{
if (this.Facade == null)
this.Facade = new Facade(Controller.Instance);
return this.Facade;
}
}
Run Code Online (Sandbox Code Playgroud)
Facade.cs:
[ComVisible(true)]
[Guid("1972781C-A71A-48cd-9675-AE47EACE95E8")]
[InterfaceType(ComInterfaceType.InterfaceIsDual)]
public interface IFacade
{
// some methods
}
[ComVisible(true)]
[ClassInterface(ClassInterfaceType.None)]
public …
Run Code Online (Sandbox Code Playgroud)