示例#1
0
            protected internal override void Ensure(PscxCmdlet cmdlet)
            {
                OperatingSystem os = Environment.OSVersion;

                if ((os.Platform != PlatformID.Win32NT) || (os.Version.Major < 6))
                {
                    cmdlet.ErrorHandler.ThrowPlatformNotSupported(Resources.Errors.WindowsVistaRequired);
                }
            }
示例#2
0
 internal PscxSevenZipExtractor(PscxCmdlet command, FileInfo file, bool passThru, ArchiveFormat format) :
     base(command, file, format)
 {
     _passThru = passThru;
     _entries = new List<ArchiveEntry>();
     foreach (ArchiveEntry entry in this){
         _entries.Add(entry);
     }
 }
示例#3
0
        protected SevenZipBaseEx(PscxCmdlet command, FileInfo file, ArchiveFormat format)
        {
            //Debug.Assert(format != ArchiveFormat.Unknown, "format != ArchiveFormat.Unknown");

            _command         = command;
            _file            = file;
            _format          = format;
            _archivePscxPath = PscxPathInfo.GetPscxPathInfo(_command.SessionState, file.FullName);
        }
示例#4
0
            protected internal override void Ensure(PscxCmdlet cmdlet)
            {
                OperatingSystem os = Environment.OSVersion;

                if ((os.Platform != PlatformID.Win32NT) || (os.Version.Major < 6))
                {
                    cmdlet.ErrorHandler.ThrowPlatformNotSupported(Resources.Errors.WindowsVistaRequired);
                }
            }
示例#5
0
 internal PscxSevenZipExtractor(PscxCmdlet command, FileInfo file, bool passThru, InArchiveFormat format) :
     base(command, file, format)
 {
     _passThru = passThru;
     _entries  = new List <ArchiveEntry>();
     foreach (ArchiveEntry entry in this)
     {
         _entries.Add(entry);
     }
 }
示例#6
0
 internal ArchiveExtractCallback(Dictionary <uint, string> entries, Dictionary <uint, DateTime> modificationTimes, PscxCmdlet command, bool passThru, string outputPath, bool showProgress, string transform)
 {
     _passThru          = passThru;
     _entries           = entries;
     _command           = command;
     _outputPath        = outputPath;
     _showProgress      = showProgress;
     _transform         = transform;
     _modificationTimes = modificationTimes;
 }
示例#7
0
        protected SevenZipBaseEx(PscxCmdlet command, FileInfo file, InArchiveFormat format)
        {
            //Debug.Assert(format != ArchiveFormat.Unknown, "format != ArchiveFormat.Unknown");

            _command         = command;
            _file            = file;
            _format          = format;
            _archivePscxPath = PscxPathInfo.GetPscxPathInfo(_command.SessionState, file.FullName);

            string sevenZDll  = PscxContext.Instance.Is64BitProcess ? "7z64.dll" : "7z.dll";
            string sevenZPath = Path.Combine(PscxContext.Instance.Home, sevenZDll);

            Trace.Assert(File.Exists(sevenZPath), sevenZPath + " not found or inaccessible.");

            SevenZipBase.SetLibraryPath(sevenZPath);
            _extractor = new SevenZipExtractor(file.FullName);
        }
示例#8
0
        internal static Encoding Convert(PscxCmdlet cmdlet, string encoding, string parameterName)
        {
            if (string.IsNullOrEmpty(encoding) || string.Equals(encoding, "unknown", StringComparison.OrdinalIgnoreCase) || (string.Equals(encoding, "string", StringComparison.OrdinalIgnoreCase) || string.Equals(encoding, "unicode", StringComparison.OrdinalIgnoreCase)))
            {
                return(Encoding.Unicode);
            }
            if (string.Equals(encoding, "bigendianunicode", StringComparison.OrdinalIgnoreCase))
            {
                return(Encoding.BigEndianUnicode);
            }
            if (string.Equals(encoding, "utf8", StringComparison.OrdinalIgnoreCase))
            {
                return(Encoding.UTF8);
            }
            if (string.Equals(encoding, "ascii", StringComparison.OrdinalIgnoreCase))
            {
                return(Encoding.ASCII);
            }
            if (string.Equals(encoding, "utf7", StringComparison.OrdinalIgnoreCase))
            {
                return(Encoding.UTF7);
            }
            if (string.Equals(encoding, "utf32", StringComparison.OrdinalIgnoreCase))
            {
                return(Encoding.UTF32);
            }
            if (string.Equals(encoding, "default", StringComparison.OrdinalIgnoreCase))
            {
                return(Encoding.Default);
            }
            if (string.Equals(encoding, "oem", StringComparison.OrdinalIgnoreCase))
            {
                return(Encoding.GetEncoding((int)EncodingConversion.NativeMethods.GetOEMCP()));
            }
            string str = string.Join(", ", "unknown", "string", "unicode", "bigendianunicode", "ascii", "utf8", "utf7", "utf32", "default", "oem");

            cmdlet.ErrorHandler.ThrowInvalidFileEncodingArgument(parameterName, encoding, str);
            return((Encoding)null);
        }
示例#9
0
 internal PscxSevenZipReader(PscxCmdlet command, FileInfo file, ArchiveFormat format) :
     base(command, file, format)
 {
     command.WriteDebug(String.Format("Created {0} reader for {1}.", format, file));
 }
示例#10
0
 protected internal abstract void Ensure(PscxCmdlet cmdlet);
示例#11
0
 internal ArchiveExtractCallback(Dictionary<uint,string> entries, Dictionary<uint,DateTime> modificationTimes, PscxCmdlet command, bool passThru, string outputPath, bool showProgress, string transform)
 {
     _passThru = passThru;
     _entries = entries;
     _command = command;
     _outputPath = outputPath;
     _showProgress = showProgress;
     _transform = transform;
     _modificationTimes = modificationTimes;
 }