1

有没有办法使用 DXL 脚本将 word 文档作为 OLE 对象插入到与Object Text不同的任何对象属性中?

DXL 函数oleInsert允许这样做,但仅适用于属性Object Text

谢谢

4

3 回答 3

1

不幸的是,我无法直接看到它,但如果您的对象文本中还没有 OLE,这是一个很好的解决方法。

Object o = current
string filename = "PATH_TO_FILE"
oleInsert(o, filename, true)

string err = null

if (oleIsObject o){
  if (oleCut o){
    err = olePasteSpecial(o."OTHER_ATTRIBUTE_NAME", true)
    if(!null err)
      print err
  } else {
    print "Problem trying to cut object\n"
  }
} else {
  print "Does not contain an embedded object in its object text\n"
}

trueinoleInsert和是将olePasteSpecialOLE 作为图标插入。如果您不希望它作为图标,您可以将它们都更改为 false。

祝你好运!

于 2013-06-03T15:08:36.133 回答
0

仅出于完整性考虑:DOORS 9.5 的签名已oleInsert()更改:

bool oleInsert(Object o,[attrRef],string fileName,[bool insertAsIcon])

随着文档

如果指定了可选参数attrRef,则 OLE 对象嵌入在用户定义的文本属性中。如果未指定参数,则 OLE 对象嵌入系统“对象文本”属性中。

这使它更容易一些。

于 2015-06-25T12:41:16.413 回答
0

谢谢@Twonky!这对我太有帮助了。此外,我添加了 dxl 参考手册中的示例代码。

/*
this code segment embeds an existing word document into the current formal 
object
*/
string docName = "c:\\docs\\details.doc"
Object obj = current
if (oleInsert(obj, obj."my_text", docName)){
    print "Successfully embedded document\n"
} else {
    print "Problem trying to embed document\n"
}
于 2017-11-21T02:21:52.040 回答