ShellExecute, pb avec hwnd

Signaler
Messages postés
5
Date d'inscription
mardi 3 février 2009
Statut
Membre
Dernière intervention
17 février 2009
-
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
-
Salut tout le monde,

j'ai trouvé sur le net une méthode pour ouvrir tout type de fichier depuis mon programme vb:
Le Pb est que je recois une erreur sur "hwnd" ->method or data member not found
S'agit-il d'un problème de bibliothèque?ou autre?
J'ai pu voir que hwnd signifie handle window, mais je ne sais comment le manipuler

'voila la fonction
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
(ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

ShellExecute Me.hwnd, "open", "Archivo", "", App.Path, 1


Merci d'avance pour votre aide

WIndows XP
office 2003 vb6.5

3 réponses

Messages postés
5
Date d'inscription
mardi 3 février 2009
Statut
Membre
Dernière intervention
17 février 2009

Archivo contient le lien,par exemple
Archivo=chemindemonfichier.pdf
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Salut
Oui, et bien tel que tu l'a écrit, 
   "open", "Archivo", 
Archivo est considéré comme une chaine, un texte, le nom du fichier.
Il te suffit de supprimer les "
   "open", Archivo,

Sans l'avoir essayé, il me semble qu'il faut répéter le nom du répertoire dans le nom du fichier, exemple :
   "open", App.Path & "" & Archivo,

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
71
quant aa la question de base, tu n'en a rien a carer du hWnd
mets 0 te casses pas la tête.

c'est bien précisé dans la doc:

http://msdn.microsoft.com/en-us/library/bb762153(VS.85).aspx

This value can be NULL if the operation is not associated with a window.

en gros, c'est juste utile si le process lancé a besoin de jouer avec une fenetre précise de l'application lancante