System.Runtime.InteropServices.Marshal.ReleaseComObject(object);

解决方案 »

  1.   

    楼上是指excel文件锁定的问题吧,谢谢,先去试试
      

  2.   

    '生成Excel实例
                Lobj_AppExcel = New Excel.Application()            '设置Excel初始状态
                Lobj_AppExcel.Visible = False
                Lobj_AppExcel.AlertBeforeOverwriting = False
                Lobj_AppExcel.AskToUpdateLinks = False
                Lobj_AppExcel.DisplayAlerts = False            '打开工作薄
                Lobj_ExcelWorkBook = Lobj_AppExcel.Workbooks.Open(strDRptPath + mXltFileName)
                Lobj_ExcelWorkBook = Lobj_AppExcel.ActiveWorkbook            '打开Sheet
                Lobj_ExcelWorkSheet = Lobj_ExcelWorkBook.Sheets("Sheet1")            '填充表格
                PrintHead(dtHead)
                PrintDetail(dtDetail)            '显示Excel
                Lobj_AppExcel.Visible = True            '删除Excel引用
                Lobj_ExcelWorkSheet = Nothing
                Lobj_ExcelWorkBook = Nothing
                Lobj_AppExcel = Nothing            '垃圾回收
                GC.Collect()
    ----------------------------
    sheet.colse()
    最好在excel里写宏
      

  3.   

    能够在服务端不安装office软件而能够调用Microsoft Excel 10.0 object library???????有点疑问,我觉得你可以判断那个连接是否成功呀,如果成功就采用你自己所说的方法
      

  4.   

    至于你所说的浏览,好像你很清楚吧,application\workbook\worksheet你都很清楚的吧
      

  5.   

    public class Util { private static Microsoft.Office.Interop.Excel.ApplicationClass oExcel=null; public static Microsoft.Office.Interop.Excel.ApplicationClass GetOE(){ if (oExcel==null) oExcel = new Microsoft.Office.Interop.Excel.ApplicationClass(); return oExcel; } }在使用时通过调用Util.GetOE()的方法获得一个Excel.ApplicationClass对象,这样服务器端只会产生一个Excel进程了不知道对你的问题有没有什么帮助,自己的一些心得..........也希望对你有些帮助的!
      

  6.   

    谢谢楼上各位的热心帮助
    我说的
    "能够在服务端不安装office软件而能够调用Microsoft Excel 10.0 object library"
    意思就是不用完全安装整个office,比如只安装需要的组件就可以,这样可以减少对服务器的要求。我希望是不要每个服务器在安装软件以前都必须先安装office xp。或者说有没有只安装office对象库的安装包
    我尝试过手工注册office对象库,可是也没有成功感谢各位解答
      

  7.   

    我想用ado.net连接excel,比如用oledb连接,我上面用到了,但是无法列出里面的所有工作表,我就是我现在的问题
      

  8.   

    可是即使把Microsoft Excel 10.0 object library库从vs.net导入,本地调试通过,如果拿到没有装office xp的机器上还是无法运行,/bin/文件夹里已经有Interop.Excel.dll了啊?!