流和Variant的转换
2024-10-21 07:14:53
procedure TForm2.VariantToStream (const v : olevariant;
Stream : TMemoryStream);
var
p : pointer;
begin
Stream.Position := 0;
Stream.Size := VarArrayHighBound (v, 1) - VarArrayLowBound(v, 1) + 1;
p := VarArrayLock (v);
Stream.Write (p^, Stream.Size);
VarArrayUnlock (v);
Stream.Position := 0;
end;
procedure TForm2.StreamToVariant (Stream : TMemoryStream; var v : OleVariant);
var
p : pointer;
begin
v := VarArrayCreate ([0, Stream.Size - 1], varByte);
p := VarArrayLock (v);
Stream.Position := 0;
Stream.Read (p^, Stream.Size);
VarArrayUnlock (v);
end;
最新文章
- python 数据类型---布尔型&; 字符串
- 【转】Java中try catch finally语句中含有return语句的执行情况(总结版)
- CSS大美集
- 【Java每日一题】20161130
- 关于使用nuget的部分代码
- linux笔记-硬链接和符号链接
- JAVA jdbc(数据库连接池)学习笔记(一)
- XiaoShi657的留言板
- selenium webdriver python 操作IE浏览器
- Android-1
- 【ecos学习5】redboot 加载运行hello world
- SpringMVC 异常处理
- devexpress chartcontrol实现非连续点数据的显示
- 【Weblogic】启动命令nohup解析
- python学习笔记(四)
- Java 判断字符串是否为空的四种方法、优缺点与注意事项
- git 不能拉取时,检查是不是被杀毒软件给干掉了
- ReentrantLock 分析
- Python——List
- ORACLE_ERP帐务分录