Hello everybody, I am stuck at my futile attempts to access Microsoft OneNote 2010 with the COM interface. I need the help of you AutoIt COM experts out there. :-) Here is the situation: I want to retrieve content from OneNote in XML format. However, all of the OneNote methods that provide XML data use out-parameters, which means that I have to use DllCall() instead of ObjCreate(). This is how far I got on my own: First, I can access OneNote from AutoIt with ObjCreate(), using this (obvious) line of code: Local $objOneNote = ObjCreate("Onenote.Application") This works fine; I used this line of code _Assert(IsObj($objOneNote)) to check that $objOneNote actually points to a COM object. Furthermore, I was able to close an open notebook with this call to CloseNotebook, a method of the OneNote API: $objOneNote.CloseNotebook("{MY_GUID}") Basically, it seems that I can access OneNote via COM. However, when I want to retrieve OneNote content as XML data, I need to use a method like GetHierarchy(), which uses an out-parameter to pass the content as an XML string. The GetHierarchy method has the following signature: HRESULT GetHierarchy( [in]BSTR bstrStartNodeID, [in]HierarchyScope hsScope, [out]BSTR * pbstrHierarchyXmlOut); (source: http://msdn.microsoft.com/en-us/library/ms788684(office.12).aspx) Since out-parameters don't work with ObjCreate, I have to use DllCall. I am trying to do something like this (Warning: The following line of code is wrong): Local $intRetVal = DllCall("Onenote.Application", "long", "GetHierarchy", "str", "", "int", 4, "str *", $sXml) $sXml - the out-parameter - comes back empty. I have two questions about this: First, I am fully aware that "Onenote.Application" has to be replaced with the correct name of the dll. How can I find the name of a dll, when I only know that "Onenote.Application" is the correct string to work with ObjCreate()? Second, are there any other problems or errors with my attempt to translate the signature of GetHierarchy() into a DllCall()? I apologize if my questions are stupid; I am not really a COM expert. (In other words: Please be gentle, it's my first time with DllCall :-) Any help will be greatly appreciated.