遇到一个奇怪的问题。看下面的代码:
while (!tokenSource.IsCancellationRequested)
{
System.Threading.Thread.Sleep(500);
while (mediaEvent.GetEvent(out ev, out p1, out p2, 0) == 0)
{
if (ev == EventCode.Complete || ev == EventCode.UserAbort)
{
tokenSource.Cancel();
}
else if (ev == EventCode.ErrorAbort)
{
Logger.Log(LogType.DEBUG, string.Format("An error occured: HRESULT={0:X}", p1));
tokenSource.Cancel();
}
mediaEvent.FreeEventParams(ev, p1, p2);
}
}
偶尔(比平常更多),ev会在第一次启动时等于eventcode.errorabort然而真正让我失望的是p1(这是一个HRESULT)返回0 ...意味着S_OK。
根据我的理解,我收到了一个成功的错误......这不是故意的。
是否有人对可能导致成功错误的内容有任何想法...图表启动并运行良好,一切都成功,直到它进入while循环并最终返回成功的errorabort。
思想?
答案 0 :(得分:0)
几年前我遇到了同样的问题。 试图找出协议并握手以下结果(ev):
Error while synchronising data and player. = 0x40
? = 0x41
? = 0x42
Moment, trying to connect... = 0x43
No internet access available or connection closed. = 0x44
The server is not responding or is not online. = 0x45
Moment, receiving data... = 0x46
? = 0x47
Connected with server. = 0x48
? = 0x49
到目前为止,我试图在nserror.mc / _NSERROR_H中找到这些事件代码,但无法弄清楚这些结果应记录在哪个标题中。