【问题标题】:DXL ole objects binary streamDXL ole 对象二进制流
【发布时间】:2020-02-06 23:09:57
【问题描述】:

我在导入门中的 ole 对象时遇到问题。 我收到了一个 RIF 文件(带有 xml 和 OLE 文件夹的 zip)。 当我导入文档 excel 表时,word 文件和图片被嵌入为 ole 对象。 这些文档作为 *.ole 文件导入,即使嵌入在代码中也不会显示。

ole 文件有这种头文件:

{\object\objemb{\*\objclass Excel.Sheet.12}\objw488745\objh2055{\*\objdata

{\object\objemb{\*\objclass Word.Document.12}\objw9308\objh3666{\*\objdata 

{\pict\wmetafile8\picw15121\pich22138\picwgoal8528\pichgoal12506 

我编写了一个简单的包装器,它能够在我们的操作系统中提取单词数据以及 xlsx 和 wmf,但是: xlsx 文档已“损坏”,无法在门中导入。

为了解决这个问题,我希望能够将本机 ole 对象导入到门模块中,但我找不到任何可行的方法。

我尝试在文档中附加一个 rtf 标头,例如:

{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 
Tahoma;}}\viewkind4\uc1\pard\f0\fs20

但我仍然无法将文档嵌入到对象中。

我也尝试了一个简单的 dxl 脚本,但没有成功:

Object o = current;
oleInsert(o, o."Object Text", "C:/Doors/asd.rtf", false)

任何提示将不胜感激。 如果需要,我可以提供更多详细信息。

K.R.

【问题讨论】:

    标签: rtf ole ibm-doors


    【解决方案1】:

    K.R.不确定我是否正确理解了您的问题,但听起来您能够成功提取 OLE 对象的 RTF 代码,但不知道如何将其导入 DOORS?

    oleInsert 尝试将实际文件而不是文件中的 RTF 代码放入对象中。

    如果您只是想将富文本分配给对象文本,您可以尝试以下操作:

    Object o = current;
    string oleString = (...) //assign to RTF code you parsed out for individual ole object
    o."Object Text" = richText(oleString)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-17
      相关资源
      最近更新 更多