void bwResizeBatch_DoWork(object sender, DoWorkEventArgs e)
        {
            if (DoWorkEvent != null)
            {
                DoWorkEvent(this, new DoWorkEventArgs(e.Argument));
            }

            count = 0;

            try
            {
                Dictionary <string, object> UserInputs = e.Argument as Dictionary <string, object>;

                if (UserInputs != null)
                {
                    ResizeSettings rs = new ResizeSettings((string)UserInputs["querystring"]);
                    batchItems = (List <BatchInfo>)UserInputs["batchItems"];

                    total = batchItems.Count;

                    Guid job = Guid.NewGuid();

                    var s = new BatchResizeSettings(Properties.Settings.Default.saveZipPath, job, new List <BatchResizeItem>());

                    foreach (var item in batchItems)
                    {
                        s.files.Add(new BatchResizeItem(item.FullPath, null, rs.ToStringEncoded()));
                    }

                    s.ItemEvent += s_ItemEvent;
                    s.JobEvent  += s_JobEvent;

                    new BatchResizeWorker(s).Work();
                }
            }
            catch (Exception ex)
            {
                // handle the exception.
            }
        }
        void bwResizeBatch_DoWork(object sender, DoWorkEventArgs e)
        {
            if (DoWorkEvent != null)
                DoWorkEvent(this, new DoWorkEventArgs(e.Argument));

            count = 0;

            try
            {
                Dictionary<string, object> UserInputs = e.Argument as Dictionary<string, object>;

                if (UserInputs != null)
                {
                    ResizeSettings rs = new ResizeSettings((string)UserInputs["querystring"]);
                    batchItems = (List<BatchInfo>)UserInputs["batchItems"];

                    total = batchItems.Count;

                    Guid job = Guid.NewGuid();

                    var s = new BatchResizeSettings(Properties.Settings.Default.saveZipPath, job, new List<BatchResizeItem>());

                    foreach (var item in batchItems)
                        s.files.Add(new BatchResizeItem(item.FullPath, null, rs.ToStringEncoded()));

                    s.ItemEvent += s_ItemEvent;
                    s.JobEvent += s_JobEvent;

                    new BatchResizeWorker(s).Work();
                }
            }
            catch (Exception ex)
            {
                // handle the exception.
            }
        }