Метод IShellBrowser::BrowseObject (shobjidl_core.h)
Информирует Windows Обозреватель о переходе к другой папке.
Синтаксис
HRESULT BrowseObject(
PCUIDLIST_RELATIVE pidl,
UINT wFlags
);
Параметры
pidl
Тип: PCUIDLIST_RELATIVE
Адрес структуры ITEMIDLIST (список идентификаторов элементов), которая указывает расположение объекта. Это значение зависит от флага или флагов, установленных в параметре wFlags .
wFlags
Тип: UINT
Флаги, указывающие папку для просмотра. Это может быть ноль или одно или несколько из следующих значений.
Эти флаги указывают, нужно ли создать другое окно.
SBSP_DEFBROWSER (0x0000)
Используйте поведение по умолчанию, которое учитывает параметр представления (параметр пользователя для создания новых окон или просмотра на месте). В большинстве случаев вызывающие приложения должны использовать этот флаг.
SBSP_SAMEBROWSER
Перейдите в другую папку с тем же окном windows Обозреватель.
SBSP_NEWBROWSER
Создает другое окно для указанной папки.
Следующие флаги указывают режим . Эти значения игнорируются, если SBSP_SAMEBROWSER указано или SBSP_DEFBROWSER и пользователь выбрал кнопку Обзор на месте.
SBSP_DEFMODE
Используйте текущее окно.
SBSP_OPENMODE
Не указывает дерево папок для нового окна обзора. Если текущий браузер не соответствует SBSP_OPENMODE вызова объекта обзора, откроется новое окно.
SBSP_EXPLOREMODE
Указывает дерево папок для нового окна обзора. Если текущий браузер не соответствует SBSP_EXPLOREMODE вызова объекта обзора, откроется новое окно.
SBSP_HELPMODE
Не поддерживается. Не используйте.
SBSP_NOTRANSFERHIST
Не переносите журнал браузера в новое окно.
Следующие флаги указывают категорию параметра pidl .
SBSP_ABSOLUTE
Абсолютный ИДЕНТИФИКАТОР PIDL относительно рабочего стола.
SBSP_RELATIVE
Относительный ИДЕНТИФИКАТОР PIDL относительно текущей папки.
SBSP_PARENT
Просмотрите родительскую папку, игнорируйте PIDL.
SBSP_NAVIGATEBACK
Вернитесь назад, проигнорируйте PIDL.
SBSP_NAVIGATEFORWARD
Перейдите вперед, проигнорируйте PIDL.
SBSP_ALLOW_AUTONAVIGATE (0x00010000)
Включите автоматическую навигацию.
Следующие флаги указывают режим.
SBSP_KEEPSAMETEMPLATE (0x00020000)
Windows Vista и более поздних версий. Не поддерживается. Не используйте.
SBSP_KEEPWORDWHEELTEXT (0x00040000)
Windows Vista и более поздних версий. Навигация без очистки поля записи поиска.
SBSP_ACTIVATE_NOFOCUS (0x00080000)
Windows Vista и более поздних версий. Переход без поведения по умолчанию при настройке фокуса в новом представлении.
Следующие флаги управляют способом управления журналом в результате навигации.
SBSP_CALLERUNTRUSTED (0x00800000)
Microsoft Internet Обозреватель 6 с пакетом обновления 2 (SP2) и более поздних версий. Навигация, возможно, была инициирована веб-страницей с кодом скрипта, который уже присутствует в локальной системе.
SBSP_TRUSTFIRSTDOWNLOAD (0x01000000)
Microsoft Internet Обозреватель 6 с пакетом обновления 2 (SP2) и более поздних версий. Новое окно является результатом инициированного пользователем действия. Доверяйте новому окну, если оно немедленно попытается скачать содержимое.
SBSP_UNTRUSTEDFORDOWNLOAD (0x02000000)
Microsoft Internet Обозреватель 6 с пакетом обновления 2 (SP2) и более поздних версий. В окне выполняется переход к ненадежным, не html-файлу. Если пользователь пытается скачать файл, не разрешайте скачивание.
SBSP_NOAUTOSELECT
Подавлять выделение в области журнала.
SBSP_WRITENOHISTORY
Не записывайте журнал этой навигации в папку history Shell.
SBSP_CREATENOHISTORY (0x00100000)
0x00100000. Windows 7 и более поздние версии. Не добавляйте новую запись в журнал путешествий. Когда пользователь вводит условие поиска в поле поиска и затем уточняет запрос, браузер переходит вперед, но не добавляет дополнительную запись журнала путешествий.
SBSP_TRUSTEDFORACTIVEX (0x10000000)
Microsoft Internet Обозреватель 6 с пакетом обновления 2 (SP2) и более поздних версий. Переход должен разрешать запросы ActiveX.
SBSP_FEEDNAVIGATION (0x20000000)
Windows Internet Обозреватель 7 и более поздних версий. Если это разрешено текущими параметрами реестра, предоставьте браузеру назначение для перехода.
SBSP_REDIRECT (0x40000000)
Включает перенаправление на другой URL-адрес.
SBSP_INITIATEDBYHLINKFRAME (0x80000000)
SBSP_PLAYNOSOUND (0x00200000)
Windows 7 и более поздние версии. Не делайте навигацию полностью звуковой для каждого нажатия клавиши в поле поиска.
Возвращаемое значение
Тип: HRESULT
Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Представления могут использовать этот метод для принудительного перехода Обозреватель Windows к определенному месту в пространстве имен. Как правило, это папки, содержащиеся в представлении.
Примеры
IShellBrowser* psb;
hr = IUnknown_QueryService(punkSite, SID_STopLevelBrowser, IID_PPV_ARGS(&psb));
if (SUCCEEDED(hr))
{
hr = psb->BrowseObject(pidlSearch, SBSP_DEFBROWSER | SBSP_ABSOLUTE);
psb->Release();
}
Требования
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | shobjidl_core.h (включая Shobjidl.h) |
DLL | Shell32.dll (версия 4.0 или более поздняя) |