V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
xjdata
V2EX  ›  问与答

有熟悉 c#,com 方式操作 msoffice word 的朋友吗?

  •  
  •   xjdata · 2016-07-29 12:46:33 +08:00 · 1437 次点击
    这是一个创建于 3039 天前的主题,其中的信息可能已经有所发展或是发生改变。

    请问,各位是如何处理客户端 office 版本不一致的问题呢?

    我的问题是, 比如我开发环境使用 office 2003 那么客户机如果不是 2003 的话 是否会出错呢?

    之前测试过一次, 开发环境 office 2007 但是客户端 office2003 的情况下 会出错.

    我想问下, 是否有个不依赖特定版本 office 的方法呢? 谢谢.

    5 条回复    2016-07-29 18:32:16 +08:00
    abelyao
        1
    abelyao  
       2016-07-29 13:53:56 +08:00   ❤️ 1
    引用 com 组件的时候, Microsoft Office 11.0 Object Library 是有版本号的,记得 11 是 2003 , 12 是 2007 吧,
    如果客户端没有对应版本的组件,引用组件的时候就出错了吧?
    试试在安装包中,把 com 组件一起包含了?
    dong3580
        2
    dong3580  
       2016-07-29 14:03:00 +08:00   ❤️ 1
    会出错,正如 1 楼所说,可以把 dll 一起打包进去;或者设置 com 组件包含进去,生成 exe 的时候 VS 会自动把 dll 也自动拷进去,这样就可以了。
    xjdata
        3
    xjdata  
    OP
       2016-07-29 15:06:54 +08:00
    @abelyao @dong3580
    我在想 我只用 2003 的 dll 打包. 不知道 2007 + 的版本 会不会向下兼容. 因为没用啥特殊的东西. 想着开发的结果能够适应多谢环境. 不知道是否有这方面的经验. 谢谢.
    ziki
        4
    ziki  
       2016-07-29 15:08:40 +08:00
    我记得有个第三方的叫 NPOI ,不是用 com 组件来做的,不会依赖运行环境的 office
    abelyao
        5
    abelyao  
       2016-07-29 18:32:16 +08:00 via iPhone
    另外楼主如果在做 Office .Net 方面的开发,或许 http://www.cnblogs.com/abel/p/3194678.html 以前写的这篇文章对你有帮助,包括文章下的评论,我自己也学到很多。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   965 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 20:25 · PVG 04:25 · LAX 12:25 · JFK 15:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.