[IronPython] Word Automation
Tim Riley
riltim at gmail.com
Sun Jun 19 21:33:10 CEST 2005
<snip>
> >>>>>> mApp.Documents.Open("c:\tmp\Doc1.doc")
> >>>
> >>>
> System.Runtime.InteropServices.COMException: The document name or path is not va
> lid.
> Try one or more of the following:
> * Check the path to make sure it was typed correctly.
> (c: mp\Doc1.doc)click Open. Search for the file using this dialog box.
> at input_6.Run(Frame frame)
</snip>
You need to escape the backslashes. Should have been
"c:\\tmp\\Doc1.doc". Also \t translate to a tab which is shown in the
error.
Tim Riley
On 6/19/05, kbond <kbond at free.fr> wrote:
> Hello,
>
> Congratulation, for this new release correcting some bugs around the
> "PIA ComObject Operations".
> I spent the last hours playing around with this great feature of ironpython and I would like to share with you a couple
> of things.
> Some are working fine some seems strange to me but it
> might be because I am missing something and some that are not working.
>
>
>
> Scenario 1
>
> IronPython 0.7.6 on .NET 2.0.50215.44
> Copyright (c) Microsoft Corporation. All rights reserved.
>
> >>>>>> import sys
> >>>>>> sys.LoadAssemblyByName("Microsoft.Office.Interop.Word")
> >>>>>> import Microsoft.Office.Interop.Word as wordApp
> >>>>>> mApp= wordApp.ApplicationClass()
> >>>>>> mApp.visible
> >>>
> >>>
> False
>
> >>>>>> mApp.visible = True
> >>>>>> mApp.Documents.Open("c:\tmp\Doc1.doc")
> >>>
> >>>
> System.Runtime.InteropServices.COMException: The document name or path is not va
> lid.
> Try one or more of the following:
> * Check the path to make sure it was typed correctly.
> (c: mp\Doc1.doc)click Open. Search for the file using this dialog box.
> at input_6.Run(Frame frame)
>
> >>>>>>
> >>>
> >>>
> ####### I do not undertstand why this is not working however a
> slightly modified statement is working well##########
>
>
> >>>>>> doc1 = mApp.Documents.Open(r'c:\tmp\Doc1.doc')
> >>>>>> doc1.Save()
> >>>>>> doc1.Close()
> >>>
> >>>
>
>
> Scenario 2
>
> >>>>>> doc1 = mApp.Documents.Open(r'c:\tmp\Doc1.doc')
> >>>>>> doc2 = mApp.Documents.Add()
> >>>>>> doc2.SaveAs(r"c:\tmp\Doc2.doc")
> >>>>>> for i in mApp.Documents:
> >>>
> >>>
> ... print i.Name
> ...
> System.Runtime.InteropServices.COMException: Unknown name. (Exception from HRESU
> LT: 0x80020006 (DISP_E_UNKNOWNNAME))
> at System.RuntimeType.InvokeDispMethod(String name, BindingFlags invokeAttr,
> Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[]
> namedParameters)
> at System.RuntimeType.InvokeMember(String name, BindingFlags bindingFlags, Bi
> nder binder, Object target, Object[] providedArgs, ParameterModifier[] modifiers
> , CultureInfo culture, String[] namedParams)
> at input_24.Run(Frame frame)
>
> ###### I do not understand why I cannot iterate in the collection of
> Documents######
> ###### May be this is not supposed to work but it would be amazingly
> efficient########
>
>
> >>>>>> mApp.Documents("Doc1.doc").Activate()
> >>>
> >>>
> System.Runtime.InteropServices.COMException: Unknown name. (Exception from HRESU
> LT: 0x80020006 (DISP_E_UNKNOWNNAME))
> at System.RuntimeType.InvokeDispMethod(String name, BindingFlags invokeAttr,
> Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[]
> namedParameters)
> at System.RuntimeType.InvokeMember(String name, BindingFlags bindingFlags, Bi
> nder binder, Object target, Object[] providedArgs, ParameterModifier[] modifiers
> , CultureInfo culture, String[] namedParams)
> at input_29.Run(Frame frame)
>
> ##### Another problem when working with a collection of documents #####
> ##### I cannot select a given document using its Name #####
>
> Scenario 3
> ##### I would like to translate the following vb statement in python######
> #vb#### Documents.Open FileName:="C:\Files\Doc.doc", ReadOnly:=True####
> >>> doc3 = mApp.Documents.Open(FileName='c:\tmp\Doc1.doc', ReadOnly= True)
>
> System.Exception: this object is not callable with keyword parameters
> at input_32.Run(Frame frame)
>
> #### Obviously, my guess was wrong but I do not have any idea on how
> to do such thing any advise would be more than welcome######
>
>
> Could you please help me to positionned win32com and IronPython?
> Would it be possible to do the same things with IronPython than with win32com?
> Thank you very much for your answers, I hope that will help you .....
>
> Regards
>
>
> _______________________________________________
> users-ironpython.com mailing list
> users-ironpython.com at lists.ironpython.com
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>
More information about the Ironpython-users
mailing list