作者:
陆岛工作室
procedure
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
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
;
Variant 转换成 Stream 的函数











Stream 转换成 Variant 的函数









