Получить путь установки winzip в vb6 - PullRequest
0 голосов
/ 17 мая 2010

Как узнать путь к приложению, установленному на машине, из приложения VB6? Для меня мне нужно получить путь для WinZip.

Ответы [ 3 ]

1 голос
/ 17 мая 2010

Прочитайте раздел реестра по этому пути:

HKEY_LOCAL_MACHINE\SOFTWARE\Nico Mak Computing\WinZip\Program\zip2exe

Путь , - путь установки WinZip

1 голос
/ 17 мая 2010

Я думаю, вы могли бы сделать что-то подобное, используя функцию API FindExecutable (сначала создайте файл с именем test.zip в c: \ temp) Эта информация взята из этой ссылки.

Const MAX_FILENAME_LEN = 260
Private Declare Function FindExecutable Lib "shell32.dll" Alias "FindExecutableA" (ByVal lpFile As String, _ ByVal lpDirectory As String, ByVal lpResult As String) As Long

Private Sub Form_Load()
Dim i As Integer, s2 As String
Const sFile = "C:\\temp\\test.zip"

'Check if the file exists
If Dir(sFile) = "" Or sFile = "" Then
MsgBox "File not found!", vbCritical
Exit Sub
End If
'Create a buffer
s2 = String(MAX_FILENAME_LEN, 32)
'Retrieve the name and handle of the executable, associated with this file
i = FindExecutable(sFile, vbNullString, s2)
If i > 32 Then
MsgBox Left$(s2, InStr(s2, Chr$(0)) - 1)
Else
MsgBox "No association found !"
End If
End Sub
0 голосов
/ 17 мая 2010

Я не знаю, каковы ваши требования или ситуация, но обычно при вызове внешнего инструмента путь и параметры настраиваются. То есть оператор программы может настроить приложение на использование WinRAR, если на нем не установлен WinZip.

Если у вас уже есть настроенный механизм конфигурации, его должно быть очень легко реализовать, и он гораздо более гибкий, чем жесткое кодирование для определенного программного обеспечения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...