System.IO.FileNotFoundException: 未能加载文件或程序集“office, Version=14.0.0.0, Culture=ne
程序需要把Excel转换为PDF,所以调用了 office2010的 Microsoft.Office.Interop.Excel dll,开发机安装的是office2010,所以正常运行。把程序部署在客户机的时候,我也把Microsoft.Office.Interop.Excel dll放在exe目录下面,但老是一种报错
System.IO.FileNotFoundException: 未能加载文件或程序集“office, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c”或它的某一个依赖项。系统找不到指定的文件。 文件名:“office, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c”
求救各位朋友,怎么样解决这个问题? --------------------编程问答-------------------- 将Office.dll放到启用目录下… --------------------编程问答-------------------- 请问启用目录是什么路径? --------------------编程问答-------------------- 我的是CS程序 --------------------编程问答--------------------
就是你说的你的EXE所在路径 --------------------编程问答-------------------- 单单部署Microsoft.Office.Interop.Excel不够的,它只是让C#能调用Excel的一个代理。
客户机器也要装Office 2010(Excel 2010)。 --------------------编程问答-------------------- Microsoft.Office.Interop.Excel dll用8.0版本的,不管你是OFFICE2003-2007还是2010都可以 --------------------编程问答-------------------- +1 --------------------编程问答-------------------- 从提示信息看Microsoft.Office.Interop.Excel dll可能在内部引用了其它的dll。 --------------------编程问答--------------------
谢谢,也行是这个原因吧 --------------------编程问答--------------------
03 07的不支持把Excel转换为PDF,所以用了2010 --------------------编程问答-------------------- 你单纯拷贝是没用的,Excel.Interop.dll只是一个代理,真真处理的还是Office去处理的,所以你机器没有安装Office 2010 是不可以使用的,你还是把版本修改为12.0,因为你机器中安装了Office 2007 --------------------编程问答-------------------- 5#正解,你这样添加强类型引用,虽然程序写起来舒服了,但是要求客户端必须装对应版本的Excel,通过注册表查一下关联的classid或版本号就知道了
补充:.NET技术 , C#