Api функции windows: Структуры и функции Windows API
Содержание
Основные функции API оболочки клиента — Win32 apps
Twitter
LinkedIn
Facebook
Адрес электронной почты
-
Статья -
- Чтение занимает 2 мин
-
В следующей таблице представлен обзор основных функций для API клиентской оболочки Windows удаленного управления (WinRM).
Базовые функции | Описание: |
---|---|
WSManCloseCommand | Закрывает команду. |
WSManCloseOperation | Закрывает операцию. |
WSManCloseSession | Закрывает сеанс WinRM. |
WSManCloseShell | Закрывает объект оболочки. |
WSManConnectShell | Подключается к существующему сеансу сервера. |
WSManConnectShellCommand | Подключается к существующей команде, выполняемой в оболочке. |
WSManCreateSession | Создает сеанс WinRM. |
WSManCreateShell | Создает объект оболочки. |
WSManCreateShellEx | Создает объект оболочки с помощью той же функции, что и функция WSManCreateShell , с добавлением идентификатора оболочки, заданного клиентом. |
WSManDeinitialize | Деинициализирует стек клиента WinRM. |
WSManDisconnectShell | Отключает сетевое подключение активной оболочки и связанных с ней команд. |
WSManInitialize | Инициализирует WinRM. |
WSManReceiveShellOutput | Получает выходные данные оболочки. |
WSManReconnectShell | Повторно подключает ранее отключенный сеанс оболочки. Чтобы повторно подключить связанные команды сеанса оболочки, используйте WSManReconnectShellCommand. |
WSManReconnectShellCommand | Повторно подключает ранее отключенную команду. |
WSManRunShellCommand | Выполняет команду оболочки. |
WSManRunShellCommandEx | Предоставляет те же функции, что и функция WSManRunShellCommand с добавлением параметра идентификатора команды. |
WSManSendShellInput | Отправляет входные данные в оболочку. |
WSManSignalShell | Сигнализирует оболочке. |
Пошаговое руководство. Вызов API Windows — Visual Basic
-
Статья -
- Чтение занимает 7 мин
-
API Windows — это библиотеки динамической компоновки (DLL), которые являются частью операционной системы Windows. Они используются для выполнения задач, когда трудно написать эквивалентные процедуры самостоятельно. Например, Windows предоставляет функцию с именем FlashWindowEx
, которая позволяет сделать строку заголовка приложения чередующейся между светлыми и темными оттенками.
Преимущество использования API Windows в коде заключается в том, что они позволяют сэкономить время разработки, так как они содержат десятки полезных функций, которые уже написаны и ожидают использования. Недостаток заключается в том, что api Windows может быть трудно работать с и неумолим, когда все идет не так.
API-интерфейсы Windows представляют собой специальную категорию взаимодействия. Api Windows не используют управляемый код, не имеют встроенных библиотек типов и используют типы данных, отличные от тех, которые используются в Visual Studio. Из-за этих различий и из-за того, что API Windows не являются COM-объектами, взаимодействие с API Windows и платформа .NET Framework выполняется с помощью вызова платформы или PInvoke. Вызов платформы — это служба, которая позволяет управляемому коду вызывать неуправляемые функции, реализованные в библиотеках DLL. Дополнительные сведения см. в разделе Использование неуправляемых функций DLL. Вы можете использовать PInvoke в Visual Basic с помощью инструкции Declare
или применения атрибута DllImport
к пустой процедуре.
Вызовы API Windows в прошлом были важной частью программирования на Visual Basic, но редко необходимы в Visual Basic .NET. По возможности для выполнения задач следует использовать управляемый код из платформа .NET Framework вместо вызовов API Windows. В этом пошаговом руководстве содержатся сведения о ситуациях, в которых необходимо использовать API Windows.
Примечание
Отображаемые на компьютере имена или расположения некоторых элементов пользовательского интерфейса Visual Studio могут отличаться от указанных в следующих инструкциях. Это зависит от имеющегося выпуска Visual Studio и используемых параметров. Дополнительные сведения см. в разделе Персонализация среды IDE.
Вызовы API с помощью объявления
Наиболее распространенным способом вызова API Windows является использование инструкции Declare
.
Объявление процедуры DLL
Определите имя функции, которую требуется вызвать, а также ее аргументы, типы аргументов и возвращаемое значение, а также имя и расположение библиотеки DLL, содержащей ее.
Примечание
Полные сведения об API-интерфейсах Windows см. в документации по пакету SDK для Win32 в api Windows для пакета SDK для платформы. Дополнительные сведения о константах, используемых API-интерфейсами Windows, см. в файлах заголовков, таких как Windows.h, входящих в пакет SDK для платформы.
Откройте новый проект приложения Windows, щелкнув Создать в меню Файл и выбрав Проект. Откроется диалоговое окно Новый проект .
Выберите Приложение Windows в списке шаблонов проектов Visual Basic. Отобразится новый проект.
Добавьте следующую
Declare
функцию в класс или модуль, в котором вы хотите использовать библиотеку DLL:Declare Auto Function MBox Lib "user32.dll" Alias "MessageBox" ( ByVal hWnd As Integer, ByVal txt As String, ByVal caption As String, ByVal Typ As Integer) As Integer
Части оператора Declare
Оператор Declare
включает следующие элементы.
Автоматический модификатор
Модификатор Auto
указывает среде выполнения преобразовать строку на основе имени метода в соответствии с правилами среды CLR (или псевдонимом, если указано).
Ключевые слова Lib и Alias
Имя, следующее за ключевым словом Function
, — это имя, используемое программой для доступа к импортированной функции. Оно может совпадать с реальным именем вызываемой функции или использовать любое допустимое имя процедуры, а затем использовать ключевое Alias
слово для указания реального имени вызываемой функции.
Укажите ключевое Lib
слово , а затем имя и расположение библиотеки DLL, содержащей вызываемую функцию. Вам не нужно указывать путь к файлам, расположенным в системных каталогах Windows.
Используйте ключевое слово , Alias
если имя вызываемой функции не является допустимым именем процедуры Visual Basic или конфликтует с именем других элементов в приложении. Alias
указывает истинное имя вызываемой функции.
Объявления аргументов и типов данных
Объявите аргументы и их типы данных. Эта часть может быть сложной, так как типы данных, которые используются Windows, не соответствуют типам данных Visual Studio. Visual Basic выполняет большую часть работы, преобразовав аргументы в совместимые типы данных, что называется маршалингом. Вы можете явно управлять маршалингом аргументов с помощью атрибута, MarshalAsAttribute определенного System.Runtime.InteropServices в пространстве имен.
Примечание
Предыдущие версии Visual Basic позволяли объявлять параметры As Any
, что означает, что можно использовать данные любого типа данных. Visual Basic требует, чтобы для всех Declare
инструкций использовался определенный тип данных.
Константы API Windows
Некоторые аргументы представляют собой комбинации констант. Например, API, показанный MessageBox
в этом пошаговом руководстве, принимает целочисленный аргумент с именем Typ
, который управляет отображением окна сообщения. Числовое значение этих констант можно определить, изучив инструкции #define
в файле WinUser.h. Числовые значения обычно отображаются в шестнадцатеричном формате, поэтому вы можете использовать калькулятор для их добавления и преобразования в десятичное число. Например, если вы хотите объединить константы для восклицательного стиля MB_ICONEXCLAMATION
0x00000030 и стиля Да/Нет MB_YESNO
0x00000004, можно добавить числа и получить результат 0x00000034 или 52 десятичных разрядов. Хотя десятичный результат можно использовать напрямую, лучше объявить эти значения в приложении как константы и объединить их с помощью Or
оператора .
Объявление констант для вызовов API Windows
Ознакомьтесь с документацией по вызываемой функции Windows. Определите имя констант, которые он использует, и имя H-файла, содержащего числовые значения для этих констант.
Используйте текстовый редактор, например Блокнот, для просмотра содержимого файла заголовка (. h) и поиска значений, связанных с используемыми константами. Например,
MessageBox
API использует константуMB_ICONQUESTION
для отображения вопросительного знака в окне сообщения. Определение дляMB_ICONQUESTION
находится в WinUser.h и отображается следующим образом:#define MB_ICONQUESTION 0x00000020L
Добавьте эквивалентные
Const
операторы в класс или модуль, чтобы сделать эти константы доступными для приложения. Например:Const MB_ICONQUESTION As Integer = &h30 Const MB_YESNO As Integer = &h5 Const IDYES As Integer = 6 Const IDNO As Integer = 7
Вызов процедуры DLL
Добавьте кнопку с именем
Button1
в форму запуска проекта, а затем дважды щелкните ее, чтобы просмотреть его код. Отобразится обработчик событий для кнопки.Добавьте код в
Click
обработчик событий для добавленной кнопки, чтобы вызвать процедуру и указать соответствующие аргументы:Private Sub Button1_Click(ByVal sender As System. Object, ByVal e As System.EventArgs) Handles Button1.Click ' Stores the return value. Dim RetVal As Integer RetVal = MBox(0, "Declare DLL Test", "Windows API MessageBox", MB_ICONQUESTION Or MB_YESNO) ' Check the return value. If RetVal = IDYES Then MsgBox("You chose Yes") Else MsgBox("You chose No") End If End Sub
Запустите проект, нажав клавишу F5. Окно сообщения отображается с кнопками Да и Нет ответа. Щелкните любой из них.
Маршалирование данных
Visual Basic автоматически преобразует типы данных параметров и возвращаемых значений для вызовов API Windows, но атрибут можно использовать для MarshalAs
явного указания неуправляемых типов данных, ожидаемых API. Дополнительные сведения о маршалинге взаимодействия см. в разделе Маршалинг взаимодействия.
Использование функции Declare и MarshalAs в вызове API
Определите имя функции, которую требуется вызвать, а также ее аргументы, типы данных и возвращаемое значение.
Чтобы упростить доступ к атрибуту
MarshalAs
, добавьтеImports
оператор в начало кода для класса или модуля, как показано в следующем примере:Imports System.Runtime.InteropServices
Добавьте прототип функции для импортированной функции в класс или модуль, который вы используете, и примените
MarshalAs
атрибут к параметрам или возвращаемого значению. В следующем примере вызов API, который ожидает типvoid*
, маршалируется какAsAny
:Declare Sub SetData Lib "..\LIB\UnmgdLib.dll" ( ByVal x As Short, <MarshalAsAttribute(UnmanagedType.AsAny)> ByVal o As Object)
Вызовы API с помощью DllImport
Атрибут DllImport
предоставляет второй способ вызова функций в библиотеках DLL без библиотек типов. DllImport
Примерно эквивалентно использованию инструкции, но обеспечивает больший контроль над вызовом Declare
функций.
Вы можете использовать DllImport
с большинством вызовов API Windows, если вызов относится к общему (иногда называемому статическим) методом. Нельзя использовать методы, требующие экземпляра класса . В отличие от Declare
операторов, DllImport
вызовы не могут использовать MarshalAs
атрибут .
Вызов API Windows с помощью атрибута DllImport
Откройте новый проект приложения Windows, щелкнув Создать в меню Файл и выбрав Проект. Откроется диалоговое окно Новый проект .
Выберите Приложение Windows в списке шаблонов проектов Visual Basic. Отобразится новый проект.
Добавьте кнопку с именем
Button2
в форму запуска.Дважды щелкните,
Button2
чтобы открыть представление кода для формы.Чтобы упростить доступ к
DllImport
, добавьте операторImports
в начало кода для класса формы запуска:Imports System. Runtime.InteropServices
Объявите пустую функцию перед
End Class
оператором формы и назовите функциюMoveFile
.Примените модификаторы
Public
иShared
к объявлению функции и задайте параметры дляMoveFile
на основе аргументов, которые использует функция API Windows:Public Shared Function MoveFile( ByVal src As String, ByVal dst As String) As Boolean ' Leave the body of the function empty. End Function
Функция может иметь любое допустимое имя процедуры;
DllImport
атрибут указывает имя в библиотеке DLL. Он также обрабатывает маршалинг взаимодействия для параметров и возвращаемых значений, поэтому вы можете выбрать типы данных Visual Studio, аналогичные типам данных, которые использует API.Примените
DllImport
атрибут к пустой функции. Первый параметр — это имя и расположение библиотеки DLL, содержащей вызываемую функцию. Не нужно указывать путь к файлам, расположенным в системных каталогах Windows. Второй параметр является именованным аргументом, указывающим имя функции в API Windows. В этом примереDllImport
атрибут принудительно перенаправитMoveFileW
вызовыMoveFile
в KERNEL32.DLL. МетодMoveFileW
копирует файл из путиsrc
в путьdst
.<DllImport("KERNEL32.DLL", EntryPoint:="MoveFileW", SetLastError:=True, CharSet:=CharSet.Unicode, ExactSpelling:=True, CallingConvention:=CallingConvention.StdCall)> Public Shared Function MoveFile( ByVal src As String, ByVal dst As String) As Boolean ' Leave the body of the function empty. End Function
Добавьте код в
Button2_Click
обработчик событий для вызова функции:Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2. Click Dim RetVal As Boolean = MoveFile("c:\tmp\Test.txt", "c:\Test.txt") If RetVal = True Then MsgBox("The file was moved successfully.") Else MsgBox("The file could not be moved.") End If End Sub
Создайте файл с именем Test.txt и поместите его в каталог C:\Tmp на жестком диске. При необходимости создайте каталог Tmp.
Нажмите клавишу F5 для запуска приложения. Появится основная форма.
Нажмите кнопку Button2. Если файл можно переместить, отобразится сообщение «Файл успешно перемещен».
См. также раздел
- DllImportAttribute
- MarshalAsAttribute
- Declare Statement
- Автоматически
- Псевдоним
- COM-взаимодействие
- Создание прототипов в управляемом коде
- Маршалинг делегата в качестве метода обратного вызова
Индекс API Windows — приложения Win32
Редактировать
Твиттер
Фейсбук
Электронная почта
- Статья
- 5 минут на чтение
Ниже приведен список справочного содержимого для интерфейса прикладного программирования Windows (API) для настольных и серверных приложений.
Используя Windows API, вы можете разрабатывать приложения, которые успешно работают во всех версиях Windows, используя преимущества функций и возможностей, уникальных для каждой версии. (Обратите внимание, что ранее это называлось Win32 API. Название Windows API более точно отражает его корни в 16-разрядной Windows и его поддержку в 64-разрядной Windows.)
Пользовательский интерфейс
Windows UI API создает и использует окна для отображать выходные данные, запрашивать ввод данных пользователем и выполнять другие задачи, поддерживающие взаимодействие с пользователем. Большинство приложений создают как минимум одно окно.
Доступность
Диспетчер окон рабочего стола (DWM)
Услуги по глобализации
Высокое разрешение
Многоязычный пользовательский интерфейс (MUI)
Поддержка национальных языков (NLS)
Элементы пользовательского интерфейса:
- Кнопки
- Каретки
- Поле со списком
- Общие диалоговые окна
- Общие элементы управления
- Курсоры
- Диалоговые окна
- Элементы управления редактированием
- Органы управления жаткой
- Иконки
- Ускорители клавиатуры
- Списки
- Элементы управления списком-представлением
- Меню
- Индикаторы выполнения
- Листы свойств
- Богатые элементы управления редактированием
- Полосы прокрутки
- Статические элементы управления
- Струны
- Панели инструментов
- Подсказки
- Трекбары
- Элементы управления в виде дерева
Диспетчер анимации Windows
Ленточная платформа Windows
Среда Windows (Shell)
- Система свойств Windows
- Оболочка Windows
- Поиск Windows
- Консоли
Пользовательский ввод и обмен сообщениями
Взаимодействие с пользователем
- Прямое управление
- Ввод чернил
- Конфигурация входной обратной связи
- Контекст взаимодействия
- Входной стек указателя
- Сообщения ввода указателя и уведомления
- Вход радиального контроллера
- Структура текстовых служб
- Тестирование касания
- Сенсорный ввод
Устаревшее взаимодействие с пользователем
- Сенсорный ввод
- Ввод с клавиатуры
- Ввод с помощью мыши
- Исходный ввод
Окна и сообщения:
- Сообщения и очереди сообщений
- Windows
- Классы окон
- Оконные процедуры
- Таймеры
- Свойства окна
- Крючки
Доступ к данным и их хранение
Фоновая интеллектуальная служба передачи (BITS)
Резервное копирование данных
- Резервное копирование
- Дедупликация данных
- Теневое копирование тома
- Резервное копирование Windows Server
Обмен данными:
- Буфер обмена
- Динамический обмен данными (DDE)
- Управление динамическим обменом данными (DDEML)
Управление каталогами
Управление дисками
Распределенная файловая система (DFS)
Репликация распределенной файловой системы
Расширяемый механизм хранения
Файлы и ввод-вывод (локальная файловая система)
API библиотеки обнаружения iSCSI
Автономные файлы
Упаковка
Удаленное дифференциальное сжатие
Транзакционная NTFS
Управление томами
Виртуальный жесткий диск (VHD)
Управление хранилищем Windows
Компоненты доступа к данным Windows
- Microsoft Open Database Connectivity (ODBC)
- Microsoft OLE DB
- Объекты данных Microsoft ActiveX (ADO)
Диагностика
Диагностический API позволяет устранять неполадки приложений или систем и контролировать производительность.
- Восстановление приложений и перезапуск
- Отладка
- Обработка ошибок
- Регистрация событий
- Отслеживание событий
- Профилирование аппаратного счетчика (HCP)
- Платформа сетевой диагностики (NDF)
- Сетевой монитор
- Счетчики производительности
- Журналы производительности и оповещения (PLA)
- Моментальные снимки процесса
- Состояние процесса (PSAPI)
- Структурированная обработка исключений
- Системный монитор
- Обход цепи ожидания
- Отчет об ошибках Windows (WER)
- Журнал событий Windows
- Платформа устранения неполадок Windows
Графика и мультимедиа
API-интерфейсы графики, мультимедиа, аудио и видео позволяют приложениям включать форматированный текст, графику, аудио и видео.
- Базовое аудио
- Direct2D
- Прямая композиция
- DirectShow
- DirectWrite
- DirectX
- Интерфейс графического устройства (GDI)
- ГДИ+
- Потоковая передача мультимедиа
- Фонд Microsoft Media
- Microsoft TV Технологии
- OpenGL
- Конфигурация монитора
- Мониторы с несколькими дисплеями
- Получение изображения
- Цветовая система Windows
- Компонент Windows Imaging (WIC)
- Аудио- и видеокодек Windows Media и DSP
- Windows Media Center
- Формат Windows Media
- Службы общего доступа к библиотеке Windows Media
- Проигрыватель Windows Media
- Службы Windows Media
- Windows Movie Maker
- Мультимедиа Windows
Устройства
- AllJoyn
- Коммуникационные ресурсы
- Доступ к устройству
- Управление устройствами
- Расширенное хранилище
- Функция обнаружения
- Мастеринг изображений
- Местоположение
- База данных ассоциации PnP-X
- Печать
- Диспетчер очереди печати
- Пакет документов для печати
- Спецификация схемы печати
- Распечатать билет
- Печать XPS
- Датчики
- Служба уведомлений о системных событиях (SENS)
- Справка по инструменту
- УПНП
- Веб-службы на устройствах
- Получение образа Windows (WIA)
- Диспетчер устройств Windows Media
- Портативные устройства Windows
Системные службы
API-интерфейсы системных служб предоставляют приложениям доступ к ресурсам компьютера и функциям базовой операционной системы, таким как память, файловые системы, устройства, процессы и потоки.
- СОМ
- СОМ+
- API сжатия
- Координатор распределенных транзакций (DTC)
- Библиотеки динамической компоновки (DLL)
- API справки
- Межпроцессное взаимодействие:
- Почтовые ящики
- Трубы
- Диспетчер транзакций ядра (KTM)
- Управление памятью
- Регистратор операций
- Управление питанием
- Службы удаленных рабочих столов
- Процессы
- Услуги
- Синхронизация
- Резьба
- Общий доступ к рабочему столу Windows
- Информация о системе Windows
- Ручка и предметы
- Реестр
- Время
- Провайдер времени
Безопасность и идентификация
API безопасности и идентификации обеспечивают аутентификацию по паролю при входе в систему, дискреционную защиту для всех совместно используемых системных объектов, управление привилегированным доступом, управление правами и аудит безопасности.
- Аутентификация
- Авторизация
- Регистрация сертификата
- Криптография
- Криптографическое новое поколение (CNG)
- Службы каталогов
- Доменные службы Active Directory
- Интерфейсы службы Active Directory (ADSI)
- Расширяемый протокол аутентификации (EAP)
- Расширяемый узел протокола аутентификации (EAPHost)
- Управление паролями MS-CHAP
- Защита доступа к сети (NAP)
- Расширения сервера сетевой политики (NPS)
- Родительский контроль
- Поставщики безопасности WMI
- Базовые службы TPM (TBS)
- Биометрическая платформа Windows
Установка и обслуживание приложений
- Games Explorer
- Параллельные сборки
- Упаковка, развертывание и API запросов
- Лицензия разработчика
- Диспетчер перезапуска
- Установщик Windows
Системный администратор и управление
Интерфейсы системного администрирования позволяют устанавливать, настраивать и обслуживать приложения или системы.
- Данные конфигурации загрузки WMI Provider
- Отказоустойчивые кластеры
- Диспетчер ресурсов файлового сервера (FSRM)
- Групповая политика
- Консоль управления Майкрософт (MMC) 2.0
- НетШелл
- Инфраструктура управления настройками
- Ведение журнала инвентаризации программного обеспечения
- Лицензирование программного обеспечения
- Диспетчер перезапуска
- Инфраструктура управления настройками
- Восстановление системы
- Отключение системы
- Планировщик заданий
- Регистрация доступа пользователей
- Виртуальный ПК Windows
- Виртуальный сервер Майкрософт
- Поставщик балансировки сетевой нагрузки
- Защитник Windows WMI v2
- Службы развертывания Windows
- Подлинное преимущество Windows
- Инфраструктура управления Windows
- Инструментарий управления Windows (WMI)
- Удаленное управление Windows
- Защита ресурсов Windows
- Службы обновления Windows Server
- Средство оценки системы Windows
- Агент обновления Windows
Сеть и Интернет
Сетевые API обеспечивают связь между приложениями по сети. Вы также можете создавать и управлять доступом к общим ресурсам, таким как каталоги и сетевые принтеры.
- Система доменных имен (DNS)
- Протокол динамической конфигурации хоста (DHCP)
- Факс
- Мастер подключения
- HTTP-сервер
- Общий доступ к подключению к Интернету и брандмауэр
- IP-помощник
- Брандмауэр подключения к Интернету IPv6
- Информационная база управления
- Очередь сообщений (MSMQ)
- Протокол динамического выделения клиентских адресов многоадресной рассылки (MADCAP)
- Преобразование сетевых адресов (NAT)
- Диспетчер списка сетей (NLM)
- Управление сетью
- Управление общими сетевыми ресурсами
- Одноранговый
- Качество обслуживания (QOS)
- Удаленный вызов процедуры
- Служба маршрутизации и удаленного доступа (RAS)
- Простой протокол управления сетью (SNMP)
- Управление малым и средним бизнесом
- Интерфейсы прикладного программирования телефонии (TAPI)
- WebDAV
- Компонент протокола WebSocket
- Беспроводная сеть:
- Bluetooth
- ИК-порт
- Мобильный широкополосный доступ
- Собственный Wi-Fi
- Windows Подключиться сейчас
- Диспетчер подключений Windows
- Платформа фильтрации Windows
- Брандмауэр Windows в режиме повышенной безопасности
- HTTP-службы Windows (WinHTTP)
- Windows Интернет (WinINet)
- Сеть Windows (WNet)
- Виртуализация сети Windows
- Платформа Windows RSS
- Сокеты Windows (Winsock)
- Веб-службы Windows
- Расширенный HTTP-запрос XML
Устаревшие или устаревшие API
Ниже перечислены технологии и API, которые устарели, были заменены или устарели в клиентских и серверных операционных системах Windows.
- DirectMusic
- DirectSound
- Microsoft UDDI SDK теперь входит в состав Microsoft BizTalk Server.
- Сетевой динамический обмен данными (DDE)
- Служба удаленной установки: вместо этого используйте службы развертывания Windows.
- Служба виртуальных дисков (VDS): вместо этого используйте управление хранилищем Windows.
- Службы терминалов: используйте службы удаленных рабочих столов.
- Диспетчер прав Windows Media
- Windows Messaging (MAPI): вместо этого используйте Office MAPI.
- Платформа гаджетов Windows: вместо этого создавайте приложения UWP.
- Боковая панель Windows: вместо этого создавайте приложения UWP.
- Windows SideShow: замены нет.
- Растровые эффекты WPF
Оболочка Windows — приложения Win32
Редактировать
Твиттер
Фейсбук
Электронная почта
- Статья
- 2 минуты на чтение
Пользовательский интерфейс Windows предоставляет пользователям доступ к большому количеству объектов, необходимых для запуска приложений и управления операционной системой. Наиболее многочисленными и знакомыми из этих объектов являются папки и файлы, находящиеся на жестких дисках компьютеров. Существует также ряд виртуальных объектов, которые позволяют пользователю выполнять такие задачи, как отправка файлов на удаленные принтеры или доступ к корзине. Оболочка организует эти объекты в иерархическое пространство имен и предоставляет пользователям и приложениям согласованный и эффективный способ доступа к объектам и управления ими.
Сценарии разработки оболочки
Следующие сценарии разработки относятся к разработке приложений:
- Расширение оболочки, состоящее из создания источника данных (вместо использования модели данных оболочки)
- Реализация подмножества задач источника данных Shell
- Поддержка библиотек и представлений элементов в проводнике Windows
- Использование общего диалогового окна файла
- Внедрение элементов панели управления
- Управление уведомлениями
Следующие сценарии разработки связаны с владением форматом файла:
- Реализация подмножества задач источника данных Shell
- Реализация любого обработчика
- Поддержка поиска на рабочем столе
Следующие сценарии разработки связаны с владением хранилищем данных:
- Поддержка настольного поиска и OpenSearch
- Реализация подмножества задач источника данных Shell (виртуальные папки)
- Вспомогательные библиотеки в Проводнике Windows
Следующий сценарий разработки относится к поддержке устройств:
- Автозапуск и автовоспроизведение
Документация Windows Shell SDK
Эта документация разбита на три основных раздела:
- Руководство разработчика оболочки содержит концептуальные материалы о том, как работает оболочка и как использовать API оболочки в приложении.
- В разделе «Справочник по оболочке» описаны программные элементы, из которых состоят различные API-интерфейсы оболочки.
- содержат ссылки на соответствующие примеры кода.
Примеры оболочки
В следующей таблице представлен обзор раздела «Справочник по оболочке». Если не указано иное, все программные элементы задокументированы на неуправляемом C++.
Раздел | Описание |
---|---|
Классы оболочки | В этом разделе описываются некоторые классы оболочки Windows. |
Интерфейсы оболочки | В этом разделе описываются интерфейсы объектной модели компонентов оболочки Windows (COM). |
Функции оболочки | В этом разделе описаны функции оболочки Windows. |
Функции обратного вызова оболочки | В этом разделе описываются шаблоны функций обратного вызова оболочки Windows. |
Константы оболочки, перечисления и флаги | В этом разделе описываются константы, перечисления и флаги оболочки Windows, используемые в API-интерфейсах оболочки. |