环境

  WIN平台IIS服务器

    经常出现于ASPX页面

汇总

1.权限问题

  出现场景 : 基于ACCESS数据库

    原因解析 :

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

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

  解决办法 :

    第一种解决方法:使用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) + System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) + 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服务

    

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

  1. 服务器文件上传下载(XShell+Xftp)

    1.下载XShell安装包+Xftp安装包.百度网盘(XShell):https://pan.baidu.com/s/1eR4PFpS 百度网盘(Xftp):https://pan.baidu.com ...

  2. 动态input file多文件上传到后台没反应的解决方法!!!

    其实我也不太清除具体是什么原因,但是后面就可以了!!! 我用的是springMVC 自带的文件上传 1.首先肯定是要有springMVC上传文件的相关配置! 2.前端 这是动态input file上传 ...

  3. python服务器文件上传下载+GUI【tkinter】

    大概就是一个通过应用程序来和服务器打交道的这么一个,小东西 1.GUI 用的是tkinter # -*- coding: UTF-8 -*- from tkinter import * import ...

  4. xftp实现本地与服务器的文件上传下载(windows)

    背景: Jemter环境搭建,需上传下载服务器文件到aws服务器上,由于secureCRT的局限性它只支持pub格式的密钥,不支持pem格式密钥,xshell是支持pem格式的,所以尝试安装xshel ...

  5. 一、手把手教你docker搭建fastDFS文件上传下载服务器

    在搭建fastDFS文件上传下载服务器之前,你需要准备的有一个可连接的linux服务器,并且该linux服务器上已经安装了docker,若还有没安装docker的,先百度自行安装docker. 1.执 ...

  6. 艺萌文件上传下载及自动更新系统(基于networkComms开源TCP通信框架)

    1.艺萌文件上传下载及自动更新系统,基于Winform技术,采用CS架构,开发工具为vs2010,.net2.0版本(可以很容易升级为3.5和4.0版本)开发语言c#. 本系统主要帮助客户学习基于TC ...

  7. 艺萌TCP文件上传下载及自动更新系统介绍(TCP文件传输)(一)

    艺萌TCP文件上传下载及自动更新系统介绍(TCP文件传输) 该系统基于开源的networkComms通讯框架,此通讯框架以前是收费的,目前已经免费并开元,作者是英国的,开发时间5年多,框架很稳定. 项 ...

  8. 【FTP】FTP文件上传下载-支持断点续传

    Jar包:apache的commons-net包: 支持断点续传 支持进度监控(有时出不来,搞不清原因) 相关知识点 编码格式: UTF-8等; 文件类型: 包括[BINARY_FILE_TYPE(常 ...

  9. NetworkComms 文件上传下载和客户端自动升级(非开源)

    演示程序下载地址:http://pan.baidu.com/s/1geVfmcr 淘宝地址:https://shop183793329.taobao.com 联系QQ号:3201175853 许可:购 ...

随机推荐

  1. 【已解决】ArcMap的界面如何恢复默认设置

    解决方案:在C盘内搜索“Normal.mxt”,将它删除,然后重启ArcMap,即可.  效果图:

  2. Linux RedHat 7 配置本地 YUM源

    尽管RPM安装方法能够帮助用户查询软件相关的依赖关系,但是还是需要安装人员自己来解决,而且有些大型软件可能与数十个程序都有依赖关系,在这种情况下安装软件事件非常痛苦和耗费事件的事情,而Yum软件仓库可 ...

  3. Java程序员必了解的JVM原理以及虚拟机的运行过程

    JVM概念 虚拟机:指以软件的方式模拟具有完整硬件,VM概念 虚拟机:指以软件的方式模拟具有完整硬件系统功能.运行在一个完全隔离环境中的完整计算机系统 ,是物理机的软件实现.常用的虚拟机有VMWare ...

  4. 【C#】 获取计算机的硬件信息

    添加引用:System.Management /// <summary> /// 获取本机的MAC地址 /// </summary> /// <returns>&l ...

  5. writeAsBytes writeAsString

    import 'dart:io';import 'dart:convert'; main()async{ File a = File('C:\\aria2\\1.txt'); var c = read ...

  6. MyCat - 数据库中间插件

    什么是MyCat 是目前最流行的分布式数据库中间插件 为什么使用MyCat 如今随着互联网的发展,数据的量级也是撑指数的增长,从GB到TB到PB.对数据的各种操作也是愈加的困难,传统的关系性数据库已经 ...

  7. 采用__call__ 实现装饰器模式

    装饰器模式在实现中也是很常见的:比如手机贴膜,手机壳 都是为了给手机增加一些额外功能 增加耐操 装饰器模式的本质就是对对象二次包装,赋额外功能 __call__ __call__是python魔术方法 ...

  8. Building Objective-C static libraries with categories

    Q: How do I fix "selector not recognized" runtime exceptions when trying to use category m ...

  9. element中日期时间插件(DateTimePicke) el-date 开始时间大于等于当前时间小于结束时间,结束时间大于开始时间且大于当前时间

    pickerOptions1: { disabledDate: time => { if (this.endTime) { return ( time.getTime() > new Da ...

  10. Linux理论小结

    1.Linux是什么 2.Linux的种类 3.Linux的软件安装方法 4.Linux的软卸载方法 5.Linux的目录功能 1.Linux是什么 2.Linux的种类 3.Linux的软件安装方法 ...