我有一个基于Oracle的WinForms(.NET C#)OLTP应用程序。
我们经常从支持环境中遇到与数据库的连接丢失,随之会生成一个所谓的minidump文件(由什么生成的,我不是完全确定) - 显然它不会导致应用程序崩溃,但为了做任何事情,您必须关闭它并重新启动。
在同一目录下创建了许多这样的minidumps之后,突然间这些minidumps开始使用相当奇怪的文件名,这些文件名显然在Windows上是“非法”的。
例如,我们有一个文件名:
"°÷ƒ _minidump_default_pid_20248_tid_x19AC_2015_9_1_8_31_51.dmp"
是的,回车符是文件名的一部分。
我们发现了这一点,因为log4net监视该目录,所有的突然开始因这些无效的文件名而出现未处理的异常。
因此,我们正在努力弄清楚为什么首先会生成minidump文件,但问题在于,我们是否可以以某种方式防止生成具有无效文件名的minidump文件或以其他方式控制命名过程?
其次,有人知道为什么首先可以创建无效文件名吗?
更新: 对于任何想要查看此内容的人,试图弄清楚为什么会创建转储文件,我们的问题是当Windows接近耗尽内存时,它会生成这些文件,但出于某种原因我们并不总是会得到OOMException。