При внедрении в программы проверки орфографии(правописания) часто используются функции популярных пакетов OpenOffice и LibreOffice.
При работе через API-функции (COM-объекты) с пакетами OpenOffice и LibreOffice используются одни и те-же COM-объекты.
Если необходимо указать в программе какой офис используется, то для этого можно использовать функцию получения каталога программы через следующий com-объект: com.sun.star.util.OfficeInstallationDirectories (https://wiki.openoffice.org/wiki/Программирование:_Часто_задаваемые_вопросы, https://www.openoffice.org/api/docs/common/ref/com/sun/star/util/XOfficeInstallationDirectories.html#getOfficeInstallationDirectoryURL).
Пример работы с функцией на Visual Basic.NET:
Dim tempobj As New Object
tempobj = CreateObject("com.sun.star.ServiceManager")
Dim tempobjdirectory As New Object
tempobjdirectory = tempobj.createinstance("com.sun.star.util.OfficeInstallationDirectories")
Console.WriteLine("com.sun.star.util.OfficeInstallationDirectories=" & tempobjdirectory.getOfficeInstallationDirectoryURL.ToString)
По содержанию «OpenOffice»/«LibraOffice» в этой строке можно определить какой именно пакет используется программой через API-функции/COM-объекты.
Связанные статьи: OpenOffice vs LibreOffice на примере COM-объектов
При работе через API-функции (COM-объекты) с пакетами OpenOffice и LibreOffice используются одни и те-же COM-объекты.
Если необходимо указать в программе какой офис используется, то для этого можно использовать функцию получения каталога программы через следующий com-объект: com.sun.star.util.OfficeInstallationDirectories (https://wiki.openoffice.org/wiki/Программирование:_Часто_задаваемые_вопросы, https://www.openoffice.org/api/docs/common/ref/com/sun/star/util/XOfficeInstallationDirectories.html#getOfficeInstallationDirectoryURL).
Пример работы с функцией на Visual Basic.NET:
Dim tempobj As New Object
tempobj = CreateObject("com.sun.star.ServiceManager")
Dim tempobjdirectory As New Object
tempobjdirectory = tempobj.createinstance("com.sun.star.util.OfficeInstallationDirectories")
Console.WriteLine("com.sun.star.util.OfficeInstallationDirectories=" & tempobjdirectory.getOfficeInstallationDirectoryURL.ToString)
Пример результата выполнения функции:
«file:///C:/Program%20Files%20(x86)/OpenOffice%204»
Связанные статьи: OpenOffice vs LibreOffice на примере COM-объектов
Комментариев нет:
Отправить комментарий