.net iManager ImportCmd启动Word的新实例

.net iManager ImportCmd启动Word的新实例,.net,vb.net,vsto,imanage,.net,Vb.net,Vsto,Imanage,我正试图使用来自IMANEXTLib的ImportCmd将Word文档保存到iManager中,并且每次运行它时都会得到一个新的Word实例 我已将文档保存到doc1.doc,然后: 'Connects to WorkSite Dim dmsConnection As IManage.IManDMS = New IManage.ManDMSClass() dmsConnection.ApplicationName = "My Application" Dim se

我正试图使用来自IMANEXTLib的ImportCmd将Word文档保存到iManager中,并且每次运行它时都会得到一个新的Word实例

我已将文档保存到doc1.doc,然后:

    'Connects to WorkSite
    Dim dmsConnection As IManage.IManDMS = New IManage.ManDMSClass()
    dmsConnection.ApplicationName = "My Application"
    Dim sesCobbDms As IManage.IManSession = dmsConnection.Sessions.Add("DMS")
    sesCobbDms.TrustedLogin()

    'Initialisation
    Dim hwndWord As Integer
    Dim strTempCaption As String = Application.Caption
    Application.Caption = "Hunting For Word"
    hwndWord = MyApi.FindWindow("OpusApp", Application.Caption)
    Application.Caption = strTempCaption
    Dim intKeepCheckedOut As Integer
    Dim docJustSaved As IManage.NRTDocument
    Dim objImportCmd As IMANEXTLib.ImportCmd
    Dim objContextItems As New IMANEXTLib.ContextItems

    'Sets up ContextItems ready for save process
    objContextItems.Add("ParentWindow", hwndWord)
    objContextItems.Add("DestinationObject", sesCobbDms)
    objContextItems.Add("IManExt.Import.FileName", NrPort & "\Doc1.doc")
    'Note that we have to check it in and then back out again, otherwise it checks out to the wrong place
    intKeepCheckedOut = IManage.CheckinOptions.nrDontKeepCheckedOut
    objContextItems.Add("IManExt.Import.KeepCheckedOut", intKeepCheckedOut)
    'Forces a blank description
    objContextItems.Add("ImanExt.Import.DocDescription", "")


    objImportCmd = New IMANEXTLib.ImportCmd
    objImportCmd.Initialize(objContextItems)
    objImportCmd.Update()

    If objImportCmd.Status = IMANEXTLib.CommandStatus.nrActiveCommand Then
        'Imports the document, throwing a Save As screen at the user
        objImportCmd.Execute()

在这一点上,我得到了Word的一个新实例,在我从中保存的实例之上(即,在应用程序之上)。给出了什么?

我希望这看起来不是一个借口,但我会联系Interwoven supprot(或本月购买它们的人)。

为了提供解决方案,我注意到问题只发生在一个用户帐户(我的)下,然后我删除了我的用户配置文件。我的眼睛闪闪发亮!新的!配置文件没有相同的问题。

您可以尝试使用iManager以外的
save
命令。对于测试,您可以创建一个演示word文档,然后尝试从
MS word
应用程序本身保存word文档,以检查哪个弹出窗口可见。如果文档以所需的正常行为保存,则表示代码有问题,但如果再次打开新的word应用程序,则说明应用程序有问题


您可能可以在
MS WORD
应用程序中使用iManager尝试
另存为
本地另存为
。如果两者都可以正常工作,那么尝试在代码中使用另一个
save
命令。

Autonomy是本月买下它们的人。嘿,我正在尝试做一些非常类似的事情。但是在第一个跨栏时摔倒了!我以前使用过iManager,通过添加对Interop.IManage(位于GAC中)的引用来实现。如何添加对IManExt的引用???Thanks@SteveCl您需要使用tlbimp为COM DLL创建互操作DLL,然后将其导入GAC。