/// <summary> /// The BMP stream is loaded in mbpStream parameter /// </summary> /// <param name="path"></param> /// <param name="bmpStream"></param> /// <returns></returns> public static System.Drawing.Bitmap ImageStream(String path, ref FileMessage fMessage) { Impersonate oImpersonate = new Impersonate(); Boolean wasImpersonated = Impersonate.isImpersonated(); try { if (!wasImpersonated && oImpersonate.ImpersonateValidUser() == FileMessage.ImpersonationFailed) { fMessage = FileMessage.ImpersonationFailed; return(null); } else { FileMessage exists = Exists.File_FM(path); if (exists == FileMessage.FileExist) { System.Drawing.Bitmap bmpStream = null; using (FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read)){ bmpStream = new System.Drawing.Bitmap(System.Drawing.Image.FromStream(fs)); fMessage = FileMessage.Read; fs.Close(); } return(bmpStream); } else { fMessage = exists; return(null); } } } catch { if (!wasImpersonated) { oImpersonate.UndoImpersonation(); } fMessage = FileMessage.Catch; return(null); } finally { if (!wasImpersonated) { oImpersonate.UndoImpersonation(); } } }
public static FileMessage ImageSize(String path, ref Int32 height, ref Int32 width) { Impersonate oImpersonate = new Impersonate(); Boolean wasImpersonated = Impersonate.isImpersonated(); try { if (!wasImpersonated && oImpersonate.ImpersonateValidUser() == FileMessage.ImpersonationFailed) { return(FileMessage.ImpersonationFailed); } else { FileMessage exists = Exists.File_FM(path); if (exists == FileMessage.FileExist) { using (FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read)){ System.Drawing.Image objImage = new System.Drawing.Bitmap(System.Drawing.Image.FromStream(fs)); width = objImage.Width; height = objImage.Height; objImage.Dispose(); fs.Close(); } return(FileMessage.FileExist); } else { return(exists); } } } catch { if (!wasImpersonated) { oImpersonate.UndoImpersonation(); } return(FileMessage.Catch); } finally { if (!wasImpersonated) { oImpersonate.UndoImpersonation(); } } }