c# cefsharp filedownload 구현

C# 2020. 10. 15. 12:26

/IDownloadHandler 의 구현체를 만들어서  DownloadHandler 를 등록 해주면된다.
// 아래소스는 updated에서 다운로드되는 상황을 체크 할 수 있으며
// downloadItem.IsComplete 다운로드가 완료되었을 때 파일을 실행하도록 구현함
// 상황에 따라서 확장자에 맞게 처리 하면됨.

 chromebrowser.DownloadHandler = new DownloadHandler();
==========================================================
internal class DownloadHandler : IDownloadHandler

    {

        public object OnDownloadUpdatedFired { get; private set; }

        public void OnBeforeDownload(IWebBrowser chromiumWebBrowser, IBrowser browser, DownloadItem downloadItem, IBeforeDownloadCallback callback)

        {

            if (!callback.IsDisposed) {

                using (callback) {

                    callback.Continue(@"C:\Users\" +

                             System.Security.Principal.WindowsIdentity.GetCurrent().Name +

                             @"\Downloads\" +

                             downloadItem.SuggestedFileName,

                         showDialog: true);

                }

            } 

            

        }

        public void OnDownloadUpdated(IWebBrowser chromiumWebBrowser, IBrowser browser, DownloadItem downloadItem, IDownloadItemCallback callback)

        {

            if (downloadItem.IsComplete)

            {

                if (@downloadItem.FullPath != "")

                {

                    Process.Start(@downloadItem.FullPath);

                }

            }

        }

    }

반응형
블로그 이미지

visualp

c#, java

,