2016-12-06 3 views
0

Es folgt mein Code-Bild verwenden,Ein allgemeiner Fehler in GDI + trat bei dem Bild Image.Save mit Speichern (Dateiname, ImageFormat.Jpeg)

HttpPostedFile postedFile = request.Files[file]; 

string directoryPath = @"~\PostImage\"; 

Image image = Image.FromStream(postedFile.InputStream); 

string Filepath = Server.MapPath(directoryPath); 

string Filename = Filepath + "PostImageFile.jpg"; 

result.FieldName = Filename; 

image.Save(Filename, ImageFormat.Jpeg); 

Ich erhalte Fehler bei image.Save(Filename, ImageFormat.Jpeg);

Antwort

0

Schließlich sparen Ich habe Lösung,
Zuerst habe ich Ordner auf meinem lokalen Rechner "PostedImages" im Anwendungsverzeichnis erstellt.
dann in Eigenschaften der Ordner in "Sicherheit" Registerkarte drei neue Benutzer
1) IIS_USRS
2) IUSR-
3) NETWORK SERVICE
Für alle diese Benutzer Fullcontrol gegeben Zugriffsrechte jeder Benutzer.
Dann wurde dieser Ordner in der Anwendung hinzugefügt und in Azure veröffentlicht.
Jetzt funktioniert alles gut.
-Code geändert wie:

string Filepath = Server.MapPath(@"~\PostedImages\"); 
string FilenameServer = Filepath + "PostedImage.jpg"; 
Image img = Image.FromStream(postedFile.InputStream); 
Bitmap bmp = img as Bitmap; 
Graphics g = Graphics.FromImage(bmp); 
Bitmap bmpNew = new Bitmap(bmp); 
g.DrawImage(bmpNew, new System.Drawing.Point(0,0)); 
g.Dispose(); 
bmp.Dispose(); 
img.Dispose(); 
bmpNew.Save(FilenameServer, ImageFormat.Jpeg); 

ich von http://www.aspforums.net/Threads/159114/Error-when-hosted-in-IIS-Server-SystemRuntimeInteropServicesExternalException-0x80004005-A-generic-error-occurred-in-GDI/

Lösung bekam
Verwandte Themen