Premier plan fenetre DOS Win98

Messages postés
55
Date d'inscription
jeudi 21 avril 2005
Statut
Membre
Dernière intervention
2 juin 2007
- - Dernière réponse : windowsfashion
Messages postés
55
Date d'inscription
jeudi 21 avril 2005
Statut
Membre
Dernière intervention
2 juin 2007
- 2 juin 2007 à 20:36
Bonjour,


Je souhaiterai que mon programme se mette automatiquement en premier
plan, sous windows 98. Mais comme c'est sous win98 j'ai quelques
difficulté à trouver la solution à mon probléme :/


Est ce que vous connaissez une fontion qui peut fonctionner sous win98?


Merci
Afficher la suite 

20/24 réponses

Messages postés
792
Date d'inscription
mardi 8 juillet 2003
Statut
Membre
Dernière intervention
12 juillet 2019
7
0
Merci
As-tu essayé BringWindowtoTop ou SetWindowPos ( cherche dans l'aide pour les paramètres.

louis14
Commenter la réponse de cs_louis14
Messages postés
1243
Date d'inscription
jeudi 31 mars 2005
Statut
Membre
Dernière intervention
3 août 2016
1
0
Merci
Yop,

il y a aussi SetForegroundWindow() mais il te faut le hwnd de ta fenêtre dos. Et comme tu ne la pas il faudra le rechercher avec FindWindow :).

