IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Delphi Discussion :

programme toujours au premier plan et background grisé


Sujet :

Langage Delphi

  1. #1
    Membre habitué Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Points : 188
    Points
    188
    Par défaut programme toujours au premier plan et background grisé
    Bonjour,

    je cherche une façon de mettre une fenetre au premier plan qui demande un mot de passe, la fonction en elle même est facile, mais j'aimerais que tout le reste de l'écran soit grisé et que le ctrl alt supr, win d, le ctrl tab et toute les autre commande qui pourrait faire quitter le programme soit unitilisable...

    auriez vous une idée?? merci
    =-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=
    (\_/)
    (O.o)
    (> <)
    This is Bunny. Copy Bunny into your signature to help him on his way to world domination!!
    =-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=

  2. #2
    Membre habitué Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Points : 188
    Points
    188
    Par défaut
    bon, j'ai un peu gruger lol, j'ai mis un alphablending sur une forme que je fais charger avant de changer la principale.... mais comment charger les principale lol :s :s
    =-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=
    (\_/)
    (O.o)
    (> <)
    This is Bunny. Copy Bunny into your signature to help him on his way to world domination!!
    =-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=

  3. #3
    Membre habitué Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Points : 188
    Points
    188
    Par défaut
    je rééplique le problème :

    jai une form1
    jai une form2 fullscreen transparente
    la form2 doit se charger en premier
    et la form1 doit etre toujour au premier plan
    les deux form étant toujours affichées
    =-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=
    (\_/)
    (O.o)
    (> <)
    This is Bunny. Copy Bunny into your signature to help him on his way to world domination!!
    =-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=

  4. #4
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Salut!

    • Pour bloquer le clavier, il faut utiliser un hook :
    http://www.developpez.net/forums/viewtopic.php?t=409826

    • Pour griser le bureau, je pense que je le capturerais avec CreateDC et GetPixel. Je modifierais la couleur de chaque pixel avant de redéssiner le bureau ainsi grisé... Si tu as besoin, demande-moi le code pour modifier la couleur d'un pixel selon ce que tu veux obtenir.

    • Pour éviter les problèmes avec les clics de souris, j'utiliserais les fonctions GetClipCursor et ClipCursor afin de limiter le déplacement à l'intérieure de la fenêtre active. Il est même ppossible de cacher la souris avec la fonction ShowCursor(False);


    Cela dit, peut-être bien qu'il existe une solution plus simple, je pense en particulier à une commande avec ShellExecute qui permet d'afficher la fenêtre standart de reconnexion d'utilisateur, la même qui s'affiche après l'économiseur d'écran lorsque celui-ci est protégé... (je n'ai pas réussi à retrouver cette commande). A noter que ça ne fonctionne qu'avec windows.

    à+
    De retour parmis vous après 10 ans!!

  5. #5
    Membre émérite Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    Décembre 2003
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Delphi/c++/Omnis
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 894
    Points : 2 770
    Points
    2 770
    Par défaut
    Citation Envoyé par Sub0
    • Pour bloquer le clavier, il faut utiliser un hook :
    http://www.developpez.net/forums/viewtopic.php?t=409826
    c'est vrait, Attention, certains aintivirus sont allergiques aux hooks, alors...
    peut etre avec un timer et (GetAsyncKeyState,GetAsyncKeyState) pour le clavier et et bouton de la sourie et (GetCursorPos) pour le curseur
    PAS DE DESTIN, C'EST CE QUE NOUS FAISONS

  6. #6
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Salut!
    Citation Envoyé par edam
    c'est vrait, Attention, certains aintivirus sont allergiques aux hooks, alors...
    peut etre avec un timer et (GetAsyncKeyState,GetAsyncKeyState) pour le clavier et et bouton de la sourie et (GetCursorPos) pour le curseur
    J'ai déjà essayé de bloquer (au moins d'intercepter) le Ctrl Alt Sup avec cette méthode... Mais ça ne fonctionne pas. En effet, le gestionnaire des tâches est prioritaire dans ce cas et se déclenche avant que le programme Delphi détecte la combinaison de touches avec le timer (idem avec l'évènement OnMessage). Bref, la seule solution est l'utilisation d'un hook selon moi. Maintenant, si certains antivirus bloquent cette fonctionalité, c'est qu'ils ont de bonnes raisons (ça semble d'ailleurs logique à bien y réfléchir).

    C'est pour cela que je préconise l'utilisation de la fonction Windows pour activer la fenêtre d'identification; C'est tout à fait adapté à ce genre de situation. A moins que le login et le mot de passe soient différents de ceux utilisés pour ouvrir la session Windows, car dans ce cas, il ne reste plus que l'utilisation d'un hook clavier.

    à+
    De retour parmis vous après 10 ans!!

Discussions similaires

  1. Réponses: 11
    Dernier message: 05/06/2007, 20h56
  2. [MDI] fenêtre fille toujours au premier plan
    Par JuTs dans le forum Windows Forms
    Réponses: 5
    Dernier message: 01/04/2007, 10h14
  3. [JFrame] Affichage d'une application toujours au premier plan
    Par michaeljeru dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 06/12/2006, 22h49
  4. [VBA-E]fenetre pop-up à minuterie et toujours au premier plan
    Par Ania dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 16/10/2006, 14h49
  5. [C#][.Net] Affichage d'une appli toujours au premier plan
    Par alncool dans le forum Windows Forms
    Réponses: 9
    Dernier message: 13/07/2005, 12h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo