• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Определить Что Установлено

dimat

Well-known member
31.07.2008
508
0
BIT
0
Всем привет!
У некоторых пользователей установлен MS Office, а у некоторых OpenOffice.
1. Какими способами возможно определить что установлено?
2. Как открыть указанный файл в Excel или Calc?
 
M

morpheus

под виндой

1. Реестр (ключи)
2. Попробовать создать сом-обьект мс оффиса и обработать ошибку

открывать файл в винде - через Shell - тогда будет открываться в программе по умолчанию
 
Y

Yakov

Вот кусок кода, который делает, что надо. Указанный файл открывается той программой, которая ассоциирована с его типом.
Код:
	Private Sub openFile(fileName As String)
Dim objShell As Variant
Dim objFolder As Variant
Dim objFolderItem As Variant
Dim folder As String
Dim file As String
folder = Strleftback(fileName, "\")
file = Strrightback(fileName, "\")
Set objShell = CreateObject("Shell.Application")
If objShell Is Nothing Then
Print "shell object not created"
Exit Sub
End If
Set objFolder = objShell.NameSpace((folder))
If objFolder Is Nothing Then
Print "no folder: " + folder
Exit Sub
End If
Set objFolderItem = objFolder.ParseName(file)
objFolderItem.InvokeVerbEx("Open")
End Sub
 
M

morpheus

Yakov
ого, а зачем если можно ещ' проще
Код:
Set WShell = CreateObject("WScript.Shell") 
ReturnCode = WShell.Run("C:\1.doc", 1, False)
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!