CAD从二制流数据中加载图形(com接口Delphi语言)
- 作者: 五速梦信息网
- 时间: 2026年04月04日 13:48
主要用到函数说明:
_DMxDrawX::ReadBinStream
从二制流数据中加载图形,详细说明如下:
| 参数 | 说明 |
|---|---|
|
VARIANT varBinArray |
二制流数据,是个byte数组 |
|
BSTR sPassword |
图纸密码.没有密码,传空字符串 |
|
LONG lReadContent |
加载内容,如果全部加载,传16777215,十六进制0xFFFFFF |
Delphi代码实现如下:
functionOleToMStream(OV:OleVariant): TMemoryStream; var Data: PByteArray; Size: integer; beginResult:=TMemoryStream.Create; try Size:=VarArrayHighBound(OV,1)-VarArrayLowBound(OV,1)+1; Data:=VarArrayLock(OV); try Result.Position:=0; Result.WriteBuffer(Data^,Size); finally VarArrayUnlock(OV); end; except Result.Free;Result:=nil; end; end; functionMStreamToOle(Strm:TMemoryStream): OleVariant; var Data: PByteArray; beginResult:= VarArrayCreate([0, Strm.Size - 1], varByte); Data:= VarArrayLock(Result); try Strm.Position := 0; Strm.ReadBuffer(Data^, Strm.Size); finally VarArrayUnlock(Result); end; end; procedure TForm2.Button6Click(Sender: TObject); var aryData:OleVariant; memStream : TMemoryStream ; aryReadData: OleVariant; begin // 写到内存流 MxDrawX1.WriteBinStream(aryData,'',23); memStream := OleToMStream(aryData); // 从内存流加载 aryReadData := MStreamToOle( memStream); MxDrawX1.ReadBinStream(aryData,'',23); end;
相关文章
-
CAD实现文档坐标到视区坐标的转换(com接口Delphi语言)
CAD实现文档坐标到视区坐标的转换(com接口Delphi语言)
- 互联网
- 2026年04月04日
-
camtasia怎么添加画中画
camtasia怎么添加画中画
- 互联网
- 2026年04月04日
-
canal 集群搭建 instance 挂载到集群下启动不了
canal 集群搭建 instance 挂载到集群下启动不了
- 互联网
- 2026年04月04日
-
CAD把当前图形保为一个jpg文件(com接口Delphi语言)
CAD把当前图形保为一个jpg文件(com接口Delphi语言)
- 互联网
- 2026年04月04日
-
caddy 不使用https
caddy 不使用https
- 互联网
- 2026年04月04日
-
C99标准前后对于二维数组的动态声明问题
C99标准前后对于二维数组的动态声明问题
- 互联网
- 2026年04月04日






