diff --git a/.idea/.idea.DiscImageChef/.idea/contentModel.xml b/.idea/.idea.DiscImageChef/.idea/contentModel.xml
index 1b6fbd89f..69ae7570f 100644
--- a/.idea/.idea.DiscImageChef/.idea/contentModel.xml
+++ b/.idea/.idea.DiscImageChef/.idea/contentModel.xml
@@ -52,6 +52,9 @@
+
+
+
diff --git a/DiscImageChef.Devices/Device/Constructor.cs b/DiscImageChef.Devices/Device/Constructor.cs
index 4ce5a1984..2ebf0a4b8 100644
--- a/DiscImageChef.Devices/Device/Constructor.cs
+++ b/DiscImageChef.Devices/Device/Constructor.cs
@@ -37,7 +37,6 @@ using System.Linq;
using System.Runtime.InteropServices;
using DiscImageChef.CommonTypes.Enums;
using DiscImageChef.CommonTypes.Interop;
-using DiscImageChef.Console;
using DiscImageChef.Decoders.ATA;
using DiscImageChef.Decoders.SCSI;
using DiscImageChef.Decoders.SecureDigital;
@@ -245,8 +244,6 @@ namespace DiscImageChef.Devices
}
}
- string ntDevicePath = Windows.Command.GetDevicePath((SafeFileHandle)FileHandle);
- DicConsole.DebugWriteLine("Windows devices", "NT device path: {0}", ntDevicePath);
Marshal.FreeHGlobal(descriptorPtr);
if(Windows.Command.IsSdhci((SafeFileHandle)FileHandle))
diff --git a/DiscImageChef.Devices/Windows/Command.cs b/DiscImageChef.Devices/Windows/Command.cs
index 4eed5ff2b..89c89862b 100644
--- a/DiscImageChef.Devices/Windows/Command.cs
+++ b/DiscImageChef.Devices/Windows/Command.cs
@@ -34,7 +34,6 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.InteropServices;
-using System.Text;
using DiscImageChef.Decoders.ATA;
using Microsoft.Win32.SafeHandles;
@@ -457,84 +456,6 @@ namespace DiscImageChef.Devices.Windows
return (uint)sdn.deviceNumber;
}
- ///
- /// Gets the internal device path for a specified handle
- ///
- /// Device handle
- /// Device path
- internal static string GetDevicePath(SafeFileHandle fd)
- {
- uint devNumber = GetDeviceNumber(fd);
-
- if(devNumber == uint.MaxValue) return null;
-
- SafeFileHandle hDevInfo = Extern.SetupDiGetClassDevs(ref Consts.GuidDevinterfaceDisk, IntPtr.Zero,
- IntPtr.Zero,
- DeviceGetClassFlags.Present |
- DeviceGetClassFlags.DeviceInterface);
-
- if(hDevInfo.IsInvalid) return null;
-
- uint index = 0;
- DeviceInterfaceData spdid = new DeviceInterfaceData();
- spdid.cbSize = Marshal.SizeOf(spdid);
-
- while(true)
- {
- byte[] buffer = new byte[2048];
-
- if(!Extern.SetupDiEnumDeviceInterfaces(hDevInfo, IntPtr.Zero, ref Consts.GuidDevinterfaceDisk, index,
- ref spdid)) break;
-
- uint size = 0;
-
- Extern.SetupDiGetDeviceInterfaceDetail(hDevInfo, ref spdid, IntPtr.Zero, 0, ref size, IntPtr.Zero);
-
- if(size > 0 && size < buffer.Length)
- {
- buffer[0] = (byte)(IntPtr.Size == 8
- ? IntPtr.Size
- : IntPtr.Size + Marshal.SystemDefaultCharSize); // Funny...
-
- IntPtr pspdidd = Marshal.AllocHGlobal(buffer.Length);
- Marshal.Copy(buffer, 0, pspdidd, buffer.Length);
-
- bool result =
- Extern.SetupDiGetDeviceInterfaceDetail(hDevInfo, ref spdid, pspdidd, size, ref size,
- IntPtr.Zero);
-
- buffer = new byte[size];
- Marshal.Copy(pspdidd, buffer, 0, buffer.Length);
- Marshal.FreeHGlobal(pspdidd);
-
- if(result)
- {
- string devicePath = Encoding.Unicode.GetString(buffer, 4, (int)size - 4);
- SafeFileHandle hDrive = Extern.CreateFile(devicePath, 0, FileShare.Read | FileShare.Write,
- IntPtr.Zero, FileMode.OpenExisting, 0, IntPtr.Zero);
-
- if(!hDrive.IsInvalid)
- {
- uint newDeviceNumber = GetDeviceNumber(hDrive);
-
- if(newDeviceNumber == devNumber)
- {
- Extern.CloseHandle(hDrive);
- return devicePath;
- }
- }
-
- Extern.CloseHandle(hDrive);
- }
- }
-
- index++;
- }
-
- Extern.SetupDiDestroyDeviceInfoList(hDevInfo);
- return null;
- }
-
///
/// Returns true if the specified handle is controlled by a SFFDISK (aka SDHCI) driver
///
diff --git a/DiscImageChef.sln b/DiscImageChef.sln
index 2b3f22033..8b4a9b576 100644
--- a/DiscImageChef.sln
+++ b/DiscImageChef.sln
@@ -41,9 +41,12 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DiscImageChef.Database", "D
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DiscImageChef.Gui", "DiscImageChef.Gui\DiscImageChef.Gui.csproj", "{CF61AD81-3F98-4E7B-8F00-9957A6CDE5FA}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DiscImageChef.EntityFramework", "DiscImageChef.EntityFramework\DiscImageChef.EntityFramework.csproj", "{F73EE2BD-6009-4590-9F5A-68198CA5C0DA}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DiscImageChef.EntityFramework", "DiscImageChef.EntityFramework\DiscImageChef.EntityFramework.csproj", "{F73EE2BD-6009-4590-9F5A-68198CA5C0DA}"
EndProject
Global
+ GlobalSection(Performance) = preSolution
+ HasPerformanceSessions = true
+ EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|x86 = Debug|x86
@@ -203,14 +206,6 @@ Global
{CF61AD81-3F98-4E7B-8F00-9957A6CDE5FA}.Release|Any CPU.Build.0 = Release|Any CPU
{CF61AD81-3F98-4E7B-8F00-9957A6CDE5FA}.Release|x86.ActiveCfg = Release|Any CPU
{CF61AD81-3F98-4E7B-8F00-9957A6CDE5FA}.Release|x86.Build.0 = Release|Any CPU
- {9E4ACE1A-BA5A-4901-9DC0-71336EFA40DF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {9E4ACE1A-BA5A-4901-9DC0-71336EFA40DF}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {9E4ACE1A-BA5A-4901-9DC0-71336EFA40DF}.Debug|x86.ActiveCfg = Debug|Any CPU
- {9E4ACE1A-BA5A-4901-9DC0-71336EFA40DF}.Debug|x86.Build.0 = Debug|Any CPU
- {9E4ACE1A-BA5A-4901-9DC0-71336EFA40DF}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {9E4ACE1A-BA5A-4901-9DC0-71336EFA40DF}.Release|Any CPU.Build.0 = Release|Any CPU
- {9E4ACE1A-BA5A-4901-9DC0-71336EFA40DF}.Release|x86.ActiveCfg = Release|Any CPU
- {9E4ACE1A-BA5A-4901-9DC0-71336EFA40DF}.Release|x86.Build.0 = Release|Any CPU
{F73EE2BD-6009-4590-9F5A-68198CA5C0DA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F73EE2BD-6009-4590-9F5A-68198CA5C0DA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F73EE2BD-6009-4590-9F5A-68198CA5C0DA}.Debug|x86.ActiveCfg = Debug|Any CPU