winform应用程序
连接字符串
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=dbpath
dbpath为绝对路径 这个路径是没有任何问题的
在执行到connection.open()时 报System.Data.OleDb.OleDbException:   未指定的错误 经过搜索后 发现很多类似的错误都是ASP.NET的 发现以下解决方法
1.修改TEMP目录权限(因为是winform程序 所以应该和这个无关 未尝试)
2.压缩修复数据库(无效)
3.重新注册ACCESS驱动(无效)数据库是单机使用 不存在并发问题 且同样代码 在其他机器上可以运行 可能就有1-2台机器有这样的问题 
请问大家遇到过这样的问题吗 有没有什么办法可以解决?

解决方案 »

  1.   

    Server.MapPath()查看路径?有链接成功过吗?
      

  2.   

    回楼上 是winform 不是asp.net
      

  3.   

    通过Application.StartupPath+""设置地址
      

  4.   

    路径没有问题。有可能是ACCESS的驱动的问题。你看一下。那些机器的。注册数据连接里有没有Microsoft.Jet.OLEDB.4.0
      

  5.   

    我测试了一下 
    路径是绝对没有问题的 因为在报错的机器上 把路径输出了 通过输出路径 是可以打开ACCESS的
    数据库没有密码 也没有被其他程序打开基本上可以排除ACCESS的问题 因为重新注册了驱动后 提示注册成功 然后把没有报错机器上的ACCESS拷贝过来 覆盖原ACCESS文件 但依旧报错现怀疑是:
    1.权限不足 因为我们的机器 都加入了域 但登陆的系统账户也加入到了权限中 可能性较小
    2.操作系统环境关系 
    继续排查
      

  6.   

    权限问题吧,把数据库文件对应的文件夹设置为 everyone 可读写。
      

  7.   

    请您把dbpath贴出来看,
    一般地:Data Source=\\c:\\temp\\db.mdf
      

  8.   

    要看看文件夹有没有写权限,写个txt到那个文件夹试试。
      

  9.   

    我的也出现这个问题了,同样的语句连接access数据库,asp.net正常,winform出现此错误码