C#调用WPS操作Excel文件遇到的问题
来源:互联网 发布:php开发实战视频教程 编辑:程序博客网 时间:2024/05/17 03:37
学习C#需要生成Excel文件,但自己的电脑不想安装Office,因为习惯了WPS。
之前学习Delphi时发现调用WPS-ET和调用Office-Excel的方法基本一样,想想用C#应该也不会差太多。于是上网搜了一通,但运行后老是提示找不到文件(Interop.kso.dll),"未能加载文件或程序集“Interop.KSO, Version=98.1.0.0, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。"---因为我用的是SharpDevelop,不是VS。
然后又搜了一番,还是没有结果,偶然间看到有人提供Interop.kso.dll的下载,心中窃喜,下下来放到exe目录,运行、正常了。然后就开始搜如何生成这个文件,未果。
后来用装安装VS的电脑,按照网上的办法调用ET,直接就成功了。分析生成的目录,发现它能自动生成Interop.kso.dll,难道SharpDevelop不能自己生成 吗?由于又搜如何生成Interop.***.dll文件,发现TlbImp.exe是用来生成Interop.***.dll文件的。用法:Microsoft SDKs\Windows\v7.0A\bin\TlbImp.exe office6\ksoapiv8.dll /out:Interop.KSO.dll。不过生成的文件和VS生成的并不同(TlbImp.exe生成的是:Assembly imported from type library 'KSO'. VS生成的为:从类型库“KSO”导入的程序集。)。由是就想有没有办法把这个工具集成到SharpDevelop,还没研究出结果,偶然间在项目的obj\Debug竟然有Interop.kso.dll。直接泪奔。
简单整理如下:C#调用ET,在项目右键中“添加引用”,选择"COM"里的“Kingsoft ET 2.0 object library” 对应文件: etapiv8.dll,选择“生成”操作,然后将\obj\Debug目录(也可能是会是\Release)下的Interop.KSO.dll复制到\bin\Debug目录,再运行项目就可以了。
具体代码请自行搜索,简单来说,只需要将调用Office的代码中的Excel换成ET。
SharpDevelop竟然 会有这样的BUG。
注:Microsoft SDKs/Windows/v7.0A/bin/zh-CHS/StartTools.htm(Windows SDK 工具列表)文档中有说明:
TlbImp.exe :类型库导入程序。将 COM 类型库中发现的类型定义转换成托管元数据格式的等同定义。
- C#调用WPS操作Excel文件遇到的问题
- C#操作WPS的EXCEL表格
- C#调用WPS转换WORD,EXCEL,PPT文件为PDF
- c#操作wps中的excel
- 关于 c# 操作 Excel文件中遇到的保存出错问题
- 关于C#操作WPS和office兼容性的问题
- 使用C#写WPS的excel
- C#调用操作Excel的一个类
- C#调用操作Excel的一个类
- C#调用操作Excel的一个类
- C#调用操作Excel的一个类
- C#调用操作Excel的一个类
- C#调用操作Excel的一个类
- C#调用操作Excel的一个类
- C#调用操作Excel的一个类
- 用python写wps的excel文件
- C#调用WPS的两种方式
- C#调用WPS的两种方式
- 系统编程之进程控制
- Android 数据库升级 数据迁移 数据不丢失
- 设计模式学习笔记十二:桥接模式(Bridge Pattern)
- 关于SimpleDateFormat安全的时间格式化线程安全问题
- 认识linux 线程
- C#调用WPS操作Excel文件遇到的问题
- 抽象工厂模式-与-工厂方法模式区别
- 在ubuntu14.04下openni+opencv+kinectV1的学习五:边缘检测
- spring学习----AOP
- codeforce 766D Mahmoud and a Dictionary 带权并查集
- hdu6090 数学思维+完全图+星形图的了解
- bzoj 1901: Zju2112 Dynamic Rankings(离线树状数组+主席树)
- Android 自定义圆形头像
- Js_面向对象和多媒体