Пример #1
0
        public static string GetBinary(string name)
        {
            var fileName = Path.GetTempFileName();

            using (var fileStream = File.OpenWrite(fileName))
                using (var resourceStream = typeof(Utilities).Assembly.GetManifestResourceStream(ResourcesPrefix + name))
                {
                    resourceStream.CopyTo(fileStream);
                }
            TemporaryFiles.Add(fileName);
            return(fileName);
        }
Пример #2
0
        public static string GetBinary(string name)
        {
            var fileName = Path.GetTempFileName();

            using (var fileStream = File.OpenWrite(fileName))
                using (var resourceStream = GetBinaryStream(name))
                {
                    resourceStream.CopyTo(fileStream);
                }
            TemporaryFiles.Add(fileName);
            return(fileName);
        }
Пример #3
0
        /// <summary>
        /// Extracts the archive resource to a temporary location.
        /// </summary>
        /// <param name="archiveName"></param>
        /// <returns>Directory in which the files are extracted to</returns>
        public DirectoryInfo ExtractArchive(string archiveName)
        {
            if (TemporaryDirectory == null)
            {
                TemporaryDirectory = CurrentDir.CreateSubdirectory("temp");
            }

            var archiveStream = GetArchiveResourceStream(archiveName);
            var archive       = new FileInfo(Path.Combine(TemporaryDirectory.FullName, archiveName));

            archiveStream.WriteBytesToFile(archive);
            TemporaryFiles.Add(archive);

            archive.Extract(TemporaryDirectory);
            TemporaryFiles.AddRange(TemporaryDirectory.GetFiles());

            return(TemporaryDirectory);
        }