Страница 1 из 1
Запуск Excel
Добавлено: 10 окт 2019, 11:23
kad3
Добрый день!
Подскажите как запустить Excel из Mapbasic
конструкция вида
Код: Выделить всё
Run Program "C:\Program Files (x86)\Microsoft Office\Office14\Excel.exe"
не подходит т.к. Excel может быть установлен где угодно. Или как возможно получить путь где установлен Excel.
Re: Запуск Excel
Добавлено: 10 окт 2019, 11:43
trir
Re: Запуск Excel
Добавлено: 10 окт 2019, 11:55
kad3
А как мне это использовать в mapbasic?
Можно примерчик?
Re: Запуск Excel
Добавлено: 10 окт 2019, 13:28
trir
нельзя, нужно пытать реестр - там всё записанно
Re: Запуск Excel
Добавлено: 11 окт 2019, 06:56
kad3
Если вдруг кому интересно
Код: Выделить всё
function GetExePath (Byval ExeName as string) as string
Dim lRetVal As integer
Dim hKey,sType,Ssize As integer
Dim sValue,SKey As String
GetExePath="c:\program files\"
sType =REG_SZ
Ssize =1024
SKey="Software\Microsoft\Windows\CurrentVersion\App Paths\" & ExeName
lRetVal = RegOpenKey(HKEY_LOCAL_MACHINE,SKey,hKey)
If lRetVal <> ERROR_SUCCESS Then
exit function
Else
sValue =string$(ssize,chr$(32))
lRetVal = RegQueryValueEx(hKey,"Path", 0, sType , sValue, Ssize )
If lRetVal <> ERROR_SUCCESS Then
exit function
Else
GetExePath =rtrim$(sValue)
if right$(rtrim$(sValue),1)<>"\" then
GetExePath=rtrim$(sValue) & "\"
end if
End If
lRetVal = RegCloseKey(hKey)
End If
End function
Re: Запуск Excel
Добавлено: 11 окт 2019, 07:52
MI user
Re: Запуск Excel
Добавлено: 11 окт 2019, 13:06
gamm
kad3 писал(а): ↑10 окт 2019, 11:23
Подскажите как запустить Excel из Mapbasic
а зачем вам его запускать? Если нужно использовать, то дергайте через старый добрый DDE (Глава 11 мануала по Мапвасику) или AciveX (или как оно нынче называется), сочинив соответствующую DLL.