Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.16;
Скачать: CL | DM;

Вниз

Обойти OleVariant   Найти похожие ветки 

 
XProger ©   (2006-04-03 03:57) [0]

Есть функция в качестве одного из параметров, принимающая OleVariant. Существует ли возможность передачи параметра (строки) не используя вариантных типов?
Любые ссылки по теме, приветствуются :)

Заранее благодарен!


 
Сергей М. ©   (2006-04-03 08:30) [1]

Если функция требует именно OleVariant, значит и надо передавать OleVariant.


 
tesseract ©   (2006-04-03 10:41) [2]

А чем тебе OLEVariant не нравится?


 
XProger ©   (2006-04-03 17:47) [3]

tesseract, +50 кб - этим не нравится.

Сергей М., если принимает данные, значит эти данные имеют какую-то структуру, которую можно создать вручную. И передавать, избегая вызовы не нужных мне функций для работы с вариантным типом.

Т.е. вопрос можно поставить так: как устроен вариантный тип?


 
XProger ©   (2006-04-03 18:43) [4]

Разобрался

var
 v : packed record
   VType     : Word;
   Reserved1 : Word;
   Reserved2 : Word;
   Reserved3 : Word;
   varOleStr : PWideChar;
   Reserved4 : Word;
   Reserved5 : Word;
 end;
...
 ZeroMemory(@v, SizeOf(v));
 v.VType     := varOleStr;
 v.varOleStr := PWideChar(str);

Затем передаю v вместо OleVariant типа. В итоге получаю 0 (практически ;) прирост к exe файлу :)

Тема закрыта


 
Leonid Troyanovsky ©   (2006-04-03 18:55) [5]


> XProger ©   (03.04.06 18:43) [4]

>  v.varOleStr := PWideChar(str);


Строка-то WideString?

--
Regards, LVT.


 
XProger ©   (2006-04-04 04:24) [6]

Leonid Troyanovsky, угу :)


 
tesseract ©   (2006-04-04 10:21) [7]


> если принимает данные, значит эти данные имеют какую-то
> структуру,


Все данные имеют структуру. Просто с variant  меньше проблем.



Страницы: 1 вся ветка

Текущий архив: 2006.07.16;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.062 c
2-1151321316
XTD
2006-06-26 15:28
2006.07.16
Как изменить основное устройство воспроизведения звука?


15-1150465092
AlexanderMS
2006-06-16 17:38
2006.07.16
Можно ли оптимизировать данный код?


2-1151412468
Neket
2006-06-27 16:47
2006.07.16
И вновь DBGrid


8-1138909150
Flint-1983
2006-02-02 22:39
2006.07.16
mp3 файлы


2-1151495331
mfender
2006-06-28 15:48
2006.07.16
TTreeNode