DXL ole 对象二进制流



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

OLE 文件具有此类标头:

{objectobjemb{*objclass Excel.Sheet.12}objw488745objh2055{*objdata
{objectobjemb{*objclass Word.Document.12}objw9308objh3666{*objdata 
{pictwmetafile8picw15121pich22138picwgoal8528pichgoal12506 

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

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

我尝试将 rtf 标头附加到文档中,例如:

{rtf1ansiansicpg1252deff0deflang1033{fonttbl{f0fnilfcharset0 
Tahoma;}}viewkind4uc1pardf0fs20

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

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

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

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

K.R.

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)

最新更新