在過去的幾天里,我一直在努力理解一段代碼片段。你可以在這里找到要點(diǎn)概述代碼讀取 Windows 驅(qū)動(dòng)器的 MFT,在 MFT 中創(chuàng)建文件映射結(jié)構(gòu)。然后它繼續(xù)讀取 USN 日志以檢測(cè)這些文件發(fā)生了什么變化。問題腳本中發(fā)生了一些邏輯操作。我可以理解代碼部分在做什么,但為什么這樣做是過去幾天一直困擾我的問題。我偶然發(fā)現(xiàn)了各種類似這樣的Windows 文檔,但即便如此,它對(duì)我來說也沒有多大意義。例如 -switch mode & (O_RDONLY | O_WRONLY | O_RDWR) {case O_RDONLY: access = GENERIC_READcase O_WRONLY: access = GENERIC_WRITEcase O_RDWR: access = GENERIC_READ | GENERIC_WRITE}if mode&O_CREAT != 0 { access |= GENERIC_WRITE}if mode&O_APPEND != 0 { access &^= GENERIC_WRITE access |= FILE_APPEND_DATA}我們?yōu)槭裁匆鲞@些邏輯操作?代碼中還有此類部分的其他實(shí)例。如果有人能指出方向或幫助我完成這些操作,那將非常有幫助。謝謝
了解文件訪問代碼片段的“原因”
函數(shù)式編程
2023-05-15 10:11:31