我正在尝试使用IMANEXTLib中的ImportCmd将Word文档保存到iManage中,每次运行时我都会获得一个新的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实例,除了我保存的那个(即,在应用程序之上)。是什么给了什么?
答案 0 :(得分:1)
只是为了提供解决方案,我注意到问题只发生在一个用户帐户(我的)下,然后我刚删除了我的用户配置文件。我的闪亮!新!个人资料没有同样的问题。
答案 1 :(得分:0)
我希望这看起来不像是一个警察,但我会联系Interwoven supprot(或者本月已经买过它们的人)。
答案 2 :(得分:0)
您可以尝试使用iManage以外的save
命令。为了进行测试,您可以创建一个演示文档文档,然后尝试从MS WORD
应用程序本身中保存word文档,以检查哪个弹出窗口是可见的。如果文档按照所需的正常行为进行保存,那么这意味着您的代码存在问题,但如果新的单词应用程序再次打开,则表明您的应用程序存在问题。
您可以在Save As
应用程序中使用iManage尝试local Save As
和MS WORD
。如果两者都正常,那么请在代码中尝试使用替代save
命令。