C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  Update World C++: Сборник GPL QT исходников
  Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Letyshops [lifetime]

 23 - VariantCopy / COM-справка / Приложение

Шаг 23 - VariantCopy

Освобождает принимающий вариант и копирует исходный.

HRESULT VariantCopy
( 
	VARIANTARG FAR* pvargDest, 
	VARIANTARG FAR* pvargSrc
);

Параметры:

  • pvargDest - Указатель на VARIANTARG, принимающий копию.
  • pvargSrc - Указатель на копируемый VARIANTARG.

Коды возврата:
Из возвращенного HRESULT получают один из следующих кодов возврата:

Код возвратаЗначение
S_OKУспех.
DISP_E_ARRAYISLOCKEDВариант содержит заблокированный массив.
DISP_E_BADVARTYPEИсходный или принимающий вариант имеют недопустимый тип (обычно не инициализированы).
E_OUTOFMEMORYHe хватает памяти для копирования.
E_INVALIDARGОдин из аргументов неверен.

Комментарии:
Сначала память, владельцем которой является pvargDest, освобождается так же, как при вызове VariantClear (pvargDest должен указывать на инициализированный вариант, а не просто на неинициализированный блок памяти). Затем в pvargDest помещается точная копия содержимого pvargSrc.
Если pvargSrc имеет тип VT_BSTR, то копируется строка. Если pvargSrc — это VT_ARRAY, то копируется весь массив. Если pvargSrc — это VT_DISPATCH или VT_UNKNOWN, то вызывается AddRef для увеличения счетчика ссылок объекта.


| |
Автор Каев Артем.
[AD]





Letyshops [lifetime]