drag and drop d'un attach Outlook vers mon appli VB

drag and drop d'un attach Outlook vers mon appli VB - VB/VBA/VBS - Programmation

Marsh Posté le 07-08-2003 à 14:38:40    

Salut,
 
le problème est assez simple à expliquer: j'ai envie de prendre un fichier attaché Outlook (genre un fichier XML, ça sera parfait) et de l'amener sur une fenêtre d'une appli VB6.
 
Venant de l'explorateur Windows, pas de problème, tout est géré nativement avec les events de type OLEDrag... de la fenêtre, puis récupérer le ou les noms de fichiers, aucun problème à ce niveau.
 
Mais depuis Outlook, c'est une autre paire de manches: le OLEDragOver et l'OLEDragDrop m'informent bien que j'amène quelque chose sur ma fenêtre, mais je n'arrive pas à interpréter les données. Je me demande donc comment faire, est-ce que je dois appeler une API Win32 que je ne connais pas ou faire autre chose :??:
 
Merci d'avance :jap:


Message édité par drasche le 08-08-2003 à 11:42:44

---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 07-08-2003 à 14:38:40   

Reply

Marsh Posté le 08-08-2003 à 11:41:40    

:bounce:

Reply

Marsh Posté le 09-08-2003 à 15:40:19    

Essaye avec ca :
 

Code :
  1. Private Sub Form_OLEDragDrop(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single)
  2. Dim m_szInputFile as string
  3. Dim v_numFiles As Variant
  4.     For Each v_numFiles In Data.Files
  5.         ' récupere le chemin du fichier en cours
  6.         m_szInputFile = v_numFiles
  7.         Debug.Print m_szInputFile
  8.     Next v_numFiles
  9.    
  10. End Sub
  11. Private Sub Form_OLEDragOver(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single, State As Integer)
  12.     Effect = 1
  13. End Sub


Message édité par karlkox le 09-08-2003 à 15:40:45
Reply

Marsh Posté le 11-08-2003 à 00:01:28    

c'est le premier truc que j'ai essayé [:joce]
 
et ça a donné "Specified format doesn't match format of data".  Forcément vu que c'est pas un fichier que je lui donne mais un attachment :/
 
D'un autre côté, Outlook crée un fichier temporaire quand on regarde un attach, ce serait une piste à explorer :??:

Reply

Marsh Posté le 11-08-2003 à 02:33:37    

Bah moi je n'ai eu aucun pb lors du drag'n drop d'une image, il y a bien un fichier temporaire de créer et c'est ce fichier qui est lu. Donc fodra surement faire des tests sur le type de fichier dropé.

Reply

Marsh Posté le 11-08-2003 à 14:26:53    

[:gratgrat]
 
bon ok vais réessayer ça demain. A tout hasard, quelle version d'Outlook as-tu utilisée?

Reply

Marsh Posté le 11-08-2003 à 16:55:17    

La 6.00.2800.1123

Reply

Marsh Posté le 13-08-2003 à 13:42:55    

bon c'est effectivement pas ça, la fenêtre VB ne reçoit pas une information de type File. D'ailleurs dans l'immediate window, ça se vérifie:

Code :
  1. ? Data.GetFormat(VbCFFiles)
  2. False


 
Il identifie cela comme du texte (vbCFText) :heink:
 
Le pire c'est qu'il me semble avoir déjà essayé et j'avais utilisé je ne sais quelle fonction pour en tirer quelque chose (j'avais obtenu des données binaires incompréhensibles) mais je n'avais pas su aller plus loin :/


Message édité par drasche le 13-08-2003 à 13:43:16
Reply

Marsh Posté le 13-08-2003 à 15:52:02    

Honnettement, je n'ai aucun pb, j'ai essayé différents types de fichiers (son, image, module vb ...), je récupere sans pb le chemin, apres je n'ai plus qu'a l'ouvrir, normalement.

Reply

Marsh Posté le 13-08-2003 à 16:27:01    

Je bosse avec la version 10.xxxx d'Outlook (XP) et je reçois pas de fichier quand je fais le drag'n'drop sur la fenêtre VB :/
 
Et la string reçue contient royalement un espace :cry:


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed