private object ExportFxt(IThreadedProgress progressDialog, object[] parameters)
{
Debug.Assert(parameters.Length == 3);
m_progressDlg = progressDialog;
string outPath = (string)parameters[0];
string fxtPath = (string)parameters[1];
bool fLiftOutput = (bool)parameters[2];
#if DEBUG
DateTime dtStart = DateTime.Now;
#endif
using (TextWriter w = new StreamWriter(outPath))
{
m_dumper.ExportPicturesAndMedia = m_fExportPicturesAndMedia;
if (m_sda != null && m_clerk != null)
{
m_dumper.VirtualDataAccess = m_sda;
m_dumper.VirtualFlid = m_clerk.VirtualFlid;
}
m_dumper.Go(m_cache.LangProject, fxtPath, w);
}
#if DEBUG
DateTime dtExport = DateTime.Now;
#endif
if (fLiftOutput)
{
progressDialog.Message = String.Format(xWorksStrings.ksValidatingOutputFile,
Path.GetFileName(outPath));
Validator.CheckLiftWithPossibleThrow(outPath);
}
#if DEBUG
DateTime dtValidate = DateTime.Now;
TimeSpan exportDelta = new TimeSpan(dtExport.Ticks - dtStart.Ticks);
TimeSpan validateDelta = new TimeSpan(dtValidate.Ticks - dtExport.Ticks);
Debug.WriteLine(String.Format("Export time = {0}, Validation time = {1}",
exportDelta, validateDelta));
#endif
return null;
}