2011-12-16 12 views
0

が奇妙な問題を起こしています。以下のコードを見て:DirectShow MediaEvent GetEvent ErrorAbort問題

    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こと(HRESULTがある)0を返すP1 ..ですS_OKを意味する。

私が理解していることは、正常なエラーを受け取っていることです...これは意図されていません。

誰かが成功したエラーの原因となることについて考えている人はいませんか...グラフが起動してうまく動作し、whileループに入り、最終的には成功したエラーバックを返すまですべて成功です。

思考?

答えて

0

私は数年前に同じ問題を抱えていました。 は、プロトコルに把握しようとfolowing結果(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でこれらeventcodesを見つけることを試みたが、これらのヘッダーいる把握することはできません結果は文書化されるべきである。

関連する問題