А> Есть такой код:
А> Феня в том, что после выполнения данного кода программа падает. Вот смотри. Есть две переменные pSa и var, которые ссылаются на один и тот же массив. Есть одно место создания (SafeArrayCreate), значит, должно быть одно место удаления. Логично, если это будет SafeArrayDestroy. Однако, VARIANT — такая штука, которая требует монопольного владения своим содержимым (это на случай реальной работы с ним — копирование в него, освобождение, передача в другое место программы и пр.). Поэтому я бы посоветовал рассматривать pSa как синоним var.parray и использовать VariantClear (и убрать SafeArrayDestroy). |