Refus effacement image

Résolu/Fermé
JSB-24270 Messages postés 24 Date d'inscription jeudi 26 mars 2020 Statut Membre Dernière intervention 9 mai 2020 - 28 avril 2020 à 13:12
 Utilisateur anonyme - 28 avril 2020 à 15:19
Bonjour.
Je suis sous visual basic 2015 en vb
J'ai créé un from (produit) dans lequel il y a des textbox et une image du produit.
J'enregistre le tout dans une bd access et tout va très bien mais...
lorsque je veux effacer une fiche, l'image du produit concerné reste dans son dossier et j'ai un message d'erreur:

Informations supplémentaires : Le processus ne peut pas accéder au fichier 'C:\Program Files\PROJET-VBNET\GESTION_PRODUITS\bin\Debug\photos\2downarrow.png', car il est en cours d'utilisation par un autre processus.

voici le code en question.

Private Sub EffacerUneFicheToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles EffacerUneFicheToolStripMenuItem.Click

        ' SELECTION DU PRODUIT A EFFACER
        Dim sel As String
        sel = Recherche.Text ' COMBOBOX
        Dim ca As String
        ca = Split(sel, " ")(1)
        Mycommand.CommandText = "Select * FROM produit WHERE reference='" & ca & "'    "
        MyConnexion.Open()
        Dim myReader1 As OleDbDataReader = Mycommand.ExecuteReader()
        If myReader1.Read() Then
            TextBox1.Text = myReader1("reference").ToString
        End If

        ' DELETE PRODUIT PAR REFERENCE
        c.ConnectionString = "Provider='" & prov & "';Data Source='" & fp & "' "
        c.Open()
        Dim cmd As New OleDbCommand("delete * from produit where reference='" & TextBox1.Text & "' ", c)

        cmd.ExecuteNonQuery()
        cmd.Connection.Close()

      ' EFFACER LA PHOTO CORRESPONDANT AU PRODUIT SELECTIONNE
        Dim apsta As String = Application.StartupPath
        File.Delete(apsta & Label13.Text)

    End Sub

J'ai essayé plusieurs méthodes y compris placer le code dans un bouton mais rien n'y fait, j'ai toujours le même message.

Auriez vous une idée pour palier ce problème ???
Merci
A voir également:

5 réponses

yg_be Messages postés 23317 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 10 novembre 2024 Ambassadeur 1 552
28 avril 2020 à 13:51
bonjour, as-tu le même problème si l'image n'est pas affichée?
0
Bonjour yg_be
J'avoue que je n'ai pas essayé étant donné que chaque produit a une photo nécessaire pour la personne qui va gérer l'envoi du colis.
Cette photo sert aussi à comparer la référence et le produit afin qu'il n'y ait pas d'erreur.
0
yg_be Messages postés 23317 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 10 novembre 2024 1 552
28 avril 2020 à 14:05
je suggère d'essayer, pour vérifier si ce n'est pas l'affichage qui empêche la suppression.
0
Utilisateur anonyme
28 avril 2020 à 15:14
Bonjour
yg_be a probablement raison, tant que ton logiciel a la main sur l'image, le système ne peut pas la supprimer.

Une fois que tu auras testé sans afficher d'image. Si ça marche, pourras tu poster le code qui affiche l'image.
0
JSB-24270 Messages postés 24 Date d'inscription jeudi 26 mars 2020 Statut Membre Dernière intervention 9 mai 2020 1
28 avril 2020 à 15:17
Bonjour à tous les deux.
J'ai trouvé la réponse d'un internaute qui avait le même problème, je n'y avais pas prété attention car il était pour vs 2005.
J'ai tenté le coup et ça a fonctionné.
Voici le code en question:
        photo.Image.Dispose()
        photo.Image = Nothing
        GC.Collect()
        Dim apsta As String = Application.StartupPath
        Kill(apsta & Label13.Text)

Merci à tous.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
28 avril 2020 à 15:19
Ce qui confirme ce qu'on pensait, tu n'avais pas libérer l'image.

Pense à passer le sujet résolu.
0