Можно ли получить аргумент VT_BYREF в функции COM при вызове из VBScript? [закрыто]C++

Программы на C++. Форум разработчиков
Ответить
Гость
 Можно ли получить аргумент VT_BYREF в функции COM при вызове из VBScript? [закрыто]

Сообщение Гость »


Мы используем VBScript для автоматизации наших программ.

Мы написали короткую программу на VBScript, которая вызывает наш код через предопределенные объекты. Все аргументы обычно имеют формат BSTR, long, int, VARIANT или безопасные массивы VARIANT. >.

В настоящее время мы используем код с VariantCopyInd, чтобы гарантировать, что данные с VT_BYREF преобразуются в тип без VT_BYREF.

На самом деле я никогда не осознавал, что код или операторы VBScript создают аргумент VARIANT с VT_BYREF. Я понимаю, что VT_BYREF использовался для простой передачи данных в функцию без повторного создания нового VARIANT и для копирования данных.

Теперь мой вопрос:

Поскольку использование VariantCopyInd всегда копирует данные, функция VariantCopyInd кажется мне медленной при передаче больших блоков данных. Кроме того, в настоящее время у меня нет специального кода для обработки VB_BYREF, поскольку я использую VariantCopyInd.

Есть ли в VBScript случай или специальный синтаксис, который создает аргумент с помощью VT_BYREF? Или мне вообще не нужно заботиться о VT_BYREF?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»