主要用到函数说明:

_DMxDrawX::ReadBinStream

从二制流数据中加载图形,详细说明如下:

参数 说明

VARIANT varBinArray

二制流数据,是个byte数组

BSTR sPassword

图纸密码.没有密码,传空字符串

LONG lReadContent

加载内容,如果全部加载,传16777215,十六进制0xFFFFFF

Delphi代码实现如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
            function OleToMStream(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;
  
                   function MStreamToOle(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语言)的更多相关文章

  1. CAD从二制流数据中加载图形(com接口VB语言)

    主要用到函数说明: _DMxDrawX::ReadBinStream 从二制流数据中加载图形,详细说明如下: 参数 说明 VARIANT varBinArray 二制流数据,是个byte数组 BSTR ...

  2. CAD从二制流数据中加载图形(com接口)

    主要用到函数说明: _DMxDrawX::ReadBinStream 从二制流数据中加载图形,详细说明如下: 参数 说明 VARIANT varBinArray 二制流数据,是个byte数组 BSTR ...

  3. libfastcommon总结(二)从文件中加载配置信息

    头文件为ini_file_reader.h 主要接口 IniContext iniContext;//定义配置文件信息 iniLoadFromFile();//加载文件为结构化配置信息    iniG ...

  4. cesium中json,geojson,stk,影像切片等数据的加载

    cesium中json.topojson.geojson.stk,影像切片等数据的加载 一.geojson.topojson,json数据的加载 不管是哪种json,都可以通过GeoJsonDataS ...

  5. C#开发BIMFACE系列37 网页集成开发1:审图系统中加载模型或图纸

    系列目录     [已更新最新开发文章,点击查看详细] 在之前的<C#开发BIMFACE系列>中主要介绍了BIMFACE平台提供的服务端API接口的封装开发与测试过程. 服务端API测试通 ...

  6. 『转载』从内存资源中加载C++程序集:CMemLoadDll

    MemLoadDll.h #if !defined(Q_OS_LINUX) #pragma once typedef BOOL (__stdcall *ProcDllMain)(HINSTANCE, ...

  7. EF如何操作内存中的数据以及加载相关联表的数据:延迟加载、贪婪加载、显示加载

    之前的EF Code First系列讲了那么多如何配置实体和数据库表的关系,显然配置只是辅助,使用EF操作数据库才是每天开发中都需要用的,这个系列讲讲如何使用EF操作数据库.老版本的EF主要是通过Ob ...

  8. ArcGIS Engine中加载数据

    ArcGIS Engine中加载数据 http://blog.csdn.net/gisstar/article/details/4206822   分类: AE开发积累2009-05-21 16:49 ...

  9. [Android] Android ViewPager 中加载 Fragment的两种方式 方式(二)

    接上文: https://www.cnblogs.com/wukong1688/p/10693338.html Android ViewPager 中加载 Fragmenet的两种方式 方式(一) 二 ...

随机推荐

  1. react新特性 react hooks

    本文介绍的是react新特性react hooks,本文面向的是有一定react开发经验的小伙伴,如果你对react还不是很熟悉的话我建议你先学习react并多多联系. 首先我们都知道react有3种 ...

  2. android中怎么将桌面较长的图标名称显示完整

    找到相应的 res 资源, 改动其 styles.xml <style name="WorkspaceIcon.Portrait">         <item ...

  3. Coolite Toolkit介绍

    Coolite Toolkit非常棒的控件   Coolite Toolkit介绍 Coolite Toolkit 是一个支持ASP.NET AJAX的Web控件. Coolite Toolkit是基 ...

  4. backbone源代码注释(部分)

    // Backbone.js 1.0.0 // (c) 2010-2013 Jeremy Ashkenas, DocumentCloud Inc. // Backbone may be freely ...

  5. 打开mat文件

    点击file目录,选择import data 然后选择所需.mat文件,就可以打开了

  6. PHP cURL使用小结

    cURL简介 cURL是什么? cURL(Client URL Library Functions)由 Daniel Stenberg 创建的libcurl库,官方定义为:curl is a comm ...

  7. 0627-TP整理三(对表的操作,数据的显示)

    一.对表的操作 直接sql语句:(query/execute) 1.查询: 查询所有:M('表名')->select(); 查询一条数据:M('表名')->find(); 条件查询: 动态 ...

  8. Vue学习-Element框架

    今天学了一个基于Vue2.0的桌面端组件库Element,号称是全世界最流行的Vue UI框架.感觉学会了之后就变身大牛了有木有. 好了,不吹牛皮了. Element官方文档通俗易懂,框架什么的安装引 ...

  9. jQuery——表单应用(3)

    HTML: <!--表单-多行文本框应用-滚动条高度变化--> <!DOCTYPE html> <html> <head> <meta chars ...

  10. thinkphp 5 常用的助手函数

    load_trait:快速导入Traits,PHP5.5以上无需调用 /**     * 快速导入Traits PHP5.5以上无需调用     * @param string    $class t ...