コード例 #1
0
ファイル: WaitAutomation.cs プロジェクト: xyyhqq/eXpand
        public static bool WaitForWindowToClose(string windowCaption, int timeOut = -1)
        {
            waitForWindowToCloseDelegate waitForWindowToCloseDelegate = waitForWindowToCloseHandler;
            IAsyncResult asyncResult = waitForWindowToCloseDelegate.BeginInvoke(windowCaption, null, null);

            if (!asyncResult.IsCompleted)
            {
                asyncResult.AsyncWaitHandle.WaitOne(timeOut, false);
            }
            return(asyncResult.IsCompleted && waitForWindowToCloseDelegate.EndInvoke(asyncResult));
        }
コード例 #2
0
        /// <summary>
        /// default timeout is 5000 millisec
        /// </summary>
        /// <param name="windowCaption"></param>
        public static bool WaitForWindowToClose(string windowCaption)
        {
            waitForWindowToCloseDelegate waitForWindowToCloseDelegate = waitForWindowToCloseHandler;
            IAsyncResult asyncResult = waitForWindowToCloseDelegate.BeginInvoke(windowCaption, null, null);

            if (!asyncResult.IsCompleted)
            {
                asyncResult.AsyncWaitHandle.WaitOne(5000, false);
            }
            bool b = asyncResult.IsCompleted ? waitForWindowToCloseDelegate.EndInvoke(asyncResult) : false;

            return(b);
        }