在.NET中遇到一些StackOverflowExceptions之后,我注意到它们完全绕过了.NET提供的未处理的异常处理程序(Application.ThreadException/AppDomain.UnhandledException).这非常令人不安,因为我们在这些异常处理程序中有关键的清理代码.
有没有办法克服这个问题?
我正在使用NLog进行日志记录,并且需要压缩它们创建后不久生成的旋转文本文件的负载.
NLog应该在未知的未来某个时候支持这个功能,但是有没有可以独立完成的各种功能?
我如何知道 WinForms ListView 滚动条何时到达底部?
发生这种情况时,我希望列表视图填充更多数据(在我的情况下理论上是无穷无尽的)。
OnScroll 事件为我提供了从顶部开始的滚动值,但我无法知道用户是否可以进一步滚动。
我在 .Net 中有用户控制权,我在 WndProc 中使用命中测试来允许在运行时用鼠标调整它的大小。
问题是在命中测试成功(鼠标按下、拖动以调整大小、鼠标释放)之后,控件在 Z 顺序中向上跳跃并破坏了它在表单中的位置。
我需要命中测试,因为它是一个非常定制的控件。
WndProc 有没有办法阻止控件改变它的 Z 顺序?
谢谢。
命中测试代码:
protected override void WndProc(ref Message m) {
if (!DesignMode && Sizeable && (m.Msg == Win32Wrapper.WM_NCHITTEST)) {
Point Hit = new Point((int)m.LParam & 0xFFFF, (int)m.LParam >> 16);
Hit = this.PointToClient(Hit);
int DistToBorder = 5;
if (Hit.X < DistToBorder) {
if (Hit.Y < DistToBorder) {
m.Result = (IntPtr)Win32Wrapper.HTTOPLEFT;
return;
}
if (Hit.Y > this.ClientRectangle.Bottom - DistToBorder) {
m.Result = (IntPtr)Win32Wrapper.HTBOTTOMLEFT;
return;
}
m.Result = (IntPtr)Win32Wrapper.HTLEFT;
return;
} …Run Code Online (Sandbox Code Playgroud) 我正在寻找一个好的工具,可以让我对生产版本中的异常进行详细分析.
我知道EurekaLog,我看到曾经添加了一个带有青蛙或其类似名称的软件,在谷歌搜索它没有任何结果.
有人有重新发明吗?
我的主要目标当然是在生产中发生崩溃时提取最大量的有用信息.
此外,可能有点偏离主题,类似于死锁检测.