Структура OPENASINFO (shlobj_core.h)
Хранит сведения для функции SHOpenWithDialog .
Синтаксис
typedef struct _openasinfo {
LPCWSTR pcszFile;
LPCWSTR pcszClass;
OPEN_AS_INFO_FLAGS oaifInFlags;
} OPENASINFO, *POPENASINFO;
Члены
pcszFile
Тип: LPCWSTR
Указатель на имя файла.
pcszClass
Тип: LPCWSTR
Указатель на описание типа файла. Присвойте этому параметру значение NULL , чтобы использовать расширение имени файла pcszFile.
oaifInFlags
Тип: OPEN_AS_INFO_FLAGS
Характеристики диалогового окна SHOpenWithDialog . Одно или несколько из следующих значений.
OAIF_ALLOW_REGISTRATION (0x00000001)
Установите флажок "Всегда использовать эту программу". Если он не передан, он будет отключен.
OAIF_REGISTER_EXT (0x00000002)
Выполните регистрацию после нажатия кнопки ОК .
OAIF_EXEC (0x00000004)
Выполните файл после регистрации.
OAIF_FORCE_REGISTRATION (0x00000008)
Установите флажок Всегда использовать эту программу . Обычно при передаче этого значения флаг OAIF_ALLOW_REGISTRATION не используется.
OAIF_HIDE_REGISTRATION (0x00000020)
Представлено в Windows Vista. Скройте флажок Всегда использовать эту программу . Если этот флаг указан, флаги OAIF_ALLOW_REGISTRATION и OAIF_FORCE_REGISTRATION будут игнорироваться.
OAIF_URL_PROTOCOL (0x00000040)
Представлено в Windows Vista. Значение передаваемого расширения фактически является протоколом, поэтому в диалоговом окне Открыть с помощью должны отображаться приложения, зарегистрированные как способные обрабатывать этот протокол.
OAIF_FILE_IS_URI (0x00000080)
Представлено в Windows 8. Расположение, на которое указывает параметр pcszFile , указывается в виде универсального кода ресурса (URI).
Комментарии
Начиная с Windows 10 флаги OAIF_ALLOW_REGISTRATION, OAIF_FORCE_REGISTRATION и OAIF_HIDE_REGISTRATION игнорируются shOpenWithDialog. Диалоговое окно Открыть с помощью больше нельзя использовать для изменения программы по умолчанию, используемой для открытия расширения файла. С помощью SHOpenWithDialog можно открыть только один файл.
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Верхняя часть | shlobj_core.h (включая Shlobj.h) |