AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Bild lesen blockiert Datei?

Ein Thema von Phoenix · begonnen am 30. Mai 2007 · letzter Beitrag vom 30. Mai 2007
 
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Bild lesen blockiert Datei?

  Alt 30. Mai 2007, 09:14
Zitat von Phoenix:
Folgendes Problemchen: Ich habe eine Funktion, die ein Bild lädt:
Enthält mehrere Ecken, an denen man sich stoßen kann...
a) Sie benötigt zuviele lokale Privilegien (mag aber vielleicht nötig sein)
b) Der Konstruktor von SD.Bitmap ist von den Redmondern furchtbar dämlich implementiert worden.
Er öffnet einen Stream, aus dem er das Bild liest, aber gibt diesen nicht sofort wieder frei.
Da sie mal wieder(Wer erinnert sich an den schrecklichen ThreadPool in 1.1? ) irgendeinen Praktikanten rangelassen haben , musst du natürlich selbst ran:
Code:
private void btnLoadImage_Click(object sender, EventArgs e)
{
  String basedir = FW.Instance.SysParams["Stammdaten.Pfade.Bilder"].Value;
  dlgOpenFile.InitialDirectory = basedir;

  if (dlgOpenFile.ShowDialog() == DialogResult.OK)
  {
    if(!Path.GetDirectoryName(dlgOpenFile.FileName) == basedir))
      someErrorProvider.SetError((Control)sender, "WTF willst du in dem Ordner?");

    edFilename.Text = Path.GetFileName(dlgOpenFile.FileName);
 
    using(Stream stream = dlgOpenFile.OpenFile())
      _image = new Bitmap(stream);

    btnPreview.Enabled = true;
  }
}
Aber mal ganz btw: War das jetzt nicht, öhm offensichtlich? Ich meine du hast mehrere Overloads des Konstruktors. Der mit dem Dateinamen ist Schrott, aber der mit dem Stream wäre doch gleich die nächste Adresse gewesen.
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz