繁体   English   中英

使用C#VS2012创建新文档时出现System.MissingMethodException错误

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM