xjdata
V2EX  ›  问与答

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

  •  
  •   xjdata · Jul 29, 2016 · 1855 views
    This topic created in 3602 days ago, the information mentioned may be changed or developed.

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

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

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

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

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