powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как в Excel, с помощью VBA получить
7 сообщений из 7, страница 1 из 1
Как в Excel, с помощью VBA получить
    #33497463
Aviz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
список всех установленны прог в Windows?
...
Рейтинг: 0 / 0
Как в Excel, с помощью VBA получить
    #33497546
Андрей Il
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В ветви реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall прописаны все установленные проги.
...
Рейтинг: 0 / 0
Как в Excel, с помощью VBA получить
    #33497643
Aviz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это понятно, спасбо. Но какая функция возвращает этот список?
...
Рейтинг: 0 / 0
Как в Excel, с помощью VBA получить
    #33497922
Андрей Il
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно экспортировать указанную выше ветвь в файл и составить список из всех значений DisplayName в этом файле.
...
Рейтинг: 0 / 0
Как в Excel, с помощью VBA получить
    #33497943
Можно через WMI.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
Call ProgrammList

Sub ProgrammList()
    On Error Resume Next
       
    Dim objWMIService
    Dim colItems
    Dim objItem
    Dim strComputer

    strComputer = "."
    
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
    
    Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_Product")

    For Each objItem In colItems
        MsgBox "Название: " & objItem.Name _
          & " Описание: " & objItem.Description _
          & " Дата установки: " & fnWMIDateStringToDate(objItem.InstallDate2) _
          & " Продавец: " & objItem.Vendor _
          & " Версия: " & objItem.Version
    Next
End Sub

Function fnWMIDateStringToDate( _
  dtmDate)
   fnWMIDateStringToDate = CDate(Mid(dtmDate,  5 ,  2 ) & "/" & _
     Mid(dtmDate,  7 ,  2 ) & "/" & Left(dtmDate,  4 ) & " " & _
     Mid(dtmDate,  9 ,  2 ) & ":" & Mid(dtmDate,  11 ,  2 ) & ":" & Mid(dtmDate,  13 ,  2 ))
End Function
...
Рейтинг: 0 / 0
Как в Excel, с помощью VBA получить
    #33497983
Андрей Il
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таким методом я пробовал. Выдает 6 программ.
При чтении экспортированного файла реестра находится около 30 программ.
...
Рейтинг: 0 / 0
Как в Excel, с помощью VBA получить
    #33498003
Фотография SmeL_md
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AvizЭто понятно, спасбо. Но какая функция возвращает этот список?Просто ищем в форуме как работать с реестром.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как в Excel, с помощью VBA получить
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]