Type SHELLEXECUTEINFO cbSize As Long fMask As Long hwnd As Long lpVerb As String lpFile As String lpParameters As String lpDirectory As String nShow As Long hInstApp As Long lpIDList As Long lpClass As String hkeyClass As Long dwHotKey As Long hIcon As Long hProcess As Long End Type
Структура SHELLEXECUTEINFO содержит информацию для функции ShellExecuteEx
SEE_MASK_CLASSKEY = &H3 | Используется hkeyClass |
SEE_MASK_CLASSNAME = &H1 | Используется lpClass |
SEE_MASK_CONNECTNETDRV = &H80 | Проверка на расшаренность файла и связь с диском. lpFile является универсальным именем (UNC) файла в сети |
SEE_MASK_DOENVSUBST = &H200 | Расширяет среду переменных окружения в lpDirectory или lpFile |
SEE_MASK_FLAG_DDEWAIT = &H100 | If ShellExecuteEx starts a DDE conversation, wait for that conversation to finish before the function returns. |
SEE_MASK_FLAG_NO_UI = &H400 | Не показывать диалоговое окно ошибки в случае ее возникновения |
SEE_MASK_HOTKEY = &H20 | Используется dwHotKey |
SEE_MASK_ICON = &H10 | Используется hIcon |
SEE_MASK_IDLIST = &H4 | Используется lpIDList |
SEE_MASK_INVOKEIDLIST = &HC | Используется lpIDList |
SEE_MASK_NOCLOSEPROCESS = &H40 | Используется hProcess |
"explore" | Если lpFile имя файла, то открывает его в Проводнике |
"open" | Открывает lpFile с помощью связанной с этим типом файла программой. Открытие исполняемых файлов запускает файл |
"print" | Печать lpFile с использованием связанной с печатью программой |
SW_HIDE = 0 | Скрыть окно |
SW_MAXIMIZE = 3 | Развернуть окно |
SW_MINIMIZE = 6 | Свернуть окно |
SW_RESTORE = 9 | Восстановить окно |
SW_SHOW = 5 | Показать окно |
SW_SHOWMAXIMIZED = 3 | Показать открытое окно развернутым |
SW_SHOWMINIMIZED = 2 | Показать открытое окно свернутым |
SW_SHOWMINNOACTIVE = 7 | Показать открытое окно свернутым,но не активировать его |
SW_SHOWNA = 8 | Показать открытое окно в текущем состоянии, но не активировать его |
SW_SHOWNOACTIVATE = 4 | Показать открытое окно в текущих размерах и позиции, но не активировать его |
SW_SHOWNORMAL = 1 | Показать открытое окно и активировать его (как обычно) |
SE_ERR_ACCESSDENIED = 5 | В доступе отказано |
SE_ERR_ASSOCINCOMPLETE = 27 | Нет информации об ассоциации файла |
SE_ERR_DDEBUSY = 30 | Операция DDE занята |
SE_ERR_DDEFAIL = 29 | Операция DDE не прошла |
SE_ERR_DDETIMEOUT = 28 | The DDE operation timed out |
SE_ERR_DLLNOTFOUND = 32 | Требуемый DLL не найден |
SE_ERR_FNF = 2 | Файл не найден |
SE_ERR_NOASSOC = 31 | Нет ассоциированнй программы для требуемого действия |
SE_ERR_OOM = 8 | Недостаточно памяти |
SE_ERR_PNF = 3 | Путь не найден |
SE_ERR_SHARE = 26 | Расшаренный файл не открывется |
HOTKEYF_ALT = &H4 | Клавиша Alt как модификатор |
HOTKEYF_CONTROL = &H2 | Клавиша Ctrl как модификатор |
HOTKEYF_EXT = &H8 | Дополнительная клавиша как модификатор |
HOTKEYF_SHIFT = &H1 | Клавиша Shift как модификатор |