powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / чтение реестра
6 сообщений из 6, страница 1 из 1
чтение реестра
    #32148941
Света_3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как узнать путь к файлу excel.exe? Надо запустить Excel из приложения не поддерживающего OLE и VBA
...
Рейтинг: 0 / 0
чтение реестра
    #32148964
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>из приложения не поддерживающего OLE и VBA
0. А что, поэтому приложению форума нет?
1. А что, поиск в реестре слова excel.exe ни чего не дал?
2. Найди все файлы екцеля (их м.б. несколько), сравни версии, выбери наиболее свежую, в далее функция типа Shell...
...
Рейтинг: 0 / 0
чтение реестра
    #32148965
Фотография DIKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попрубуй так:


Код: plaintext
1.
2.
3.
4.
5.
6.
Private Declare Function ShellExecute Lib  "Shell32.dll"  _
    Alias  "ShellExecuteA"  (ByVal Hwnd As Long, ByVal _
    lpOperation As String, ByVal lpFile As String, ByVal _
    lpParameters As String, ByVal lpDirectory As String, _
    ByVal nShowCmd As Long) As Long

ShellExecute  0 ,  "open" , NAME_FILE, "", App.Path, SW_SHOWNORMAL
...
Рейтинг: 0 / 0
чтение реестра
    #32149028
Света_3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
0. Форум есть, но вообще никто не знает, как теми средствами прочитать реестр. Как запустить - это понятно - эта штучка работает через DDE, не понятно одно как из реестра вытащить путь к файлу excel.exe.
т.е. нужна dll - возвращающая путь к файлу excel.exe
...
Рейтинг: 0 / 0
чтение реестра
    #32149072
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>не понятно одно как из реестра вытащить путь к файлу excel.exe.

Тогда п.2
Ищеш сам екцел в реестре или упоминание о каталоге установки офиса (тогда надо добавить только +"\Office\excеl.exe"/ Структура реестра у всех компов одинакова (надо только уточнить отличие NT от 9х)
...
Рейтинг: 0 / 0
чтение реестра
    #32149130
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Форум есть, но вообще никто не знает, как теми средствами прочитать реестр.

Знаем, только VB у нас нет. Держи вордовский макрос. Перевод в VB, обработка ошибок, оформление процедур - на твоей совести:

Код: 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.
31.
32.
33.
34.
35.
36.
37.
38.
39.
Private Declare Function RegOpenKeyEx Lib  "advapi32"  Alias _
       "RegOpenKeyExA"  (ByVal hKey As Long, ByVal lpSubKey As String, _
      ByVal dwReserved As Long, ByVal samDesired As Long, phkResult _
      As Long) As Long

      Private Declare Function RegQueryValueEx Lib  "advapi32"  Alias _
       "RegQueryValueExA"  (ByVal hKey As Long, ByVal lpValueName$, ByVal _
      lpdwReserved As Long, lpdwType As Long, lpData As Any, lpcbData As _
      Long) As Long

      Private Declare Function RegCloseKey Lib  "advapi32"  (ByVal hKey As _
      Long) As Long

      Const REG_SZ =  1 
      Const HKEY_CLASSES_ROOT = - 2147483648 #
' -------------------------------------------------------------------------------
 
Sub GetExcelPath()
Dim lcExt As String
Dim lcPath As String
Dim hKey As Long
Dim x1, x2 As Integer
lcString =  ".XLS" 
lcPath = Space( 256 )
nPath =  256 
RegOpenKeyEx HKEY_CLASSES_ROOT, lcString,  0 ,  0 , hKey
RegQueryValueEx hKey,  "", 0 ,  0 , ByVal lcPath, nPath
RegCloseKey hKey
lcString = Left(lcPath, nPath -  1 ) & "\Shell\Open\Command "
lcPath = Space(256 )
nPath =  256 
RegOpenKeyEx HKEY_CLASSES_ROOT, lcString,  0 ,  0 , hKey
RegQueryValueEx hKey, "",  0 , REG_SZ, ByVal lcPath, nPath
RegCloseKey hKey
lcPath = Left(lcPath, nPath- 1 )
x1 = InStr( 1 , lcPath, Chr( 34 )) +  1 
x2 = InStr( 2 , lcPath, Chr( 34 ))
lcPath=Mid(lcPath, x1, x2 - x1)
Shell lcPath
End Sub
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / чтение реестра
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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