亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? winimageiso.cs

?? 對ima、imz壓縮文件修改
?? CS
?? 第 1 頁 / 共 3 頁
字號:
                {
                    if (cPath == String.Empty) { return Item; } else { return Item.Children.LocateValue(cPath); }
                }
            }
            return null;
        }
        public new void Remove(string Key)
        {
            string[] IDs = Key.Split(':');
            string lKey = (Parent != null ? Parent.Key + ":" : "") + IDs[0];
            if (base.ContainsKey(lKey))
            {
                string cKey = "";
                for (int i = 1; i <= IDs.GetUpperBound(0); i++) { cKey += IDs[i] + (i < IDs.GetUpperBound(0) ? ":" : ""); }
                if (cKey.Length == 0) { base.Remove(lKey); } else { base[lKey].Children.Remove(cKey); }
            }
        }
        public new IsoObject this[string Key]
        {
            get
            {
                string[] IDs = Key.Split(':');
                string lKey = (Parent != null ? Parent.Key + ":" : "") + IDs[0];
                if (base.ContainsKey(lKey))
                {
                    string cKey = "";
                    for (int i = 1; i <= IDs.GetUpperBound(0); i++) { cKey += IDs[i] + (i < IDs.GetUpperBound(0) ? ":" : ""); }
                    if (cKey.Length == 0) { return base[lKey]; } else { return base[lKey].Children[cKey]; }
                }
                else { return null; }
            }
        }
    }

    internal class BulkWorker
    {
        #region Declarations
            private string Action = "";
            private Wimadll.WimCB CallBack;
            public string Destination = "";
            private int iCBResult = (int)WinImage.CallBackResult.OK;
            private IntPtr iImgHandle = IntPtr.Zero;
            private int iProcCount = 0;
            public ProgressDialog.IProgressCallback ProgDisplay = null;
            public IsoObject Root = null;
            public bool Success = false;
            public WinImageError LastError = new WinImageError();
            private const int DWEV_NEXTFILE = 0x7FFF0010;
        #endregion
        public BulkWorker(IntPtr Handle)
        {
            iImgHandle = Handle;
            CallBack = new Wimadll.WimCB(Progress);
        }
        public void ExtractFiles()
        {
            if (ProgDisplay != null)
            {
                ProgDisplay.Begin(true);
                ProgDisplay.SetRange_Primary(0, Root.SelectedFiles + Root.SelectedFolders);
                ProgDisplay.SetRange_Secondary(0, 100);
                ProgDisplay.SetCaption("Extracting Files");
            }
            Action = "Extracting: ";
            try
            {
                Success = ExtFiles(Destination, Root);
            }
            catch (InvalidDataException e)
            {
                LastError.ErrorCause = e.Message;
                LastError.ErrorSource = "ExtractFiles";
                LastError.ErrorType = WinImageError.EType.InvalidData;
                Success= false;
            }
            catch (InvalidOperationException e)
            {
                LastError.ErrorCause = e.Message;
                LastError.ErrorSource = "ExtractFiles";
                LastError.ErrorType = WinImageError.EType.InvalidOperation;
                Success = false;
            }
            catch (Exception e)
            {
                LastError.ErrorCause = e.Message;
                LastError.ErrorSource = "ExtractFiles";
                LastError.ErrorType = WinImageError.EType.Other;
                Success = false;
            }
            if (ProgDisplay != null) { ProgDisplay.End(); }
        }
        private bool ExtFiles(string sDestPath, IsoObject isoCurParent)
        {
            bool Success = true;
            foreach (IsoObject item in isoCurParent.Children)
            {
                if (iCBResult == (int)WinImage.CallBackResult.Cancel) { Success = false; break; }
                if (item.Selected || item.SelectedChildren)
                {
                    if (item.ObjectType == IsoObject.ObjType.otDir)
                    {
                        string sOutputDir = Path.Combine(sDestPath, item.LongName);
                        if (!Directory.Exists(sOutputDir)) { Directory.CreateDirectory(sOutputDir); }
                        if (item.Selected) { iCBResult = CallBack(DWEV_NEXTFILE, (uint)++iProcCount, 0, 0, 0); }
                        if (iCBResult == (int)WinImage.CallBackResult.Cancel) { Success = false; break; }
                        if (item.SelectedChildren)
                        {
                            Wimadll.ChszDir(iImgHandle, item.ShortName);
                            Success = Success && ExtFiles(sOutputDir, item);
                            Wimadll.ChDir(iImgHandle, Wimadll.CDM_UPPER);
                        }
                    }
                    else
                    {
                        string sOutputFile = Path.Combine(sDestPath, item.LongName);
                        StringBuilder OFile = new StringBuilder(260);
                        if (File.Exists(sOutputFile)){File.Delete(sOutputFile);}
                        Success = Success && Wimadll.ExtractFileCB(iImgHandle, CallBack, IntPtr.Zero, item.Position, sDestPath, OFile);
                        iCBResult = CallBack(DWEV_NEXTFILE, (uint)++iProcCount, 0, 0, 0);
                        if (iCBResult == (int)WinImage.CallBackResult.Cancel) { Success = false; break; }
                    }
                }
            }
            if (iCBResult == (int)WinImage.CallBackResult.Cancel) { throw new Exception("Operation Aborted By The User."); }
            return Success;
        }
        private int Progress(uint dwEvent, uint dwEventParam, uint dwWin32Err, int lpParam, int lpUserParam)
        {
            switch (dwEvent)
            {
                case DWEV_NEXTFILE:
                    if (ProgDisplay != null) { ProgDisplay.Increment_Primary(1); }
                    break;
                case Wimadll.DWEV_PROGRESSPERCENT:
                    if (ProgDisplay != null)
                    {
                        if (ProgDisplay.Stages == 2) { ProgDisplay.StepTo_Secondary((int)dwEventParam); } else { ProgDisplay.StepTo_Primary((int)dwEventParam); }
                        Wimadll.PROGRESSFILE_SUPINFO psInfo = (Wimadll.PROGRESSFILE_SUPINFO)Marshal.PtrToStructure((IntPtr)lpParam, typeof(Wimadll.PROGRESSFILE_SUPINFO));
                        if (psInfo.dwCurrentPos == 0) { ProgDisplay.SetText(Action + psInfo.lpszFullName + "\nTo: " + psInfo.lpszName); }
                    }
                    break;
                default:
                    Console.WriteLine("Callback Event: " + dwEvent.ToString());
                    break;
            }
            if (ProgDisplay == null) { return (int)WinImage.CallBackResult.OK; } else { return ProgDisplay.IsAborting ? (int)WinImage.CallBackResult.Cancel : (int)WinImage.CallBackResult.OK; }
        }
    }
    /// <summary>
    /// This class is used to return information about
    /// the last error that was encountered by the WinImage
    /// Library.
    /// </summary>
    public class WinImageError
    {
        /// <summary>
        /// This type defines the kinds of errors that
        /// can be returned by the PDTB Library.
        /// </summary>
        public enum EType
        {
            /// <summary>This means that no error has occured.</summary>
            None = 0,
            /// <summary>This means that some of the data entered by the calling application is either incomplete or invalid.</summary>
            InvalidData = 1,
            /// <summary>This means that an operation was performed illegally.  Perhaps an attempt to encrypt was made before the Book Key was set, or to Randomize Names with a Key that doesn't support that security level.</summary>
            InvalidOperation = 2,
            /// <summary>This means that an unexpected exception was encountered.</summary>
            Other = 3
        }
        private EType ErrType;
        private string ErrCause;
        private string ErrSource;
        /// <summary>
        /// This Read-Only property allows applications to retrieve
        /// information about the cause of the last error.
        /// </summary>
        /// <value>The cause of the last error.</value>
        public string ErrorCause
        {
            get { return ErrCause; }
            internal set { ErrCause = value; }
        }
        /// <summary>
        /// This Read-Only property allows applications to retrieve
        /// information about the source of the last error.
        /// </summary>
        /// <value>The source of the last error.</value>
        public string ErrorSource
        {
            get { return ErrSource; }
            internal set { ErrSource = value; }
        }
        /// <summary>
        /// This Read-Only property allows applications to retrieve
        /// information about the type of the last error.
        /// </summary>
        /// <remarks>
        /// See the description of the <see cref="EType"/> enumerated
        /// type for more information about the possible error types.
        /// </remarks>
        /// <value>The type of the last error.</value>
        public EType ErrorType
        {
            get { return ErrType; }
            internal set { ErrType = value; }
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="PDTBError"/> class.
        /// </summary>
        internal WinImageError()
        {
            //Making this constructor an internal method allows outside
            //applications to see this class, since it is a public class,
            //but they can not CREATE an instance of this class, only 
            //reference instances created by the library.
            ErrCause = "";
            ErrSource = "";
            ErrType = EType.None;
        }
    }

    internal static class WinImageHelpers
    {
        [DllImport("KERNEL32.DLL", EntryPoint = "GetDiskFreeSpaceExW", CharSet = CharSet.Unicode)]
        private static extern bool GetDiskFreeSpace(string drive, out long FreeUserBytes, out long TotalBytes, out long TotalFreeBytes);
        internal static long GetFreeSpace(string sDestination)
        {
            long lUserBytes = 0;
            long lTotalBytes = 0;
            long lFreeBytes = 0;
            bool bRet = GetDiskFreeSpace(Path.GetPathRoot(sDestination), out lUserBytes, out lTotalBytes, out lFreeBytes);
            //If we get a free space value back from the GetDiskFreeSpace function, then
            //act accordingly, otherwise, ALWAYS return 0.
            if (bRet) { return lUserBytes; } else { return 0; }
        }
    }
}


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本欧美一区二区| youjizz久久| 风间由美一区二区三区在线观看| 99精品欧美一区二区三区小说| 欧美日韩不卡一区二区| 久久久美女艺术照精彩视频福利播放| 亚洲精品日日夜夜| 国产乱国产乱300精品| 欧美午夜一区二区| 国产精品你懂的在线| 日本欧美久久久久免费播放网| 色哟哟国产精品免费观看| 精品处破学生在线二十三| 亚洲第一主播视频| 99久久久久免费精品国产| 久久免费精品国产久精品久久久久| 亚洲午夜激情网页| 91视频观看视频| 国产精品色一区二区三区| 精品一二线国产| 欧美一区二区三区在线视频| 亚洲黄色在线视频| 一本久道久久综合中文字幕| 久久久不卡网国产精品一区| 久久aⅴ国产欧美74aaa| 在线播放91灌醉迷j高跟美女 | 丁香桃色午夜亚洲一区二区三区| 欧美巨大另类极品videosbest| ...xxx性欧美| 不卡在线视频中文字幕| 国产日本欧洲亚洲| 国产高清视频一区| 欧美经典一区二区| 成人精品视频.| 国产精品久久久久婷婷| 福利视频网站一区二区三区| 国产日韩欧美不卡| 成人亚洲精品久久久久软件| 久久久久久毛片| 国产a级毛片一区| 国产精品免费aⅴ片在线观看| 国产成人一区在线| 亚洲欧美综合色| 94色蜜桃网一区二区三区| 亚洲精品水蜜桃| 91精品欧美福利在线观看| 秋霞电影网一区二区| 日韩欧美国产电影| 国产一本一道久久香蕉| 国产精品欧美一区二区三区| 不卡的av电影| 一区二区欧美国产| 欧美久久一二三四区| 久久精品国产网站| 国产欧美中文在线| 色av成人天堂桃色av| 日韩av在线播放中文字幕| 精品国产一区二区三区av性色| 国内精品写真在线观看| 国产精品毛片a∨一区二区三区| 一本色道久久综合亚洲精品按摩| 亚洲国产精品尤物yw在线观看| 欧美一区二区日韩| 国产成人精品一区二| 一区二区三区免费网站| 欧美二区三区91| 懂色av一区二区三区蜜臀| 亚洲成人三级小说| 久久欧美一区二区| 欧美日韩一级大片网址| 国产原创一区二区三区| 一区二区三区四区在线| 精品国产乱码久久久久久影片| eeuss鲁一区二区三区| 日韩专区欧美专区| 国产精品嫩草久久久久| 欧美一区二区三区免费观看视频| 成人一区二区三区视频在线观看| 亚洲国产精品影院| 国产精品久久久久久久久免费桃花| 欧美亚洲禁片免费| 国产成人免费高清| 婷婷一区二区三区| 亚洲同性gay激情无套| 精品成人一区二区三区四区| 日本精品一区二区三区高清| 国产一区二区三区蝌蚪| 香港成人在线视频| 综合久久久久久久| 久久亚洲一区二区三区明星换脸| 欧洲色大大久久| 丁香婷婷综合激情五月色| 久久草av在线| 亚洲福利电影网| 国产精品每日更新在线播放网址| 欧美va亚洲va在线观看蝴蝶网| 欧美三日本三级三级在线播放| 风流少妇一区二区| 国产精品一级片在线观看| 免费看日韩精品| 亚洲韩国一区二区三区| 亚洲美女淫视频| 国产农村妇女毛片精品久久麻豆 | 日韩高清不卡在线| 亚洲人成网站影音先锋播放| 国产日韩欧美a| 精品国产乱码久久久久久浪潮| 欧美精品黑人性xxxx| 欧美日韩在线免费视频| 欧洲精品一区二区| 色婷婷综合久色| 日本精品一级二级| 91久久精品一区二区| 91蝌蚪porny九色| 色狠狠一区二区三区香蕉| 91丝袜美腿高跟国产极品老师| 成人影视亚洲图片在线| 99久久亚洲一区二区三区青草| 成人aaaa免费全部观看| 成人综合在线视频| 99久久综合国产精品| 色综合久久88色综合天天6| 91一区一区三区| 91精彩视频在线观看| 欧美色视频在线| 欧美大黄免费观看| 久久一留热品黄| 国产精品久久久久久福利一牛影视 | 精品国产伦理网| 久久久av毛片精品| 日韩美女精品在线| 亚洲综合小说图片| 日韩高清在线观看| 国产精品自产自拍| 91香蕉视频mp4| 欧美吞精做爰啪啪高潮| 8x8x8国产精品| 久久蜜桃av一区精品变态类天堂| 久久久久久99久久久精品网站| 中文字幕巨乱亚洲| 亚洲一区二区视频在线| 日韩制服丝袜av| 国产精品自拍av| 一本色道久久综合亚洲91| 欧美精选午夜久久久乱码6080| 欧美xxxxxxxxx| 国产精品色婷婷| 日韩va亚洲va欧美va久久| 国产成人在线网站| 在线视频中文字幕一区二区| 日韩美女一区二区三区| 国产精品狼人久久影院观看方式| 亚洲高清视频的网址| 国产在线国偷精品免费看| 色欧美片视频在线观看| 欧美电影免费观看高清完整版在| 国产精品家庭影院| 日韩成人dvd| 成人免费毛片嘿嘿连载视频| 欧美久久一二区| 日本一区二区三区在线观看| 亚洲在线成人精品| 国产夫妻精品视频| 欧美日韩成人在线一区| 国产精品蜜臀在线观看| 日本不卡高清视频| 99国产精品久久久久| 精品国产一区二区三区久久影院| 一区二区三区久久| 国产成人精品免费一区二区| 欧美老年两性高潮| 一区二区三区久久久| 国产99久久久国产精品免费看| 欧美精品久久久久久久多人混战| 中文字幕一区二区三区蜜月| 激情小说欧美图片| 7777精品伊人久久久大香线蕉超级流畅| 欧美极品aⅴ影院| 久久国产成人午夜av影院| 在线看国产一区| 中文字幕在线不卡| 国产精品亚洲一区二区三区妖精| 欧美一区日本一区韩国一区| 一区二区三区不卡视频在线观看| 成人网男人的天堂| 久久久天堂av| 国产一区二区三区在线观看免费视频| 欧美日韩精品欧美日韩精品| 亚洲欧美日韩小说| 91在线播放网址| 亚洲免费观看高清完整版在线观看熊 | 久久久久九九视频| 国产在线一区二区| 久久众筹精品私拍模特| 日韩和的一区二区| 91精品国产一区二区| 日本美女一区二区三区视频| 91精品国产综合久久精品图片| 香蕉成人啪国产精品视频综合网 | 久久久综合激的五月天|