vboussema
Messages postés138Date d'inscriptionmercredi 1 février 2006StatutMembreDernière intervention 1 septembre 2009
-
16 févr. 2008 à 12:04
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014
-
17 févr. 2008 à 10:30
salut
j'ai une application qui se connecte a sql server dans le but d'afficher des images et d'enregistrer dans une table.
mon problème c'est avec les grandes images
quand je charge une image depuis la base je l'enregistre sur le disque puis je l'affiche
le problème c'est après accumulation d'images sql server augmente toujours sa consommation en ram malgrès que je ferme a chaque foi la connection et je fait dispose des objets utilisés
:(
voici mon code de la forme:
private void button1_Click(object sender, EventArgs e)
{
if (d.Read())
ms = new MemoryStream((Byte[])d[0]);
d.Close();
}
catch (Exception r)
{
MessageBox.Show(r.Message);
}
finally
{
d.Dispose();
d = null;
con.Close();
cmds.Dispose();
cmds = null;
}
try
{
Image im = Bitmap.FromStream(ms);
if (File.Exists(Application.StartupPath + "\\nom.jpg"))
File.Delete(Application.StartupPath + "\\nom.jpg");
im.Save(Application.StartupPath + "\\nom.jpg", ImageFormat.Jpeg);
ms.Close();
ms.Dispose();
ms = null;
}
catch (Exception m)
{
MessageBox.Show(m.Message);
}
}
ceci pour charger une image de la base
je recupère deux images une grande et sa miniature qui est très petite mais le traitement c'est sur la grade
et ce code :
if (pictureBox1.Image != null)
pictureBox1.Image.Dispose();
pictureBox1.Image = Image.FromFile(Application.StartupPath + "\\nom.jpg");
pour charger l'image au picturebox
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 17 févr. 2008 à 00:16
Salut,
Pour les manipulations de chemins, voir méthode Path.Combine au lieu de faire de la concaténation.
Concernant SQL Server, il gère entre autres un cache, donc sa consommation mémoire n'est pas forcément un problème.
vboussema
Messages postés138Date d'inscriptionmercredi 1 février 2006StatutMembreDernière intervention 1 septembre 2009 17 févr. 2008 à 07:05
donc c'est pas grave d'avoir sql server consomme une mémoire très grande???
ok j'ai oublié que j'ai augmenter la base temp pour permettre un espace temp plus grand (la nouvelle valeur est 1GO) :)
merci donc coq
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 17 févr. 2008 à 10:30
Je n'ai pas dit que ce n'était jamais grave, mais que ça ne l'était pas forcément hein, il se peut qu'un jour tu aie un problème dans du code TSQL mais vu ta description de la chose ça m'étonnerais que ça soit le cas sur ce batch là.