我正在使用消息筛选器来控制winform应用程序中的授权。我的(简化)代码是这样的:
public bool PreFilterMessage(ref Message m)
{
if(IsAllowed())
return true;
throw new UnauthorizedAccessException();
}但在抛出异常后,相同的消息不断返回,导致无限循环。
是否有可能在PreFilterMessage内部抛出异常?
发布于 2018-04-26 17:40:27
PreFilterMessage捕获所有发生的事件,其中可能包括当您关闭抛出的异常时触发的事件。
因此,您的PreFilterMessage要么返回true (因此事件被忽略),要么抛出异常。这看起来不像是故意的行为。
https://stackoverflow.com/questions/46466799
复制相似问题