string Path = "D:\\aaa.xlsx";
            string strConn = "Provider=Microsoft.Jet.Oledb.4.0;Data Source=" + Path + ";Extended Properties=\"Excel 14.0;HDR=Yes;IMEX=1;\"";
            OleDbConnection conn = new OleDbConnection(strConn);
            conn.Open();  想坐一个EXCEL的读写工具,找了一下网上的东西,但是运行到 conn.Open();的时候 会报错 找不到可安装的 ISAM.
而且 OleDbConnection conn = new OleDbConnection(strConn)其实也引发了异常“conn.ServerVersion”引发了“System.InvalidOperationException”类型的异常
问一下我的问题出在哪啊 很急啊  
另外我用的2010的EXCEL 会不会有影响啊

解决方案 »

  1.   

    重装office,不要装精简版,绿色版
      

  2.   

    HDR=Yes;IMEX=1;因为ISAM驱动没有安装,设置HDR和IMEX会出异常。去掉即可。
      

  3.   

    服务端的Office版本是不是2010呀2003是Excel 8.0
    2007是Excel 12.0
      

  4.   

    是2010的excel啊 版本还是14.0.什么什么的 
      

  5.   

    要用“Excel 8.0”
    更高的是不支持的,与安装的Office版本无关
      

  6.   

    string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Path + ";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=0\"";
      

  7.   

    也有可能是那个路径没取到哦我上次就碰到IE里有FileUpLoad上传但是路径取不到的问题
      

  8.   

    OleDbConnection conn = new OleDbConnection(strConn)其实也引发了异常“conn.ServerVersion”引发了“System.InvalidOperationException”类型的异常
    程序走到这里引发了一场 操作无效 连接呗关闭
    然后到open()这报错 不能更新。数据库或对象为只读。
      

  9.   

    改成 Excel 8.0 看看
      

  10.   

    楼主试试LINQ 超级好用的!
      

  11.   

             
    解决了 Provider=Microsoft.ACE.OLEDB.12.0  
    ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1;
    应该是这样 EXCEL用的12.0 oledb用的是ACE的 也是12.0 
       string strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileFullPath + ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1;'";