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

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

?? ztssplit v1.11.asm

?? 一個文件分割器軟件
?? ASM
?? 第 1 頁 / 共 3 頁
字號:
;*************************************************************
;*      Author: 一塊三毛錢
;*      E_mail: crazy_soft@163.net
;*    Homepage: http://zhongts.yeah.net
;*************************************************************
;*     Compile: Hutch's Masm32
;* Create Time: 2002.6.5
;*      Modify: 2003.10.17
;* Description: 文件分割器 V1.11
;*************************************************************

.386
.model flat,stdcall
option casemap:none

;****************************************************************************************

include     ztsSplit V1.11.inc

;****************************************************************************************

DlgProc        proto :DWORD,:DWORD,:DWORD,:DWORD
SetToolTip     proto :DWORD
GetFolder      proto :DWORD,:DWORD
SizeEditProc   proto :DWORD,:DWORD,:DWORD,:DWORD
FileEditProc   proto :DWORD,:DWORD,:DWORD,:DWORD
FolderEditProc proto :DWORD,:DWORD,:DWORD,:DWORD
Split          proto :DWORD,:DWORD,:DWORD
Merge          proto :DWORD,:DWORD

;****************************************************************************************

.data
AppName          db  "ztsSplit",0
DlgName          db  "DLG_MAIN",0
TooltipClassName db  "Tooltips_class32",0
strSysMenu       db  "窗口處在最上",0
strBtnStart01    db  "分割(&C)",0
strBtnStart02    db  "合并(&M)",0
strMergeExt      db  ".mrg",0
strTitleSplit    db  "選擇要分割的文件",0
strTitleMerge    db  "選擇要合并的文件",0
strFilterSplit   db  "所有文件(*.*)",0,"*.*",0,0
strFilterMerge   db  "合并信息文件(*.mrg)",0,"*.mrg",0,0
strBrowseTitle   db  "選擇文件存放目錄:",0
strError01       db  "打開文件出錯",0
strError02       db  "文件創建錯誤",0
strError03       db  "文件太小,不需要分割",0
strError04       db  "請先指定分割的大小",0
strError05       db  "請先選擇需要分割/合并的文件",0
strError06       db  "請選擇分割/合并后文件存放的目錄",0
strError07       db  "沒有合并信息,不能正確合并文件",0
strCopyright     db  "ztsmrg1.1該文件由分割軟件 ztsSplit 生成",0
format1          db  "%03d",0

.data?
hInstance      HINSTANCE ?
hMainWnd       dd    ?
hToolTip       dd    ?         ;工具提示控件的句柄
hSysMenu       dd    ?         ;系統菜單句柄
hProgress      dd    ?         ;進度條句柄
hEditFile      dd    ?         ;文件名編輯框句柄
hEditFolder    dd    ?         ;目錄編輯框句柄
hEditSize      dd    ?         ;分割大小編輯框句柄
hBtnStart      dd    ?         ;分割/合并按鈕的句柄
hBtnExit       dd    ?         ;退出按鈕的句柄
hBtnFile       dd    ?
hBtnFolder     dd    ?
bSplitOrMerge  BOOL  ?         ;分割還是合并
bKbOrMb        BOOL  ?         ;分割大小的單位是 KB 還是 MB
bSizeEditFocus BOOL  ?         ;“分割大小”編輯框是否擁有焦點
bFileEditFocus BOOL  ?         ;“文件名”編輯框是否擁有焦點
bFolderEditFocus BOOL ?        ;“目錄”編輯框是否擁有焦點
strPath        db MAX_PATH dup (?) ;接收拖動來的文件名
strFolder      db MAX_PATH dup (?) ;文件所在的目錄
strFileName    db MAX_PATH dup (?) ;可執行文件路徑
strModuleDir   db MAX_PATH dup (?) ;可執行文件所在的目錄
strIniFilePath db MAX_PATH dup (?)
ofn            OPENFILENAME  <?>
bi             BROWSEINFO    <?>
OldSizeEditProc   dd ?
OldFileEditProc   dd ?
OldFolderEditProc dd ?

;****************************************************************************************

.code
start:
        invoke GetModuleHandle, NULL
        mov    hInstance,eax
        invoke DialogBoxParam,hInstance,addr DlgName,NULL,addr DlgProc,0
        invoke ExitProcess,eax
        invoke InitCommonControls

;對話框窗口過程**************************************************************************

