Пример #1
0
        public void Extract(
            string vhdx,
            string outputDirectory,
            IList <Regex> allowFilters = null,
            IList <Regex> denyFilters  = null
            )
        {
            FileEntry fileEntry = null;

            if (!File.Exists(vhdx))
            {
                Logger.Warn("ExtractFile called, but {0} does not exist.", vhdx);
                return;
            }

            using (var fs = new FileStream(vhdx, FileMode.Open))
            {
                try
                {
                    fileEntry = new FileEntry(Path.GetFileName(vhdx), fs);
                }
                catch (Exception ex)
                {
                    Logger.Debug(ex, "Failed to extract file {0}", vhdx);
                }

                mExtractor.ExtractToDirectory(
                    outputDirectory,
                    fileEntry,
                    allowFilters,
                    denyFilters,
                    true
                    );
            }
        }