Пример #1
0
        private void CrimsonToE2e(string sourceFileName, string convertedFilename)
        {
            int num = 0;

            using (InternalCrimsonToE2eConvertingParameter internalCrimsonToE2eConvertingParameter = new InternalCrimsonToE2eConvertingParameter())
            {
                internalCrimsonToE2eConvertingParameter.SourceFileName    = sourceFileName;
                internalCrimsonToE2eConvertingParameter.ConvertedFilename = convertedFilename;
                progressReport.Begin(100);
                if (!ThreadPool.QueueUserWorkItem(CrimsonToE2eThreadProc, internalCrimsonToE2eConvertingParameter))
                {
                }
                while (!internalCrimsonToE2eConvertingParameter.IsFinished)
                {
                    internalCrimsonToE2eConvertingParameter.TraceConvertedEvent.WaitOne();
                    if (internalCrimsonToE2eConvertingParameter.Percentage != num && internalCrimsonToE2eConvertingParameter.Percentage > num)
                    {
                        for (int i = 0; i < internalCrimsonToE2eConvertingParameter.Percentage - num; i++)
                        {
                            progressReport.Step();
                        }
                        num = internalCrimsonToE2eConvertingParameter.Percentage;
                    }
                }
                progressReport.Complete();
                if (internalCrimsonToE2eConvertingParameter.Exception != null)
                {
                    throw internalCrimsonToE2eConvertingParameter.Exception;
                }
            }
        }