Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
5048 connectés 

 


Dernière réponse
Sujet : Lancer une application avec paramètres
Titalium HelloWorld -> Tu as une URL avec les explications pour pouvoir récupérer le Handle d'un fenêtre en particulier ?

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
Titalium HelloWorld -> Tu as une URL avec les explications pour pouvoir récupérer le Handle d'un fenêtre en particulier ?
Titalium Put1 !!! J'y arrive ça me gonfle !! J'arrive à faire tourner des procedures avec EnumWindows, mais ça redimensionne pas ce que je veux !!!!!
antp regarde du côté de EnumWindows (si je me souviens bien)
Titalium OK... Mais j'arrive pas à trouver sur le net ce qu'il faut pour récupérer le handle voulu comme me le disais HelloWorld. J'ai regardé chez DelphiFR.com et chez Michel, il y a pas (a priori), et chez torry c'est un peu le bordel si on est pas bilingue...
antp

Citation :

If the function succeeds, the return value is the instance handle of the application that was run, or the handle of a dynamic data exchange (DDE) server application.


 
Il te retourne le handle de l'application, pas le handle de la fenêtre principale de l'application

Titalium J'ai essayé ça :
 
procedure TForm1.Button1Click(Sender: TObject);
var
        Test : Hwnd;
begin
        Test := ShellExecute(GetDesktopWindow, 'open', PChar('explorer.exe'), nil, nil, SW_SHOWNORMAL);
        SetWindowPos(Test, 0, 0, 0, 150, 150, SWP_NOZORDER);
end;
 
Ca marche pas. Il m'ouvre bien explorer, mais il applique pas les redimensionnement. Quelqu'un sait pourquoi ?
Titalium OK, merci, c'est déjà un peu plus clair..
 
Tu as pas une URL ou un bout de code pour récupérer le handle de la fenêtre ?
HelloWorld

Citation :

HelloWorld -> tu te sers de quels messages pour faire ça ? Et pour controler l'appli, tu utilise un PID ?


 
Il faut distinguer un process (PID) d'une fenêtre qu'il créé. C'est pas pareil.
Faut choper un handle sur la fenêtre en question (y'a du code d'exemple sur plein de sites) et lui envoyer les messages ad'hoc.
SetWindowPos peut tout te faire d'un coup, et même plus.
SetWindowPos(Handle_de_ta_fenetre, 0, X, Y, W, H, SWP_NOZORDER);

Titalium HelloWorld -> tu te sers de quels messages pour faire ça ? Et pour controler l'appli, tu utilise un PID ?
goueg sinon avec xp (et 2000?) on peut decider de lancer une app en maximisé ou minimisé dans ses propriétés.
m'enfin ca laisse pas bcp de choix.
HelloWorld Si l'application est bien ficelée, tu peux juste la maximiser via Shellexecute (SW_SHOWMAXIMIZED).
Sinon comme dit antp faut envoyer des messages.
Mais c'est pas la mort à faire ...
antp peut-être en lui envoyant des messages Windows, faut voir du côté de wm_size et autres, mais je suis pas sûr que ce soit faisable...
Titalium Et on peut pas redimensionner l'application après quelle soit lancé autrement ?
antp à priori on peut pas... sauf si le soft est prévu pour recevoir ce genre de paramètres
Titalium Je voudrais pouvoir lancer depuis un soft Delphi une application en décidant de sa taille et de saposition sur l'écran. Comment faire ?
 
Merci d'avance...

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)