2014-02-21 65 views
3

我想從vhdx文件中提取文件。有一種方法可以做到這一點。 - 安裝磁盤並從安裝位置讀取文件。但是我想爲此編寫一個CPP/C#代碼。我可以通過MS提供的API(visrtdisk.dll)獲得vhdx文件的詳細信息,其中包括文件大小,GUID等,但是我沒有得到任何可以從中獲得磁盤結構(MBE/Partitions/FileSystem/etc)的API給定vhdx文件。如何使用CPP/C從VHDX文件獲取文件(或文件系統)#

+0

它運行特定投票決定關閉作爲詢問圖書館推薦系統 –

+0

。 –

回答

0

請參閱本C#庫http://discutils.codeplex.com/,這是非常全面的庫,並支持大量的文件系統(包括VHD,VHDx,ISO,EXT,HFS,HFSPlus等)

[樣品從主頁採取和修改它爲vhdx而不是vhd]。

long diskSize = 30 * 1024 * 1024; //30MB 
using (Stream vhdStream = File.Create(@"C:\TEMP\mydisk.vhdx")) 
{ 
    Disk disk = Disk.InitializeDynamic(vhdStream, diskSize); 
    BiosPartitionTable.Initialize(disk, WellKnownPartitionType.WindowsFat); 
    using (FatFileSystem fs = FatFileSystem.FormatPartition(disk, 0, null)) 
    { 
     fs.CreateDirectory(@"TestDir\CHILD"); 
     // do other things with the file system... 
    } 
} 
+0

Downvoted作爲關於圖書館推薦的題外話題的答案。 –

相關問題