千千静听的全屏播放不阻止屏幕保护的启动 这让人很郁闷 而且从5.1.0版本到现在的5.2beta都没有解决 所以想自己写个程序来阻止屏保启动发现只需要拦截消息就可以了 重写WndProc方法
protected override void WndProc(ref Message m)
{
//WM_QUERYENDSESSION 0x0011
//WM_SYSCOMAND 0x0112
//SC_SCREENSAVE 0xF140
//SC_MONITORPOWER 0xF170
switch (m.Msg)
{
case (0x0011):
m.Result = IntPtr.Zero;
break;
case (0x0112):
if ((m.WParam.ToInt32()) == 0xF140 || (m.WParam.ToInt32()) == 0xF170)
{
m.Result = IntPtr.Zero;
}
else
goto default;
break;
default:
base.WndProc(ref m);
break;
}
}
但是并不能解决千千静听的问题 因为该消息只发给当前active的窗口 也许得用类似dll注入才能解决吧