Поделиться через


Структура 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)