IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

[VB] Probleme pour recuperer pieces jointes d'outlook


Sujet :

VB 6 et antérieur

  1. #1
    Membre du Club
    Inscrit en
    Avril 2006
    Messages
    68
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 68
    Points : 44
    Points
    44
    Par défaut [VB] Probleme pour recuperer pieces jointes d'outlook
    Bonjour, je souhaite récuperer les pieces jointes de mon outlook, j'ai donc récupérer un code qui marche partiellement.
    En effet les pieces jointes sont bien récupérées mais j'ai un message d'erreur quand visual basic essaie de lire un mail d'une autre semaine.

    (par exemple les messages d'outlook d'il y'a deux semaine sont tous récupérés mais il y'a un probleme pour récupérer ceux d'il y'a une semaine)

    J'ai le message d'erreur suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Une exception de première chance de type 'System.InvalidCastException' s'est produite dans ProjetVisual.exe
    voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
    Public Class Form1
     
        'Création des variables
        Dim objoutlook As Outlook.Application
        Dim olns As Outlook.NameSpace
        Dim mItem As Outlook.MailItem
        Dim att As Outlook.Attachment
        Dim fld As Outlook.MAPIFolder
        Dim cpt As Integer
     
     
     
     
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
     
     
     
     
            On Error GoTo errorhandler
            cpt = 0
            'Création de l'objet Outlook
            objoutlook = CreateObject("Outlook.application")
            'Récupération de l'espace de nom d'outlook
            olns = objoutlook.GetNamespace("MAPI")
            'Récupération du répertoire "boite de réception" par défault
            fld = olns.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox)
     
            'Sauver les pieces jointes des mails se trouvant dans
            'la boîte de réception. Pour adresser un dossier dans la boite
            'de réception on pourrait utiliser :
            'fld.Folders.item("Nom_Du_Dossier").Items
            For Each mItem In fld.Items
                For Each att In mItem.Attachments
                    If att.Type = Outlook.OlAttachmentType.olByValue Then
                        att.SaveAsFile("C:\Documents and Settings\stage\Mes documents\test\" & cpt)
                        Debug.Print("le fichier " & att.FileName & " a ete")
                        cpt = cpt + 1
                    End If
                Next
            Next
            Exit Sub
    errorhandler:
            MsgBox(att.FileName)
     
        End Sub
     
        Private Sub Form_Unload(ByVal Cancel As Integer)
     
            olns = Nothing
            objoutlook = Nothing
        End Sub
     
     
     
     
    End Class

    merci de votre aide

  2. #2
    Membre expérimenté Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Points : 1 405
    Points
    1 405
    Par défaut
    Je trouve bizarre cette histoire de "il y a une semaine"...
    Ce ne serait pas plutôt un mail, qui se trouve par hasard classé dans les "il-y-a une semaine", qui poserait un problème?

  3. #3
    Membre du Club
    Inscrit en
    Avril 2006
    Messages
    68
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 68
    Points : 44
    Points
    44
    Par défaut
    oui voila c'est ca je me suis mal exprimé, c'est au moment de changer de classement qu'il y' a une erreur. Ca pose probleme également pour passer des message classés ds les 1 semaine au message classé dans hier...

  4. #4
    Membre du Club
    Inscrit en
    Avril 2006
    Messages
    68
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 68
    Points : 44
    Points
    44
    Par défaut
    J'ai revérifié, et c'est bien ca le probleme, dans mes dossiers recu dans outlook les mails se classent automatiquement dans des rubriques il y'a deux semaines , une semaine ,hier, aujourd'hui etc.

    Quand mon programme recupere les mails ils commence par recuperer le plus ancien et remonte vers le plus recent, et c'est lorsqu'il change de categorie qu'il y' a un probleme... voila c'est peut etre un peu plus précis, si quelqu'un connais le probleme... merci

Discussions similaires

  1. probleme pour recuperer le chemin du dossier courant
    Par HoB dans le forum API standards et tierces
    Réponses: 8
    Dernier message: 11/08/2007, 11h22
  2. envoyer un formulaire en piece jointe dans outlook
    Par gadjou dans le forum Access
    Réponses: 12
    Dernier message: 01/08/2006, 17h36
  3. Réponses: 1
    Dernier message: 22/05/2006, 14h44
  4. probleme pour recuperer une valeur
    Par kespy13 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 15/04/2006, 10h18
  5. [Mail] piece jointe et Outlook
    Par maxonman dans le forum Langage
    Réponses: 2
    Dernier message: 18/09/2005, 23h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo