文件操作功能(FileOperationFunction)

字號(hào):

3CH —?jiǎng)?chuàng)建文件
    3DH —打開文件
    3EH —關(guān)閉文件
    41H —?jiǎng)h除文件
    43H —讀取/設(shè)置文件屬性
    45H —復(fù)制文件句柄
    46H —重定義文件句柄
    4EH —查找到第一個(gè)文件
    4FH —查找下一個(gè)文件
    56H — 文件換名
    57H —讀取/設(shè)置文件的日期和時(shí)間
    5AH —?jiǎng)?chuàng)建臨時(shí)文件
    5BH —?jiǎng)?chuàng)建新文件
    67H —設(shè)置文件句柄數(shù)(最多文件數(shù))
    6CH —擴(kuò)展的打開文件功能(打開、創(chuàng)建或替換文件)
    (1)、功能3CH
    功能描述:用指定的文件名創(chuàng)建一個(gè)新文件。如果指定的文件已存在,則設(shè)置其長(zhǎng)度為0。創(chuàng)建后,該文件是打開的,并返回其句柄
    入口參數(shù):AH=3CH
    DS:DX=指定文件名字符串的地址(以0為字符串的結(jié)束標(biāo)志)
    CX=文件屬性(這些標(biāo)志位可以組合) 位0=1——只讀
    位2=1——系統(tǒng)
    位5=1——?dú)w檔位1=1——隱含
    位3=1——卷標(biāo)號(hào)
    其它位保留不用,并置為0
    出口參數(shù):CF=0——?jiǎng)?chuàng)建成功,AX=文件句柄,否則,AX=錯(cuò)誤號(hào)(03H、04H或05H),其含義見錯(cuò)誤代碼表
    (2)、功能3DH
    功能描述:打開指定的驅(qū)動(dòng)器、路徑和文件名,并返回其文件句柄
    入口參數(shù):AH=3DH
    DS:DX=表明文件的字符串(以0為字符串的結(jié)束標(biāo)志)
    AL為打開方式: 位0~2000—只讀方式  001—寫方式  010—讀/寫方式
    位3保留,其值為0
    位4~6共享模式 000—兼容模式001—不共享010—拒絕寫
    011—拒絕讀100—不拒絕任何操作
    位7繼承標(biāo)志——0/1:子進(jìn)程繼承或不繼承句柄
    出口參數(shù):CF=0——打開成功,AX=文件句柄,否則,AX=錯(cuò)誤號(hào)(02H、03H、04H、05H或0CH),其含義見錯(cuò)誤代碼表
    (3)、功能3EH
    功能描述:關(guān)閉指定句柄的文件
    入口參數(shù):AH=3EH
    BX=文件句柄
    出口參數(shù):CF=0——關(guān)閉成功,否則,AX=錯(cuò)誤號(hào)(06H),其含義見錯(cuò)誤代碼表
    (4)、功能41H
    功能描述:刪除指定的文件
    入口參數(shù):AH=41H
    DS:DX=文件名字符串的地址
    出口參數(shù):CF=0——?jiǎng)h除成功,否則,AX=錯(cuò)誤號(hào)(02H、03H或05H),其含義見錯(cuò)誤代碼表
    (5)、功能43H
    功能描述:讀取或設(shè)置指定文件的屬性
    入口參數(shù):AH=43H
    BX=文件句柄
    DS:DX=文件名字符串的地址
    AL=00H/01H——讀取/設(shè)置文件屬性
    CX=文件屬性: 位0=1——只讀位1=1——隱含
    位2=1——系統(tǒng)位3=1——卷標(biāo)號(hào)
    位5=1——?dú)w檔其它位保留不用,并置為0
    出口參數(shù):CF=0——關(guān)閉成功,CX=文件屬性,否則,AX=錯(cuò)誤號(hào)(01H、02H、03H或05H),其含義見錯(cuò)誤代碼表
    (6)、功能45H
    功能描述:復(fù)制當(dāng)前打開設(shè)備或文件的句柄,該句柄對(duì)應(yīng)同樣設(shè)備或文件的相同位置
    入口參數(shù):AH=45H
    BX=待復(fù)制的文件句柄
    出口參數(shù):CF=0——復(fù)制成功,AX=新句柄,否則,AX=錯(cuò)誤號(hào)(04H或06H),其含義見錯(cuò)誤代碼表
    (7)、功能46H
    功能描述:指定二個(gè)句柄,把第二句柄指向第一個(gè)句柄,即第二個(gè)句柄被重定向
    入口參數(shù):AH=46H
    BX=文件或設(shè)備的句柄
    CX=待重定向的文件句柄
    出口參數(shù):CF=0——重定向成功,否則,AX=錯(cuò)誤號(hào)(04H或06H),其含義見錯(cuò)誤代碼表
    (8)、功能4EH
    功能描述:獲取第一個(gè)與給定的文件名相匹配的文件
    入口參數(shù):AH=4EH
    DS:DX=給定文件名的字符串
    CX=搜索時(shí)使用的文件屬性: 位0=1——只讀  位1=1——隱含
    位2=1——系統(tǒng)  位3=1——卷標(biāo)號(hào)
    位4=1——目錄  位5=1——?dú)w檔
    其它位保留不用,并置為0
    出口參數(shù):CF=1——操作失敗,AX=錯(cuò)誤號(hào)(02H、03H或12H),其含義見錯(cuò)誤代碼表,否則,操作成功,DTA(Disk Transfer
    Area)按下列方式填入數(shù)據(jù): 字節(jié)00~14H保留
    字節(jié)15H匹配的文件屬性
    字節(jié)16~17H壓縮的文件名
    字節(jié)18~19H壓縮的文件日期
    字節(jié)1A~1DH文件大小
    字節(jié)1E~2AH文件名字符串
    (9)、功能4FH
    功能描述:在中斷21H的功能4EH成功使用之后,再搜索下一個(gè)文件名
    入口參數(shù):AH=4FH
    AL=返回的代碼
    出口參數(shù):CF=1——操作失敗,AX=錯(cuò)誤號(hào)(12H),其含義見錯(cuò)誤代碼表,否則,操作成功,DTA中的數(shù)據(jù)如前面功能4EH所示
    (10)、功能56H
    功能描述:文件換名
    入口參數(shù):AH=56H
    DS:DX=當(dāng)前文件名字符串地址
    ES:DI=新文件名字符串地址
    出口參數(shù):CF=0——操作成功,否則,AX=錯(cuò)誤號(hào)(02H、03H、05H、11H),其含義見錯(cuò)誤代碼表
    (11)、功能57H
    功能描述:讀取/設(shè)置文件的日期和時(shí)間
    入口參數(shù):AH=57H
    BX=文件句柄 讀取日期和時(shí)間AL=00H
    設(shè)置日期和時(shí)間AL=01H
    CX=時(shí)間(0F~0BH:小時(shí),0AH~05H:分鐘,04H~00H:2秒的個(gè)數(shù))
    DX=日期(0F~09H:年(相對(duì)1980年),08H~05H:月,04H~00H:日)
    出口參數(shù):CF=1——操作失敗,AX=錯(cuò)誤號(hào)(01H、06H),其含義見錯(cuò)誤代碼表,否則,若是讀文件信息,則,CX=時(shí)間,DX=日期
    (12)、功能5AH
    功能描述:創(chuàng)建臨時(shí)文件
    入口參數(shù):AH=5AH
    DS:DX=路徑名的地址
    CX=文件屬性(位可組合),其定義如下: 位0=1 只讀位3-4=0  保留
    位1=1 隱含位5=1   歸檔
    位2=1 系統(tǒng)位6-15=0 保留
    出口參數(shù):CF=0——操作成功,AX=文件句柄,DS:DX=完整的路徑文件地址,否則,AX=錯(cuò)誤號(hào)(03H、04H或05H),其含義見錯(cuò)誤代碼表
    (13)、功能5BH
    功能描述:創(chuàng)建新文件
    入口參數(shù):AH=5BH
    DS:DX=路徑名的地址
    CX=文件屬性(位可組合),其定義如下: 位0=1只讀位4=0保留
    位1=1隱含位5=1歸檔
    位2=1系統(tǒng)位6-15=0保留
    位3=1卷標(biāo)號(hào)
    出口參數(shù):CF=0——操作成功,AX=文件句柄,否則,AX=錯(cuò)誤號(hào)(03H、04H、05H或50H),其含義見錯(cuò)誤代碼表
    (14)、功能67H
    功能描述:設(shè)置文件句柄數(shù)(最多文件數(shù))
    入口參數(shù):AH=67H
    BX=句柄的數(shù)量
    出口參數(shù):CF=0——操作成功,否則,AX=錯(cuò)誤號(hào),其含義見錯(cuò)誤代碼表
    (15)、功能6CH
    功能描述:擴(kuò)展的打開文件功能(打開、創(chuàng)建或替換文件)
    入口參數(shù):AH=6CH
    AL=00H
    DS:SI=路徑名的地址
    BX=打開方式 位2~0000—只讀  001—只寫  010—可讀、寫
    位3保留(0)
    位6~4000—兼容   001—拒絕讀寫  010——拒絕寫
    011—拒絕讀  100——不拒絕任何操作
    位70—子進(jìn)程繼承句柄,1—子進(jìn)程不繼承句柄
    位12~8保留(0)
    位13致命錯(cuò)誤處理程序,0—執(zhí)行INT 24H,否則,返回錯(cuò)誤代碼給進(jìn)程
    位14寫入方式:0—寫入緩沖區(qū),1—直接寫入文件
    位15保留(0)
    CX=文件屬性
    位0=1 只讀位4=0   保留
    位1=1 隱含位5=1   歸檔
    位2=1 系統(tǒng)位6-15=0  保留
    位3=1 卷標(biāo)簽
    DX=打開標(biāo)志 位3~0  0—打開失敗,1—打開文件,2—替換文件
    位7~4  0—打開失敗,1—?jiǎng)?chuàng)建文件
    位15~8  0—保留
    出口參數(shù):CF=1——操作失敗,AX=錯(cuò)誤號(hào),其含義見錯(cuò)誤代碼表,否則,
    AX=文件句柄
    CX=1——文件存在,打開之
    =2——文件不存在,創(chuàng)建之