德爾福有沒有方法檢查文件是否有任何備用數據流?如何檢查文件是否具有備用數據流?
回答
看一看在Win32 API FindFirstStreamW()
和FindNextStreamW()
功能:
枚舉與指定的文件或目錄在
::$DATA
流類型第一流的。
繼續由先前調用
FindFirstStreamW
功能開始流搜索。
然而,一個文件或目錄可能有除了::$DATA
其他流類型,這是不是在Win32 API中枚舉的,他們是內部的NTFS本身。
有關更多詳細信息,請參閱MSDN。
要列舉非$DATA
流,你就必須直接讀取文件系統,如用BackupRead()
和BackupSeek()
。有關詳細信息,請參閱CodeProject上的Enumerating Alternate Data Streams。
謝謝。但是,你知道'CopyFileEx'是否會複製除$ DATA之外的其他流嗎?我想要的是獲取'CopyFileEx'將傳輸的所有數據的大小,但在調用函數之前。 –
@MarusNebunu是的,'CopyFileEx'複製ADS流,如文檔中所述:「*此功能保留擴展屬性,OLE結構化存儲,** NTFS文件系統備用數據流**,安全資源屬性和文件屬性。 「嘗試使用FindFirstFile()或GetFileAttributesEx()來查看它是否報告包括流在內的完整文件大小。或者,只是忘了事先檢索大小,並讓CopyFileEx'回調在複製時告訴你。 –
- 1. 檢查文件是否有視頻流
- 2. 如何檢查流是否有任何數據?
- 3. 如何檢查DataReader是否有數據?
- 4. 如何檢查設備是否具有給定的功能?
- 5. 如何檢查Android設備是否具有語音功能
- 6. iOS 11 CoreNFC如何檢查設備是否具有NFC功能?
- 7. 如何檢查設備是否具有GSM或GPS功能?
- 8. 如何檢查設備是否具有WiFi Direct功能
- 9. 如何檢查覈心數據是否已具有值?
- 10. 檢查數據流是否爲zip文件
- 11. FileStream:如何檢查文件是否準備好,未使用?
- 12. 如何檢查文件是否使用java打開流
- 13. 檢查用戶是否具有查看文件夾權限
- 14. 如何檢查用戶是否具有數據庫查詢權限?
- 15. 如何檢查文件是否是C#中的SQLite數據庫?
- 16. 如何備份文件流數據庫?
- 17. 檢查是否與具有
- 18. 檢查文件是否有任何數據損壞
- 19. 如何檢查Android設備是否具有硬件加速功能?
- 20. Android - 檢查設備是否具有原生Facebook應用程序
- 21. 如何檢查文件是否是.exe
- 22. 如何檢查SmbFile流是否準備好被讀取?
- 23. 如何檢查文件描述符是否有可用的數據?
- 24. 如何檢查文件是否在Android設備
- 25. .NET FtpWebRequest:如何檢查文件是否準備好下載
- 26. 如何檢查我的數組是否具有偶數排列?
- 27. 是否可以檢查csv文件是否有來自VBA的任何數據?
- 28. 檢測數據幀是否具有MultiIndex
- 29. 如何檢查數據庫中是否存在文件?
- 30. 如何檢查HDFS文件是否包含二進制數據?
我不明白。 「其他數據流」是什麼意思?單個文件成爲單個流。我從來沒有聽說過一個文件通過多個流訪問。 –
@JerryDodge:我沒有密切關注他們的歷史,但我認爲輔助/備用數據流的存在時間與NTFS一樣長 - 請參閱https://blogs.technet.microsoft.com/askcore/2013/03/ 24/alternate-data-streams-in-ntfs /# – MartynA
幾乎每個文件都有多個數據流:http://www.ntfs.com/ntfs-permissions-security-descriptor.htm –