<div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-family:tahoma,sans-serif"><br></div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Wed, 6 Aug 2025 at 09:13, Balázs Varga <<a href="mailto:balazs.varga991@gmail.com">balazs.varga991@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>we make these calls and we 
InitializeWindow, so we create a MFPCreateMediaPlayer, CreateMediaItemFromURL with the tmp media file (avi): file:///C:/cygwin64/tmp/tesB70A.tmp,</div><div>which methods (<span class="gmail_default" style="font-family:tahoma,sans-serif"></span>CreateMediaItemFromURL) completes asynchronously. When it does, MFPlay sends an MFP_EVENT_TYPE_MEDIAITEM_CREATED event, but before it could have finished,</div><div>we dispose and Clear everything (also hwnd windows) related to MediaWindow/Player and I guess this happened (second call stack) MFPlay.dll!CMFPInnerPlayer::NotifyMediaItemCreatedEvent(struct IMFAsyncResult *)    Unknown

</div></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div style="font-family:tahoma,sans-serif"><br></div></div></div></blockquote></div></blockquote><div><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif">Probably the Player object, inside its dispose() method, or its destructor, needs to wait until the CreateMediaItemFromURL call completes.</div><div class="gmail_default" style="font-family:tahoma,sans-serif">We do similar stuff for child threads and asynchronous vcl PostUserEvent callbacks.</div><div class="gmail_default" style="font-family:tahoma,sans-serif"><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif"><br></div></div></div>