[英]System.MissingMethodException error when creating new document using C# VS2012
我正在尝试使用iManage扩展库(iManExt.dll)创建新文档。 它可以在我的本地机器上正常工作。 但是,当我将其部署到另一台计算机上时,即使其中所有dll都无法正常工作。 我从桌面站点收到以下错误
System.MissingMethodException: Method not found: 'System.Type
System.Runtime.InteropServices.Marshal.GetTypeFrom CLSID(System.Guid)'.
以下是我用于创建新文档的c#代码。
private IManage.IManDocument NewDocumentProfile(IManage.IManFolder aFolder, String aFileName)
{
IManage.IManDocument NewDocument;
IMANEXTLib.ImportCmd MyCommand = new IMANEXTLib.ImportCmd();
IMANEXTLib.ContextItems MyContext = new IMANEXTLib.ContextItems();
MyContext.Add("ParentWindow", Helper.GetActiveWindow());
MyContext.Add("ImanDestinationObject", aFolder);
MyContext.Add("IManExt.Import.KeepCheckedOut", 0);
MyContext.Add("IManExt.Import.FileName", aFileName);
MyContext.Add("IManExt.CalledFromIntegration", false);
MyContext.Add("IManExt.OpenCmd.NoCmdUI", false);
MyCommand.Initialize(MyContext);
MyCommand.Update();
if (MyCommand.Status == (int)IMANEXTLib.CommandStatus.nrActiveCommand)
{
MyCommand.Execute();
NewDocument = MyContext.Item("ImportedDocument");
}
else
{
NewDocument = null;
}
return NewDocument;
}
感谢您的回答。 我解决了这个问题。 但是,我不知道为什么会这样。 当我将该dll(IMANEXTLib)的embed interop types属性设置为false时,它可以正常工作。 但是,当我将其设置为true时,它将不起作用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.