Метод IBidiRequest::GetOutputData (bidispl.h)
Метод GetOutputData получает указанные выходные данные, возвращаемые с принтера.
Синтаксис
HRESULT GetOutputData(
[in] const DWORD dwIndex,
[out] LPWSTR *ppszSchema,
[out] DWORD *pdwType,
[out] BYTE **ppData,
[out] ULONG *uSize
);
Параметры
[in] dwIndex
Отсчитываемый от нуля индекс запрашиваемых выходных данных. Дополнительные сведения см. в подразделе "Примечания".
[out] ppszSchema
Указатель на строку, завершающуюся значением NULL, которая получает строку схемы. Вызывающий объект должен вызвать функцию CoTaskMemFree, чтобы освободить этот указатель.
[out] pdwType
Указатель на переменную, получающую тип выходных данных. Этот параметр может принимать одно из указанных ниже значений.
Значение | Описание |
---|---|
BIDI_NULL | Нет данных. |
BIDI_INT | Целочисленные данные. |
BIDI_FLOAT | Число с плавающей запятой. |
BIDI_BOOL | TRUE или FALSE |
BIDI_STRING | Строка символов Юникод. |
BIDI_TEXT | Не локализуемая строка Юникода. |
BIDI_ENUM | Данные перечисления в виде строки Юникода. |
BIDI_BLOB | Двоичные данные. |
[out] ppData
Указатель на переменную, получающую указатель на массив байтов, содержащий выходные данные. Буфер выделяется COM-интерфейсом для хранения выходных данных. Вызывающий объект отвечает за вызов CoTaskMemFree для освобождения буфера.
[out] uSize
Указатель на переменную, получающую размер массива байтов, заданный параметром **ppData.
Возвращаемое значение
Метод возвращает одно из следующих значений. Дополнительные сведения о кодах ошибок COM см. в разделе Коды ошибок COM.
Код возврата | Описание |
---|---|
S_OK | Операция была успешно проведена. |
E_HANDLE | Недопустимый дескриптор интерфейса. |
E_POINTER | По крайней мере один из параметров переменной указателя не ссылается на допустимое расположение в памяти. |
Ничего из вышеперечисленного | HRESULT содержит код ошибки, соответствующий последней ошибке. |
Комментарии
Один запрос bidi может иметь несколько результатов. Приложение вызывает GetEnumCount , чтобы получить количество результатов из запроса bidi.
Если приложение дважды вызывает GetOutputData с тем же индексом, интерфейс выделяет два разных буфера, поэтому приложение должно освободить оба буфера.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP |
Минимальная версия сервера | Windows Server 2003 |
Целевая платформа | Персональный компьютер |
Верхняя часть | bidispl.h |
DLL | Bidispl.dll |
См. также раздел
Двунаправленные интерфейсы связи