louis14 : SetWindowPos , c'est pas spécialement la meilleur solution, trop de paramètres à entrer pour faire ce qu'il demande :D
++
deck_bsd
___________________________________
[http://deck-bsd.eurower.net]
Commenter la réponse de deck_bsd
Messages postés
3213
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
12
0
Merci
SetForegroundWindow avec GetConsoleWindow fera l'affaire je crois:
SetForegroundWindow(GetConsoleWindow());

C++ (@++)<!--
Commenter la réponse de SAKingdom
Messages postés
1243
Date d'inscription
jeudi 31 mars 2005
Statut
Membre
Dernière intervention
3 août 2016
1
0
Merci
Ha je ne connaissai pas GetConsoleWindow() :D , je mourrai moin bête.

++
deck_bsd
___________________________________
[http://deck-bsd.eurower.net]
Commenter la réponse de deck_bsd
Messages postés
55
Date d'inscription
jeudi 21 avril 2005
Statut
Membre
Dernière intervention
2 juin 2007
0
Merci
merci pour votre réactivité :p

J'ai un autre petit probléme avec GetConsoleWindow():

J'ai bien inclu Windows.h mais il m'affiche "error C2065:
'GetConsoleWindow' : undeclared identifier", certainement  une
mauvaise config de mon compilateur non?


Merci
Commenter la réponse de windowsfashion
Messages postés
3213
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
12
0
Merci
Arffff non c'est normale. J'avais pas vue que tu travaillais sous win98. Cette fonction n'est disponible qu'à partir de win2000. Désolé mais là je ne peux plus t'aider.

C++ (@++)<!--
Commenter la réponse de SAKingdom
Messages postés
55
Date d'inscription
jeudi 21 avril 2005
Statut
Membre
Dernière intervention
2 juin 2007
0
Merci
np merci quand meme :)

Comment recuperer le handle d'une fenetre DOS sous windows98?

Merci
Commenter la réponse de windowsfashion
Messages postés
244
Date d'inscription
vendredi 6 mai 2005
Statut
Membre
Dernière intervention
6 avril 2008
1
0
Merci
HWND hwnd = FindWindow( NULL, argv[0]);

A+
Bonne programmation
<hr size="2" width="100%" />                                         Site
Commenter la réponse de ncoder
Messages postés
55
Date d'inscription
jeudi 21 avril 2005
Statut
Membre
Dernière intervention
2 juin 2007
0
Merci
Merci, je comprend pas je comile sous Xp, j'ai inclus tous les bon header mais sa me donne toujours:

'BringWindowtoTop' : undeclared identifier

Une idée?
Commenter la réponse de windowsfashion
Messages postés
244
Date d'inscription
vendredi 6 mai 2005
Statut
Membre
Dernière intervention
6 avril 2008
1
0
Merci
SetForegroundWindow( FindWindow( NULL, argv[0]) );

A+
Bonne programmation
<hr size="2" width="100%" />                                         Site
Commenter la réponse de ncoder
Messages postés
55
Date d'inscription
jeudi 21 avril 2005
Statut
Membre
Dernière intervention
2 juin 2007
0
Merci
merci mais ^^:

error C2065: 'argv' : undeclared identifier

error C2109: subscript requires array or pointer type

error C2664: 'FindWindowA' : cannot convert parameter 2 from 'int' to 'const char *'
Commenter la réponse de windowsfashion
Messages postés
3213
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
12
0
Merci
Ta fonction main est bien définie comme suit ?

int main (int argc, char *argv[])

C++ (@++)<!--
Commenter la réponse de SAKingdom
Messages postés
55
Date d'inscription
jeudi 21 avril 2005
Statut
Membre
Dernière intervention
2 juin 2007
0
Merci
oui
Commenter la réponse de windowsfashion
Messages postés
3213
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
12
0
Merci
Tu utilise bien FindWindow dans la fonction main ? Dans le cas contraire, faut pas se demander pourquoi ça ne fonctionne pas. Si tu utilises FindWindow dans une autre fonction, il faut soit passer argv[0] en paramètre de cette fonction et utiliser ce paramètre dans FindWindow, soit déclarer un pointeur globale qui pointera sur argv[0] et l'utiliser pour FindWindow.

C++ (@++)<!--
Commenter la réponse de SAKingdom
Messages postés
115
Date d'inscription
samedi 29 mars 2003
Statut
Membre
Dernière intervention
19 décembre 2008
1
0
Merci
Salut,
heu par hasard tu te serais pas planté sur l'orthographe..c'est BringWindowToTop et pas BringWindowtoTop

(C'est con mais on sait jamais, ca peut arriver..)

-{ Saifer }-
Commenter la réponse de cs_saifer
Messages postés
55
Date d'inscription
jeudi 21 avril 2005
Statut
Membre
Dernière intervention
2 juin 2007
0
Merci
exact sa marche avec BringWindowToTop + dans la fonction main :D

Sa fonctionne parfaitement sur windows xp mais je n'arrive pas a l'utiliser sous win98.

Je crois que la fonction FindWindow y est pour quelque chose :/


Encore désolé mais avez vous une idée?
Commenter la réponse de windowsfashion
Messages postés
3213
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
12
0
Merci
BringWindowToTop, SetForegroundWindow et FindWindow sont toutes disponibles depuis win95 alors ça peut pas être ça.
Tu compiles bien ton code en ascii et non pas en unicode ?

C++ (@++)<!--
Commenter la réponse de SAKingdom
Messages postés
55
Date d'inscription
jeudi 21 avril 2005
Statut
Membre
Dernière intervention
2 juin 2007
0
Merci
Excuse moi mais je ne trouve pas où est l'option pour compiler en unicode ou ascii dans visual c++ :/

Je vais me defenestrer si sa continue lol

Merci pour ton aide SAKingdom
Commenter la réponse de windowsfashion
Messages postés
3213
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
12
0
Merci
Non c'est bon. Tu compiles bien en ascii.
J'ignore ce qui cause problème. Désolé.

C++ (@++)<!--
Commenter la réponse de SAKingdom
Messages postés
55
Date d'inscription
jeudi 21 avril 2005
Statut
Membre
Dernière intervention
2 juin 2007
0
Merci
Ok np

Sa avance:


SetConsoleTitle("CONSOLE");

HWND cons = FindWindow(NULL,"CONSOLE");

SetForegroundWindow(cons);  


=> fonctionne sous windows xp

=> fonctionne presque sous win98: la fenetre dos clignote en bleu
dans la barre de tache mais elle ne se met pas automatiquement en
premier plan
Commenter la réponse de windowsfashion