0

我们的 C# 控制台应用程序运行良好。此应用程序在内部运行一些 C++ dll。有时,我们会遇到 C5 错误(底层 dll 的未知 C++ 错误)或未处理的 C# 异常,它们都会终止应用程序。(我在 Windows 事件日志中看到了它)。

问题不是错误,而是在 Windows 的 Temp 文件夹中生成的转储文件。它填满了我们的磁盘(空间非常低的虚拟磁盘),并导致其他正在运行的应用程序失败。这是 2 个带有“.mdmp”和“.hdmp”扩展名的文件。它们占用大约 500MB。我在互联网上读到这些与“Windows 错误报告”有关,但我检查了我们的 Windows 设置(服务器管理器->本地服务器)并且它已关闭。

我还将 C# 控制台应用程序的构建设置更改为:“内部编译器错误报告”为“发送”;希望它将转储文件发送到它打算发送的某个地方并且不为后者保存它,但是临时文件仍然在磁盘上生成。我想我应该把它改成“无”。

如果有办法停止创建这些临时文件,请帮助我。

谢谢先进

4

2 回答 2

1

一种选择是从错误报告中排除您的 exe。请参阅此处的“ExcludedApplications”:https ://msdn.microsoft.com/en-us/library/bb513638.aspx 。

我没有足够的积分来内联回复上一个答案。所以在这里回复。上一个答案中提到的设置是针对系统崩溃的,也就是蓝屏。这些设置不会影响用户模式应用程序崩溃。

于 2018-02-06T04:11:26.743 回答
0

在 Windows Server 2003 等旧环境中,要禁用机器上的 .HDMP 文件,只需右键单击“我的电脑”并单击“属性”,转到“高级”选项卡并单击“错误报告”,您可以在此处禁用它.

于 2018-02-05T06:31:12.093 回答