DlgProc  proc  hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
        local  rect:RECT
        local  pt:POINT

        .IF     uMsg==WM_CLOSE
                invoke  EndDialog, hWnd, NULL

        .ELSEIF uMsg==WM_INITDIALOG

                push    hWnd
                pop     hMainWnd

                ;設置圖標
                invoke  LoadIcon, hInstance, IDI_MAIN
                invoke  SendMessage, hWnd, WM_SETICON, ICON_SMALL, eax

                ;添加系統菜單項:“窗口處在最上”
                invoke  GetSystemMenu, hWnd, FALSE          ;取得系統菜單的句柄
                mov     hSysMenu, eax                      ;句柄 => hSysMenu
                invoke  AppendMenu, hSysMenu, MF_SEPARATOR, NULL,NULL                ;插入分隔線
                invoke  AppendMenu, hSysMenu, MF_STRING or MF_CHECKED, IDM_SYSMENU, addr strSysMenu ;插入"窗口處在最上"菜單
                invoke  SetWindowPos, hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE

                ;取得幾個控件的句柄
                invoke  GetDlgItem, hWnd, IDC_PROGRESS
                mov     hProgress, eax
                invoke  GetDlgItem, hWnd, IDC_EDIT_FILE
                mov     hEditFile, eax
                invoke  GetDlgItem, hWnd, IDC_EDIT_FOLDER
                mov     hEditFolder, eax
                invoke  GetDlgItem, hWnd, IDC_EDIT_SIZE
                mov     hEditSize, eax
                invoke  GetDlgItem, hWnd, IDC_BTN_START
                mov     hBtnStart, eax
                invoke  GetDlgItem, hWnd, IDC_BTN_EXIT
                mov     hBtnExit, eax
                invoke  GetDlgItem, hWnd, IDC_BTN_FILE
                mov     hBtnFile, eax
                invoke  GetDlgItem, hWnd, IDC_BTN_FOLDER
                mov     hBtnFolder, eax

                ;初始化為“分割文件”“KB”方式
                invoke  GetDlgItem, hWnd, IDC_RADIO_SPLIT
                invoke  SendMessage, eax, BM_SETCHECK,BST_CHECKED,0
                mov     bSplitOrMerge, TRUE
                invoke  GetDlgItem, hWnd, IDC_RADIO_KB
                invoke  SendMessage, eax, BM_SETCHECK,BST_CHECKED,0
                mov     bKbOrMb, TRUE

                ;創建工具提示控件
                invoke  CreateWindowEx, NULL, addr TooltipClassName, NULL, TTS_ALWAYSTIP, \
                                CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, \
                                NULL, NULL, hInstance, NULL
                mov     hToolTip, eax
                invoke  SetWindowPos, hToolTip, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE

                ;設置所有的提示信息
                invoke  SetToolTip, hWnd

                ;子類化編輯框控件
                invoke  SetWindowLong, hEditSize, GWL_WNDPROC, addr SizeEditProc
                mov     OldSizeEditProc, eax
                mov     bSizeEditFocus, FALSE
                invoke  SetWindowLong, hEditFile, GWL_WNDPROC, addr FileEditProc
                mov     OldFileEditProc, eax
                mov     bFileEditFocus, FALSE
                invoke  SetWindowLong, hEditFolder, GWL_WNDPROC, addr FolderEditProc
                mov     OldFolderEditProc, eax
                mov     bFolderEditFocus, FALSE

                invoke  SetFocus, hEditFile               ;設置焦點,加了這條語句后下面要用 mov  eax, FLASE / ret ,否則無效

                mov     eax, FALSE
                ret

        .ELSEIF uMsg==WM_COMMAND

                mov     eax, wParam
                and     eax, 0ffffh
                .IF     eax==IDC_RADIO_SPLIT     ;切換到分割狀態
                        .IF     !bSplitOrMerge
                                invoke  GetDlgItem, hWnd, IDC_EDIT_SIZE
                                invoke  EnableWindow, eax, TRUE
                                invoke  GetDlgItem, hWnd, IDC_RADIO_KB
                                invoke  EnableWindow, eax, TRUE
                                invoke  GetDlgItem, hWnd, IDC_RADIO_MB
                                invoke  EnableWindow, eax, TRUE
                                invoke  GetDlgItem, hWnd, IDC_BTN_START
                                invoke  SetWindowText, eax, addr strBtnStart01
                                mov     bSplitOrMerge, TRUE
                        .ENDIF
                .ELSEIF eax==IDC_RADIO_MERGE     ;切換到合并狀態
                        .IF     bSplitOrMerge
                                invoke  GetDlgItem, hWnd, IDC_EDIT_SIZE
                                invoke  EnableWindow, eax, FALSE
                                invoke  GetDlgItem, hWnd, IDC_RADIO_KB
                                invoke  EnableWindow, eax, FALSE
                                invoke  GetDlgItem, hWnd, IDC_RADIO_MB
                                invoke  EnableWindow, eax, FALSE
                                invoke  GetDlgItem, hWnd, IDC_BTN_START
                                invoke  SetWindowText, eax, addr strBtnStart02
                                mov     bSplitOrMerge, FALSE
                        .ENDIF
                .ELSEIF eax==IDC_RADIO_KB        ;分割大小的單位是 KB
                        .IF     !bKbOrMb
                                mov     bKbOrMb, TRUE
                                invoke  SetFocus, hEditSize     ;“分割大小”編輯框得到焦點
                        .ENDIF
                .ELSEIF eax==IDC_RADIO_MB        ;分割大小的單位是 MB
                        .IF     bKbOrMb
                                mov     bKbOrMb, FALSE
                                invoke  SetFocus, hEditSize     ;“分割大小”編輯框得到焦點
                        .ENDIF
                .ELSEIF eax==IDC_BTN_FILE        ;選擇要分割/合并的文件
                        mov     ofn.lStructSize, sizeof ofn
                        push    hWnd
                        pop     ofn.hwndOwner
                        push    hInstance
                        pop     ofn.hInstance
                        mov     ofn.lpstrFile, offset strPath   ;接收文件名
                        mov     ofn.nMaxFile, MAX_PATH
                        mov     ofn.Flags, OFN_FILEMUSTEXIST or OFN_PATHMUSTEXIST or OFN_HIDEREADONLY or OFN_EXPLORER or OFN_LONGNAMES
                        .IF     bSplitOrMerge    ;分割狀態
                                mov     ofn.lpstrFilter, offset strFilterSplit ;文件過濾器
                                mov     ofn.lpstrTitle, offset strTitleSplit   ;標題文本
                        .ELSE                    ;合并狀態
                                mov     ofn.lpstrFilter, offset strFilterMerge ;文件過濾器
                                mov     ofn.lpstrTitle, offset strTitleMerge   ;標題文本
                        .ENDIF
                        invoke  GetOpenFileName, addr ofn
                        .IF     eax
                                invoke  SetDlgItemText, hWnd, IDC_EDIT_FILE, addr strPath
                                invoke  GetFolder, addr strFolder, addr strPath
                                invoke  SetDlgItemText, hWnd, IDC_EDIT_FOLDER, addr strFolder
                                .IF     bSplitOrMerge
                                        invoke  SetFocus, hEditSize  ;“分割大小”編輯框得到焦點
                                .ELSE
                                        invoke  SetFocus, hBtnStart  ;“分割/合并”按鈕得到焦點
                                .ENDIF
                        .ENDIF
                .ELSEIF eax==IDC_BTN_FOLDER      ;選擇分割/合并后文件的存放目錄
                        invoke  RtlZeroMemory, addr bi, sizeof BROWSEINFO ;內存清零
                        push    hWnd
                        pop     bi.hwndOwner
                        mov     eax, offset strFolder             ;接收目錄字符串
                        mov     bi.pszDisplayName, eax
                        mov     eax, offset strBrowseTitle        ;目錄選擇框上面的文本
                        mov     bi.lpszTitle, eax
                        mov     bi.ulFlags, BIF_RETURNONLYFSDIRS  ;選擇目錄
                        invoke  SHBrowseForFolder, addr bi
                        .IF     eax
                                invoke  SHGetPathFromIDList, eax, addr strFolder ;轉換 PIDL 為目錄名
                                invoke  StrLen, addr strFolder       ;取得字符串長度
                                mov     esi, offset strFolder        ;esi 指向開始的位置
                                add     esi, eax                     ;esi 指向結束的位置
                                cmp     BYTE ptr [esi-1], '\'        ;判斷是不是以'\'結尾
                                je      labelExit
                                        mov     BYTE ptr [esi], '\'  ;如果不是則添加一個'\'
                                        mov     BYTE ptr [esi+1], 0
                                labelExit:
                                invoke  SetDlgItemText, hWnd, IDC_EDIT_FOLDER, addr strFolder
                                invoke  SetForegroundWindow, hWnd    ;激活窗口
                                .IF     bSplitOrMerge
                                        invoke  SetFocus, hEditSize  ;“分割大小”編輯框得到焦點
                                .ELSE
                                        invoke  SetFocus, hBtnStart  ;“分割/合并”按鈕得到焦點
                                .ENDIF
                        .ENDIF
                .ELSEIF eax==IDC_BTN_START
                	invoke  EnableWindow,hBtnStart,FALSE
                        .IF     bSplitOrMerge
                                invoke  GetDlgItemInt, hWnd, IDC_EDIT_SIZE, NULL, FALSE
                                .IF     bKbOrMb
                                        shl     eax, 10
                                .ELSE
                                        shl     eax, 20
                                .ENDIF
                                invoke  Split, addr strPath, addr strFolder, eax
                                invoke  SendMessage, hProgress, PBM_SETPOS, 0, 0
                        .ELSE
                                invoke  Merge, addr strPath, addr strFolder
                                invoke  SendMessage, hProgress, PBM_SETPOS, 0, 0
                        .ENDIF
                	invoke  EnableWindow,hBtnStart,TRUE
                .ELSEIF eax==IDC_BTN_EXIT
                        invoke  SendMessage, hWnd, WM_CLOSE, 0, 0
                .ENDIF
        
        .ELSEIF uMsg==WM_SYSCOMMAND

                mov     eax,wParam
                movzx   eax,ax
                .IF     eax==IDM_SYSMENU
                        invoke  GetMenuState, hSysMenu, IDM_SYSMENU, MF_BYCOMMAND
                        .IF     (eax & MF_CHECKED)   ;判斷菜單是否是選中的
                                invoke  CheckMenuItem, hSysMenu, IDM_SYSMENU, MF_UNCHECKED
                                invoke  SetWindowPos, hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE
                        .ELSE
                                invoke  CheckMenuItem, hSysMenu, IDM_SYSMENU, MF_CHECKED
                                invoke  SetWindowPos, hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE
                        .ENDIF
                .ELSE
                        invoke  DefWindowProc,hWnd,uMsg,wParam,lParam
                .ENDIF

        .ELSEIF uMsg==WM_DROPFILES
                invoke  DragQueryFile, wParam, 0, addr strPath, MAX_PATH  ;得到文件路徑
                invoke  GetFileAttributes, addr strPath      ;取得文件屬性,判斷是否文件夾
                and     eax, FILE_ATTRIBUTE_DIRECTORY
                .IF     eax     ;如果是文件夾
                        invoke  SetDlgItemText, hWnd, IDC_EDIT_FOLDER, addr strPath
                        invoke  SetForegroundWindow, hWnd    ;激活窗口

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产麻豆精品久久一二三| 在线不卡中文字幕播放| 久久av老司机精品网站导航| 欧美肥妇毛茸茸| 亚洲高清免费观看| 欧美挠脚心视频网站| 亚洲免费观看视频| 欧美色图免费看| 亚洲成av人片在线观看无码| 欧美午夜免费电影| 日韩电影网1区2区| 日韩精品综合一本久道在线视频| 免费在线视频一区| 精品国产sm最大网站| 国产成人av资源| 亚洲欧美视频在线观看视频| 91麻豆免费观看| 亚洲成人免费看| 久久久国产午夜精品| 成人性生交大合| 亚洲乱码日产精品bd| 日韩欧美高清dvd碟片| 成人三级在线视频| 午夜精品久久久久久久久久| 日韩一级黄色大片| 91视频一区二区| 久久国产尿小便嘘嘘尿| 中文av一区特黄| 欧美日本在线视频| www.视频一区| 麻豆精品久久精品色综合| 亚洲日本一区二区三区| 日韩一区二区三区电影 | 国产精品久线观看视频| 欧美日本一区二区三区| 成人晚上爱看视频| 日本亚洲视频在线| 亚洲美女免费视频| 国产午夜精品美女毛片视频| 欧美挠脚心视频网站| 99久久99久久久精品齐齐| 国产又黄又大久久| 蜜臀国产一区二区三区在线播放 | 美腿丝袜在线亚洲一区| 一级特黄大欧美久久久| 国产精品国产馆在线真实露脸| 欧美一级片在线看| 欧美日韩免费观看一区三区| 成人激情视频网站| 国产精品456| 国产成人在线网站| 国产精品中文有码| 婷婷久久综合九色国产成人| 日韩中文欧美在线| 视频精品一区二区| 日韩国产精品久久| 国产一区二区网址| 成人午夜免费电影| 91麻豆产精品久久久久久| 在线观看视频91| 91精品视频网| 国产欧美一区二区精品久导航| 国产视频一区不卡| 亚洲精品视频在线观看免费 | 日本不卡视频在线观看| 日本午夜一区二区| 国产激情一区二区三区| 99久久婷婷国产综合精品电影| 欧美日韩国产中文| 中文字幕第一区第二区| 香蕉乱码成人久久天堂爱免费| 久久99热狠狠色一区二区| 97精品国产露脸对白| 欧美大片一区二区三区| 综合在线观看色| 毛片av中文字幕一区二区| 99久久精品国产麻豆演员表| 欧美一级理论片| 中文字幕一区av| 国产曰批免费观看久久久| 91国内精品野花午夜精品| 国产香蕉久久精品综合网| 午夜伦理一区二区| 一本到不卡精品视频在线观看| 日韩亚洲欧美成人一区| 一区二区日韩电影| 色综合中文综合网| 亚洲国产日韩精品| 成人av网站免费观看| 久久综合九色综合欧美就去吻| 国产一区999| 欧美军同video69gay| 一区二区在线看| 欧美体内she精高潮| 日韩福利电影在线观看| 欧美中文字幕一区二区三区亚洲| 亚洲视频资源在线| 91在线观看免费视频| 亚洲女同一区二区| 色综合久久久久综合体| 中文字幕在线观看一区二区| 成人精品一区二区三区四区| 国产欧美日韩综合精品一区二区 | 欧美丰满高潮xxxx喷水动漫| 亚洲大型综合色站| 欧美日本一道本| 国内精品伊人久久久久av一坑| 国产午夜亚洲精品理论片色戒| 国产91精品露脸国语对白| 亚洲人吸女人奶水| 欧美天堂一区二区三区| 日韩国产一二三区| 久久久精品国产99久久精品芒果| 波多野结衣中文一区| 亚洲一区二区欧美激情| 亚洲精品一区二区三区影院| 高清在线观看日韩| 日韩中文字幕麻豆| 国产精品夫妻自拍| 欧美一区二区福利在线| 成人黄动漫网站免费app| 天堂va蜜桃一区二区三区| 久久久久久久久免费| 在线视频国产一区| 国产成人亚洲综合色影视| 亚洲一区成人在线| 国产色91在线| 久久色在线视频| 欧美日韩国产美女| 色哟哟国产精品| 国产宾馆实践打屁股91| 日本三级亚洲精品| 一区二区三区四区亚洲| 欧美激情一区二区三区四区| 91麻豆精品国产| 欧美美女黄视频| 日本道在线观看一区二区| 国内不卡的二区三区中文字幕 | 91精品国产综合久久久久| 色94色欧美sute亚洲线路一ni | 亚洲欧美综合在线精品| 精品久久久久99| 精品区一区二区| 欧美一区二区在线播放| 91精品国产黑色紧身裤美女| 欧美日韩国产影片| 欧美一区二区私人影院日本| 欧美日韩国产不卡| 欧美一区二区三区免费观看视频| 欧美色倩网站大全免费| 8x8x8国产精品| 欧美哺乳videos| 欧美激情综合在线| 一区二区三区鲁丝不卡| 亚洲一二三四区不卡| 日本亚洲三级在线| 国产精品一区在线| 97精品超碰一区二区三区| 欧美三级资源在线| 日韩美女视频在线| 精品欧美一区二区三区精品久久 | 日韩免费视频线观看| 久久久三级国产网站| 中文字幕中文字幕在线一区| 亚洲综合一区二区三区| 久88久久88久久久| gogo大胆日本视频一区| 欧美一级淫片007| 亚洲日本乱码在线观看| 久久aⅴ国产欧美74aaa| 色悠悠久久综合| 国产亚洲欧洲一区高清在线观看| 一区二区在线电影| 国产剧情一区在线| 欧美日韩一区二区在线观看视频| 日韩欧美不卡一区| 一区二区三区日韩精品| 国产aⅴ综合色| 日韩欧美在线观看一区二区三区| 国产精品久久久久久福利一牛影视| 全部av―极品视觉盛宴亚洲| 91色九色蝌蚪| 国产精品第13页| 成人网男人的天堂| 久久久精品国产免费观看同学| 男女男精品网站| 欧美精品123区| 天堂蜜桃91精品| 在线视频中文字幕一区二区| 中文字幕在线观看不卡| 粉嫩在线一区二区三区视频| 久久久久久久久99精品| 国产真实乱对白精彩久久| 7777精品伊人久久久大香线蕉最新版| 日韩一区在线看| 99国产精品久久久久久久久久| 国产精品网站在线观看| 91一区一区三区| 亚洲国产精品自拍| 91精品国产综合久久香蕉麻豆|