Ответить на сообщение
Вернуться к теме
Вы отвечаете на сообщение:
ник: SergeyKV Я тут у akkorn'а утянул код который он позиционировал как универсальный для запуска приложения будь то офис, эксель и тд. Утащить то я утощил но тут возникли некоторые ошибки. Я так понимаю что код рабочий конечно просто я своими мозгами не догнал куда что прописать.
Option Compare Database Option Explicit 'для FileUtils_IsFilePresent2() Private Declare Function PathFileExists Lib "shlwapi.dll" Alias "PathFileExistsA" (ByVal pszPath As String) As Long 'для StartOfFile Public 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 Public Const SW_SHOWMAXIMIZED = 3 Public Const SW_SHOWDEFAULT = 10 Public Const SW_SHOWNOACTIVATE = 4 Public Const SW_SHOWNORMAL = 1 'для подстановки пути Function PathToFiles() As String PathToFiles = Application.CurrentProject.Path & "" End Function 'проверка наличия файла Function FileUtils_IsFilePresent2(ByVal strFileName As String) As Boolean FileUtils_IsFilePresent2 = PathFileExists(strFileName) End Function 'запуск файла Function StartOfFile(strNameFile As String) 'Вызывается так StartOfFile ("") Dim intResult As Integer intResult = ShellExecute(Application.hWndAccessApp, "open", strNameFile, 0, 0, SW_SHOWNORMAL) If intResult = 31 Then MsgBox "Незарегестрированный тип файла", , "(((" End If End Function 'основная рабочая функция Function OpenFile1(Optional FileName As String) If FileName = "" Then MsgBox "Не задано имя файла..", , "Упс!" GoTo End01 End If If FileUtils_IsFilePresent2(PathToFiles & FileName) = True Then StartOfFile (PathToFiles & FileName) Else MsgBox " Данный файл" & vbCrLf & "изволит отсутствовать..", , "' " & FileName & " '" End If End01: End Function
OpenFile1 ("db1")
Ваше имя:
Пароль:
Сообщение:
Прикрепить:
Для вставки смайлов в текст щелкните по значку.