public static Standard.SafeDC CreateCompatibleDC(Standard.SafeDC hdc) { Standard.SafeDC edc = null; try { IntPtr zero = IntPtr.Zero; if (hdc != null) { zero = hdc.handle; } edc = NativeMethods.CreateCompatibleDC(zero); if (edc == null) { Standard.HRESULT.ThrowLastError(); } } finally { if (edc != null) { edc._created = true; } } if (edc.IsInvalid) { edc.Dispose(); throw new SystemException("Unable to create a device context from the specified device information."); } return(edc); }
public static Standard.SafeDC CreateDC(string deviceName) { Standard.SafeDC edc = null; try { edc = NativeMethods.CreateDC(deviceName, null, IntPtr.Zero, IntPtr.Zero); } finally { if (edc != null) { edc._created = true; } } if (edc.IsInvalid) { edc.Dispose(); throw new SystemException("Unable to create a device context from the specified device information."); } return(edc); }