Hi Carl,
On 07.05.2022 19:40, Carl Marcum wrote:
Hi Rony,
On 5/5/22 6:31 AM, Rony G. Flatscher (Apache) wrote:
Curious about the Windows version of AOO and its support via OLE/COM:
* What are the ProgIds to use to automate AOO? Found the following ones with "office", "star" in
them:
G:\tmp\orx\ole\oleinfo\work>listProgIds.rex office
# 415/2226: ProgId: [Dropbox.OfficeAddIn]
# 815/2226: ProgId: [Lync.UCOfficeIntegration]
# 918/2226: ProgId: [Microsoft.Office.List.OLEDB]
# 1193/2226: ProgId: [OcOffice.FormRegionContext]
# 1194/2226: ProgId: [OcOffice.OcForms]
# 1195/2226: ProgId: [OcOffice.OneNoteHelper]
# 1196/2226: ProgId: [Office.awsdc]
# 1197/2226: ProgId: [Office.LocalSyncClient]
# 1198/2226: ProgId: [OfficeCompatible.Application.x86]
# 1199/2226: ProgId: [OfficeTheme]
# 1278/2226: ProgId: [PDFMaker.OfficeAddin]
# 1560/2226: ProgId: [soffice.StarCalcDocument.6]
# 1561/2226: ProgId: [soffice.StarDrawDocument.6]
# 1562/2226: ProgId: [soffice.StarImpressDocument.6]
# 1563/2226: ProgId: [soffice.StarMathDocument.6]
# 1564/2226: ProgId: [soffice.StarWriterDocument.6]
# 1928/2226: ProgId: [TFCOfficeShim.Connect]
# 1929/2226: ProgId: [TFCOfficeShim.ControlHost.14]
# 1930/2226: ProgId: [TFCOfficeShim.GetAddIn]
G:\tmp\orx\ole\oleinfo\work>listProgIds.rex star
# 175/2226: ProgId: [bhWM2Core.ctlServerStartscreen]
# 179/2226: ProgId: [bhWM2Core.ctlStartscreen]
# 319/2226: ProgId: [com.sun.star.ServiceManager]
# 772/2226: ProgId: [JavaWebStart.isInstalled]
# 1560/2226: ProgId: [soffice.StarCalcDocument.6]
# 1561/2226: ProgId: [soffice.StarDrawDocument.6]
# 1562/2226: ProgId: [soffice.StarImpressDocument.6]
# 1563/2226: ProgId: [soffice.StarMathDocument.6]
# 1564/2226: ProgId: [soffice.StarWriterDocument.6]
Trying to get at the published interfaces for e.g.
"soffice.StarWriterDocument.6" does not
return any published methods, properties, events and constants as is the
case with MS Office. So
wondering whether there are other ProgIDs for AOO on Windows registered that
one should use
instead? (Usually there are version independent ProgIDs which seems to not
be the case here.)
* Is there an AOO typelib available that would supply the published interfaces
usable via OLE? If
so what would be the name and how would one install them?
---rony
This may not be what you're looking for but I found this about an OLE bridge
[1].
From the spec...
"The bridge is automatically used when someone access the Office through the COM mechanism. This
is done by creating the service manager component, that has the ProgId
"com.sun.star.ServiceManager". The service manager can then be used to create additional UNO
services. There is no explicit mapping from COM to UNO or vice versa necessary. All objects which
have been obtained directly or indirectly from the service manager are already COM objects. "
[1] https://www.openoffice.org/udk/common/man/spec/ole_bridge.html
Best regards,
Carl
After reading through the documentation it is clear that (as impressive as the COM/UNO integration
is!) no type information gets published via OLE, cf.
<https://www.openoffice.org/udk/common/man/spec/ole_bridge.html#a9>:
9 Limitations of the dispatch objects
The dispatch objects provided by the bridge do not support type information.
IDispatch::GetTypeInfoCount and IDispatch::GetTypeInfo return E_NOTIMPL.
Moreover there are no
COM type libraries available and the dispatch objects do not implement
IProvideClassInfo as well.
IDispatch::GetIDsOfName has to be called for every name separately. That
this one cannot query
the ids for several names at a time.
IDispatch::Invoke does not support named arguments nor the pExcepInfo and
puArgErr parameter.
---
Not sure whether attachments get stripped on this mailing list or not. But if the attachments get
through you will see how an OLE/COM object that publishes its interfaces can get exploited to create
on-the-fly documentation that is meant for helping programmers. The documentation in this case is
for the MS Internet Explorer (but Excel, Word, PowerPoint, Outlook, AutoCAD, etc. would work as
well). It would have been great if the same would have been possible for AOO!
Again, thank you for researching and your link that is very interesting!
Best regards
---rony
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org