Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Agrandir une fenêtre réduite [ Windows / API ] (bilaloch)

lundi 10 septembre 2007 à 14:45:16 | Agrandir une fenêtre réduite

bilaloch

Bonjour à tous,

Je poste sur le forum à cause d'un petit problème que j'ai. En effet, je ne trouve pas d'APIs ou de fonctions me permettant d'agrandir une fenêtre présente sur la barre des tâches. J'utilise AppActivate mais je ne sais pourquoi, cela ne fonctionne pas pour les applications réduites. J'attends votre aide et vos idées avec impatience.

Merci bien,

BILALoch

lundi 10 septembre 2007 à 15:28:59 | Re : Agrandir une fenêtre réduite

DARKSIDIOUS

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Salut,

Essaye avec ShowWindow (ou un nom dans ce style là), ou sinon avec SetWindowLong
______________________________________
DarK Sidious

lundi 10 septembre 2007 à 15:54:48 | Re : Agrandir une fenêtre réduite

bilaloch

En fait Dark, je n'ai que le PID du programme et non le hWnd de la fenêtre. C'est pourquoi tes deux APIs ne peuvent fonctionner. Cependant, si tu as une idée pour obtenir le hWnd à partir du PID, je suis preneur ^^ . Cela me servirait beaucoup.

BILALoch

lundi 10 septembre 2007 à 16:00:11 | Re : Agrandir une fenêtre réduite

DARKSIDIOUS

Membre Club Administrateur CodeS-SourceS
Salut,

Aucune idée, mais ca doit être possible (de toute façon, avec uniquement le PID, tu peux vraiment pas faire grand chose, donc il doit bien y avoir une API pour énumérer les hwnd reliés à un processus !).
______________________________________
DarK Sidious

lundi 10 septembre 2007 à 16:21:12 | Re : Agrandir une fenêtre réduite

bilaloch

Je vois... Je continue donc mes recherches de ce côté.

BILALoch

lundi 10 septembre 2007 à 16:33:37 | Re : Agrandir une fenêtre réduite

PCPT

Administrateur CodeS-SourceS
Réponse acceptée !
salut,

codyx : PID to HWND

tiens, voici un exemple

' DANS UNE FORM AVEC 3 CommandButton
'
Option Explicit
'
Private Const SW_SHOWMAXIMIZED  As Long = 3
Private Const SW_SHOWNORMAL     As Long = 1
'
Private Declare Function SetForegroundWindow Lib "user32" (ByVal hwnd As LongAs Long
Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As LongByVal nCmdShow As Long) As Long
'
Dim lPID As Long
'
'
Private Sub Command1_Click()
    lPID = Shell("notepad.exe", vbMinimizedFocus)
End Sub

Private Sub Command2_Click()
    If lPID Then Call SetFocusToPID(lPID, SW_SHOWNORMAL)
End Sub
Private Sub Command3_Click()
    If lPID Then Call SetFocusToPID(lPID, SW_SHOWMAXIMIZED)
End Sub
'
Private Function SetFocusToPID(ByVal lPID As Long, lFlag As Long) As Boolean
    Dim lHwnd As Long
    lHwnd = InstanceToWnd(lPID)
    If lHwnd Then
        Call ShowWindow(lHwnd, lFlag)
        Call SetForegroundWindow(lHwnd)
        SetFocusToPID = True
    Else
        SetFocusToPID = False
    End If
End Function

Private Sub Form_Load()
    Command1.Caption = "SHELL"
    Command2.Caption = "NORMAL"
    Command3.Caption = "MAXIMIZED"
End Sub

' DANS UN MODULE
'http://www.codyx.org/snippet_recuperer-hwnd-handle-partir-pid-process-id_451.aspx
'
Option Explicit

Private Const GW_HWNDNEXT As Long 2&
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As LongByVal lpWindowName As Long) As Long
Private Declare Function GetParent Lib "user32" (ByVal hwnd As LongAs Long
Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As LongByVal nCmdShow As Long) As Long
Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, lpdwProcessId As Long) As Long
Private Declare Function GetWindow Lib "user32" (ByVal hwnd As LongByVal wCmd As Long) As Long
'
Public Function InstanceToWnd(ByVal target_pid As Long) As Long 'API-Guid
    Dim test_hwnd As Long, test_pid As Long, test_thread_id As Long
    test_hwnd = FindWindow(ByVal 0&ByVal 0&)
    Do While test_hwnd <> 0&
        If GetParent(test_hwnd) = 0& Then
            test_thread_id = GetWindowThreadProcessId(test_hwnd, test_pid)
            If test_pid = target_pid Then
                InstanceToWnd = test_hwnd
                Exit Do
            End If
        End If
        test_hwnd = GetWindow(test_hwnd, GW_HWNDNEXT)
    Loop
End Function


++
PCPT  [AFCK]

Prenez un instant pour répondre à ce sondage svp

lundi 10 septembre 2007 à 17:17:08 | Re : Agrandir une fenêtre réduite

bilaloch

Re,

Merci pour ton code, PCPT, et pour ton aide, Dark. Ce forum reste toujours aussi excellent :D

BILALoch



Cette discussion est classé dans : fenêtre, agrandir, réduite


Répondre à ce message

Sujets en rapport avec ce message

MDIform, Noresize [ par VicoLaChips2 ] Je voudrais savoir si quelqu'un sait comment griser le carre qui permet d'agrandir la fenêtre(MDI_form) de mon prg!!, de façon à ce qu'on ne puisse pa fenêtre réduite (pas d'acces) dans une commande shell [ par maitrelame ] bonjourquand je fais une commande shell dans un prog, ca ouvre le prog mais je reste sur le mon prog au lieu que la fenêtre apparaisse au premier plan Agrandir une fenêtre avec conditions [ par FBebop ] Bonjour,Voilà j'ai cherché un peu partout mais je n'ai rien trouvé sur ce thème.J'aimerais simplement agrandir ma fenêtre principale, mais que celle-c Problème avec un form [ par Sytchev3 ] Je développe une appli en VB6 et je souhaiterais empêcher l'utilisateur d'agrandir la fenêtre (en plein écran) et de la redimensionner mais il faut qu Restaurer une fenêtre minimiser [ par fdthierry ] Bonjour, J'ai un script qui me fait un Shell.AppActivate("Ma fenêtre") Pas de soucis la dessus, il me mets bien le focus dessus. Mais là ou ça se co Comment activer la fenêtre d'un prog ouverte (réduite ou en arrière plan) [ par et1 ] Bonjour, j'aimerais activer la fenêtre d'un logiciel déjà lancé, lorsque celle-ci est réduite ou en arrière plan... J'ai essayé une api que j'ai trou Comment faire pour agrandir une fenêtre avec son handle ??? [ par bigbang ] re - bijour !!Comment faire pour agrandir une fenêtre avec son handle ???bigbang00@caramail.comvoila !!!merci @+BigBang Comment agrandir une form avec son contenu ? [ par guizmo123 ] Voilà je bloque sur un truc et je ne sais pas qomment résoudre cela.Lorsque je clic sur le petit icone d'une fenêtre en haut à droite, la fenêtre se " Action lorsque la fenêtre est réduite [ par fg85 ] Quelle est la commande en VB.NET (style : Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load) lors désactiver la possibilité d'agrandir et de rétrecir la fenêtre avec la souris [ par slimanov ] rafsalut a tous, voila j'ai enlevé les boutons de réduction, et d'agrendisement du fenétre, mais ya toujours le probléme " on peut agrendir ou rétréss


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,312 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.