Пример #1
0
        public unsafe static List <char> GetProtectedVolumeList()
        {
            EWF_Volume_Name_Entry *volumeNames      = EwfMgrGetProtectedVolumeList();
            List <char>            protectedVolumes = new List <char>();

            while (!EwfMgrVolumeNameListIsEmpty(volumeNames))
            {
                IntPtr hDevice = EwfMgrOpenProtected(volumeNames->Name.ToString());
                if (hDevice.ToInt32() != -1)
                {
                    protectedVolumes.Add(volumeNames->Name);
                    EwfMgrClose(hDevice);
                }
                hDevice = IntPtr.Zero;
                EwfMgrVolumeNameEntryPop(&volumeNames);
            }
            EwfMgrVolumeNameListDelete(volumeNames);
            return(protectedVolumes);
        }
Пример #2
0
 public static void EwfMgrVolumeNameListDelete(EWF_Volume_Name_Entry *pVolumeNameList);
Пример #3
0
 public static extern bool EwfMgrVolumeNameListIsEmpty(EWF_Volume_Name_Entry *pVolumeNameList);