FindWindowA Problème de récupération d'handle

serar53 Messages postés 13 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 22 mai 2008 - 22 mai 2008 à 12:04
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 23 mai 2008 à 07:41
Bonjour,


Je ne comprend rien, voici mon code:


Private Sub UserForm_Initialize()
    Dim hSysMenu As Long
    Dim leHwnd As Long
   
  leHwnd = FindWindowA(vbNullString, IHM_APPORT.Caption)
  hSysMenu = GetSystemMenu(leHwnd, False)
  RemoveMenu hSysMenu, &HF010&, &H0&


End Sub




Sur un poste la fonction FindWindowA me renvoi l'handle de la fenetre sur l'autre il me renvoi 0.


Je ne sais pas du tous pourquoi j'ai la meme version entre les 2 postes et les même bibiothèque.


Auriez vous une idées??


D'avance merci

9 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
22 mai 2008 à 12:46
a voir si tu as bien saisi le titre exact
0
Utilisateur anonyme
22 mai 2008 à 12:47
Salut,

Le titre de l'application doit être différent sur tes deux postes.

__________
  Kenji
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
22 mai 2008 à 12:49
salut,

et même si le tittre est différent, qu'est ce que àçça change ?
Vu qu'il récupère le caption directement depuios son objet fenêtre IHM_APPORT
@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
0
serar53 Messages postés 13 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 22 mai 2008
22 mai 2008 à 13:05
Le titre est le même car je fais un copier coller de la même application?

La je ne comprend pas.
0

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

Posez votre question
serar53 Messages postés 13 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 22 mai 2008
22 mai 2008 à 15:07
Bonjour
J'utilise la fonction suivante :


'Déclaration
Private Const SC_CLOSE = &HF060&
Private Const MF_BYCOMMAND = &H0&


Private Declare Function GetSystemMenu Lib "user32" _
        (ByVal hwnd As Long, ByVal bRevert As Long) As Long


Private Declare Function RemoveMenu Lib "user32" _
        (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long


Private Declare Function FindWindowA Lib "user32" _
  (ByVal lpClassName As String, ByVal lpWindowName As String) As Long




' Fonction
Private Sub UserForm_Initialize()
    Dim hSysMenu As Long
    Dim leHwnd As Long
    leHwnd = FindWindowA(vbNullString, IHM_APPORT.Caption)
    hSysMenu = GetSystemMenu(leHwnd, False)
    RemoveMenu hSysMenu, &HF010&, &H0&
End Sub


Je cherche à bloquer l'affichage de ma fenetre au centre de l'écran, sur mon poste cela fonctionne mais pas sur un autre
poste quasiment identique l'UHM ne se bloque pas. Je ne comprend pas d'ou cela peux venir j'ai vérifier les bibiothques mais elle sont identique.


Le problème est que sur l'autre poste la fonction "FindWindowA(vbNullString, IHM_APPORT.Caption)" renvoi zéro, pourquoi ... je sais pas...


La je cale.


Si des personnes peuvent m'aider se serait sympa, je peux vous envoyer le prog si vous souhaitez.


D'avance merci.


Je ne sais pas d'ou cela peux venir avez vous des idées.


Cdlt.
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
22 mai 2008 à 15:17
UserForm Excel => ThunderDFrame
leHwnd = FindWindowA("ThunderDFrame", IHM_APPORT.Caption)

l'evenement Initialize survient peut etre trop tôt (fenetre pas encore crée)

tenter alors avec Form_Activate, par exemple
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
22 mai 2008 à 15:20
ouaip, m^me

"Thunder" & IIf(Application.Version Like "8*", "X", "D") & "Frame"

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
0
serar53 Messages postés 13 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 22 mai 2008
22 mai 2008 à 15:47
Merci, bonne Hypothèse mais cela n'a pas résolu mon problème,

Les utilisateurs ne recupère toujours pas le bon handle.

Je pe vous envoyer l'appli?

Avez vous d'autres hypothèse?
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
23 mai 2008 à 07:41
quel autre evenement as-tu testé ?
0
Rejoignez-nous