我正在尝试让 Cocoa 应用程序连接到 Microsoft Word,从我的搜索来看,唯一的方法似乎是使用 Scripting Bridge 并生成 Word 头文件。但是,使用苹果示例项目中解释的方法SBS发送电子邮件:
sdef "$INPUT_FILE_PATH" | sdp -fh -o "$DERIVED_FILES_DIR" --basename "$INPUT_FILE_BASE" --bundleid `defaults read "$INPUT_FILE_PATH/Contents/Info" CFBundleIdentifier`
不生成可用的 word 头文件,我得到以下信息:
sdp:枚举“e183”的枚举器:缺少必需的“名称”属性。引用
通过Google进一步搜索,我在Apple论坛上找到了以下讨论:
然而,OP 遇到同样的问题时,尝试他所做的工作并没有帮助,即仍然没有可用的头文件。 OP建议使用以下内容:
sdef ./Microsoft\ Word.app/ > word.sdef
cat word.sdef | sdp -fh --basename word
所以我想知道是否有人知道如何解决这个问题,或者是否有其他方法可以从 Microsoft Word 发送和获取数据/信息。
所以我找到了如何“解决”Microsoft Word 2011 for Mac 的这个问题,我不太喜欢它,但它似乎有效。
“解决方案”基于我链接的讨论:
这些命令在构建规则中运行,如苹果示例中所描述和显示的那样(请参阅我的第一个评论的链接)。
- 首先使用命令
sdef "$INPUT_FILE_PATH" > word.sdef
(INPUT_FILE_PATH 是 Microsoft Word 的路径,我已将其拖到 XCode 中)
- 打开 word.sdef 文件并搜索名为 e315 和 e183 的枚举。
枚举看起来像:`
- e183 缺少一个名称字段,所以我只是向其中添加了一个字符串
- e315 缺少所有名称字段,所以我添加了它们
- 然后使用命令
cat word.sdef | sdp -fh -o "$DERIVED_FILES_DIR" --basename "$INPUT_FILE_BASE"
- 现在已生成 Microsoft Word.h 文件并可以使用。
我不喜欢这个解决方案,因为您必须手动将字符串添加到 .sdef 文件中,但是,它似乎有效。
我会将其标记为正确答案,因为它解决了问题,但如果有人有更好的解决方案,请告诉。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)