private System.ComponentModel.Container components = null;
private System.Data.OleDb.OleDbConnection cn1;  
                   void  Connect(OleDbConnection con,string FullPath)
{ string strConn="Provider=Microsoft.Jet.OLEDB.4.0; Data       Source= "+ FullPath+ ";  extended Properties=Excel 8.0 ;";
con = new OleDbConnection(strConn);
return; }
                         Connect(cn1,this.openFileDialog1.FileName);
                         cn1.Open();//出错,提示:未绑定到实例

解决方案 »

  1.   

    FullPath 是什么?是变量还是数据库的名字?
    应该是FullPath设的有问题!
      

  2.   

    =====>改成
    void  Connect( ref OleDbConnection con,string FullPath)
    Connect(ref cn1,this.openFileDialog1.FileName);
    局部变量不能传出来
      

  3.   

    楼上的方法可解,
    也可以把
    con声明为成员变量
    private OleDbConnection con=null;void  Connect(OleDbConnection con,string FullPath)
    { string strConn="....";
    con = new OleDbConnection(strConn);
    return; }
      

  4.   

    参数加out修饰。void  Connect(out OleDbConnection con,string FullPath)
      

  5.   

    应该说这样的,改为out应该是可以的,而且通过返回值也是可以的,我那个是不符合规范的
    局部变量会被清除的,这件事告诉我要规范的写代码