win服务器 文件上传下载出现“未指定的错误” 解决方法汇总

环境sql

  WIN平台IIS服务器数据库

    常常出现于ASPX页面 服务器

汇总运维

  1.权限问题ide

  出现场景 : 基于ACCESS数据库工具

    缘由解析 :测试

    1.首先须要排除自身问题,例如建表使用关键字,格式错误,插入数据与数据库类型不匹配等等网站

    2.TEMP权限检查,当数据写入数据库的时候须要获取当前服务器权限只有设置了IIS的temp写入权限才能进行数据写入spa

  解决办法 :.net

    第一种解决方法:使用Ms Access里的“工具->数据库实用工具->压缩和修复数据库”来修复db/global.asa。若是修复后仍是出错,请查看db目录下是否有global.dbl文件,若是有请删除,如没法删除请结束服务器w3wp.exe进程(win2003)或Aspnet_wp.exe进程(win2000)后再删除。
    说明:该种方法适用于数据库设置错误问题致使数据写入失败,比较容易发现问题所在


    第二种解决办法:
    设置Internet信息服务(IIS)管理器中的应用程序池,更改网站的程序池属性见下图:

    

    调整后便可解决问题。
    说明:标准的IIS服务器权限设置问题,通常企业有运维部门专门维护一般不会出现该状况


    第三种解决方法:
    其实只要很简单的几步:
    开始。。。运行。。。regsvr32 jscript.dll开始。。。
    运行。。。regsvr32 vbscript.dll开始。。。
    运行。。。iisreset 

    说明:简单百度了一下 REGSVR32为系统注册与反注册工具,该工具主要用于修复系统文件好比上面所指regsvr32 jscript.dll 修复的是js文件本机注册问题至关于从新修复引用的概念(不肯定)它里面包含不少工具具体自行查看,最后一句IISRESET 重启iis服务

  2.系统服务问题

    出现场景:各类文件上传,EXCEL WORD 等等

    缘由分析:win平台下上传文件大多数分为两种 OLDB 与NPOI

      OLDB:当文件上传到服务器的时候服务器须要调用自己的解析器去读取当前文件经过连接字符串形式获取到数据从而反馈DataSet或者 DataTable数据,分析底层代码以下  

    

    当进行连接时会直接抛出异常,固然上述截图只是测试用

  解决办法:

    首先,若是该状况发生在生产服务器上优先采用NPOI方式上传不影响正常业务,其次发现问题跟踪后对比服务器配置,未更改状况下对比win服务肯定是否因为更新致使某些服务异常,最后尝试解决。

  错误分析:

  

异常详细信息: System.Data.OleDb.OleDbException: 未指定的错误 

[OleDbException (0x80004005): 未指定的错误] System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection) +1131233 System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) +53 System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup) 


网上的解决方案不少,正确答案原来如此: 

在链接数据库的时候是这么作的: 

public static OleDbConnection getxwdtConn() 

{ 

string connectionstring = WebConfigurationManager.ConnectionStrings["xwdtconnection"].ConnectionString; 

OleDbConnection con = new OleDbConnection(connectionstring); 

return con; 

} 

在MS sql或Access,中都不会有问题,调试也不会有问题。 

发布以后会有如上错误提示。 

是由于数据库的操做中确定有oledbdatadapter,或dataset,而且使用了con.open()和con.close(),。 

具体解决只需把open 和close删掉就能够了,由于用的是断开式链接。 

若是改用静态变量的作法

 2018年4月25日更新

 win服务器发生该问题后,因为Oldb反馈为null 改成npoi 方式上传 后更新npoi系统引用文件莫名其妙修复................若遇到该问题不妨一试,记得对比win服务

相关文章
相关标签/搜索