如何從.NET創(chuàng)建/刪除/讀取/寫入/ NTFS備用數(shù)據(jù)流?如果沒有本機.NET支持,我將使用哪個Win32 API?另外,由于我認為沒有記載,我將如何使用它們?
3 回答

慕標琳琳
TA貢獻1830條經(jīng)驗 獲得超9個贊
沒有對它們的本機.NET支持。您必須使用P / Invoke來調(diào)用本地Win32方法。
要創(chuàng)建它們,請使用路徑調(diào)用CreateFilefilename.txt:streamname。如果您使用返回SafeFileHandle的互操作調(diào)用,則可以使用該互操作構(gòu)造一個FileStream,然后可以對其進行讀寫。
要列出文件上存在的流,請使用FindFirstStreamW和FindNextStreamW(它們僅在Server 2003和更高版本上存在,而在XP上不存在)。
我不相信您可以刪除流,除非復制文件的其余部分并保留其中一個流。將長度設(shè)置為0也許也可以,但是我還沒有嘗試過。
您還可以在目錄上具有備用數(shù)據(jù)流。您訪問它們的方式與使用文件-相同C:\some\directory:streamname。
可以對流設(shè)置壓縮,加密和稀疏性,而與默認流無關(guān)。
- 3 回答
- 0 關(guān)注
- 628 瀏覽
添加回答
舉報
0/150
提交
取消