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

C# Discussion :

Verifier si un programme s'execute en C#


Sujet :

C#

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 19
    Points : 12
    Points
    12
    Par défaut Verifier si un programme s'execute en C#
    Bonjour,
    en faite j'aimerai creer une application qui permet de verifier si une application par l'utilisateur, si oui alors un mot de passe est demandé.
    Exemple:
    Le programme verifie par exemple si visio2003 est lancé, si la durée de validité à expiré alors un mot de passe est demander juste au moment ou visio2003 se lance..
    Je ne sais pas si j'ai été assez clair,
    cordialement,
    Fas3r

  2. #2
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mai 2003
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Suisse

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2003
    Messages : 299
    Points : 884
    Points
    884
    Par défaut
    tu peux jouer avec la classe Process

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Process[] processList = Process.GetProcessesByName("Visio");
    il existe peut etre des solutions + élégantes (parce que ca, c est plutot moyen...)

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mai 2006
    Messages
    27
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2006
    Messages : 27
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par fas3r
    Je ne sais pas si j'ai été assez clair,
    Moi je sais... non.

    Tu peux te relire s'il te plait ? Il y a des phrases où il doit manquer des mots.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 19
    Points : 12
    Points
    12
    Par défaut
    En faite si tu préfères, il arrive que des employés installent visio2003 ( on va garder cette exemple la), mais c'est un sorte de près ils l'installent et sont censé le désinstaller à la date X ( par exemple 2 mois apres) .... et en faite j'aimerai créer un petit programme qui permettent de controler l'execution de ces programmes en questions ( un agent )
    Par exemple si l'empoyé X peut utiliser visio pendant 2 mois .. ba 2 mois et 1 jours apres y a une texte box qui se lance et qui lui indique qu'il doit le désinstaller par exemple.
    Enfin je pense qu'il faut aussi que le programme en question ne puisse pas etre killer par le biai du gestionnaire des processus.
    Cordialement,
    Fas3r

  5. #5
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 194
    Points
    5 194
    Par défaut
    Salut

    ce que tu décris comme fonctionnement ressemble bien à un service windows

    Un service Windows qui vérifierait par rapport à une connection à une base
    de données la validité d'un logiciel... et si la date d'utilisation est passé,
    fourni une information au logiciel...

    Je pense que le plus simple est "quand" meme de vérifier tous les jours que les dates sont bonnes plutot que d'attendre que l'utilisateur lance l'application.
    Car pour moi, 'recuperer' un evenement sur le lancement d'une application n'est pas trivial sous windows

    The Monz, Toulouse

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 19
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par theMonz31
    Salut

    ce que tu décris comme fonctionnement ressemble bien à un service windows

    Un service Windows qui vérifierait par rapport à une connection à une base
    de données la validité d'un logiciel... et si la date d'utilisation est passé,
    fourni une information au logiciel...

    Je pense que le plus simple est "quand" meme de vérifier tous les jours que les dates sont bonnes plutot que d'attendre que l'utilisateur lance l'application.
    Car pour moi, 'recuperer' un evenement sur le lancement d'une application n'est pas trivial sous windows

    The Monz, Toulouse
    Oui c'est vrai à mon avis ca sera mieux gerer au niveau de la mémoire car s'il est executer tout le temps on sait jamais avec windows . Mais comment faire pour bloquer l'execution d'un logiciel en partant de ta solution dans le cas ou l'utilisateur à dépassé son délai d'utilisataion ( dépasser date limite) ?

  7. #7
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mai 2003
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Suisse

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2003
    Messages : 299
    Points : 884
    Points
    884
    Par défaut
    si je puis me permettre, peux tu faire l effort d ecrire ds un francais + correct? C est à peine lisible...
    A part ce bemol, je me re balade sur ce forum que depuis hier: alors que les questions sont svt orientées code (normal, on est ds la section C#), je me rends compte que c est bcp plus des aides au design qui sont demandées! Interessant...

  8. #8
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 194
    Points
    5 194
    Par défaut
    une solution "basique" serait de lister toutes les X minutes la liste des process et de voir si ton process s'y trouve et à ce moment la, de lui appliquer le comportement qui va bien...

    Cela dit, dans la mesure ou la "protection" ne sera pas dans le logiciel lui meme, rien n'empechera l'utilisateur de changer le nom de l'executable et le tour "pourra" etre jouer (sauf si tu considères que l'apparation d'un process non listé par toi pourrait correspondre à quelque chose à détruire (en fonction de l'utilisateur ayant lancé l'application)

    En gros, tu aurais une liste de logiciel autorisé à être lancé par l'utilisateur, et si ce logiciel ne figure pas dans la liste ou que ca date d'utilisation est terminé, tu previens l'utilisateur et tu fermes le process...

    Mais cela veut dire que, en dehors des outils listés par ton service, l'utilisation de freeware ou shareware par l'utilisateur sera exclue.. cela depend de ton contexte d'utilisation

    Apres, tu pourrais aussi "prévoir" un batch de lancement pour chacun des processus de ton utilisateur et que ce batch (enfin, un exe) aille chercher des infos ou discute avec ton service pour savoir si il est autorisé, et si c'est le cas, lancer l'executable associé au batch

    Exemple : tu lances MonVisio.exe qui lui, lancera visio.exe si il en a le droit..

    Mais là encore, les failles sont possibles... reste à définir le cadre, la charte d'utilisation des outils

    LA meilleure solution serait encore d'avoir tes logiciels installés sur un serveur et d'avoir des jetons d'utilisations... Comme cela, quand un utilisateur désirera lancé une application, ton serveur pourra eventuellement lui accorder ou pas l'autorisation en fonction de son "login" et de ses droits d'utilisation de l'application.. Car en dehors d'une telle solution, il va etre délicat voir difficile de maitriser totalement ce qui sera fait sur les pc individuels

    Une derniere solution pourrait simplement consister à "detruire" (en tant qu'administrateur, tu le peux) ou à desinstaller (pour etre plus précis), tout logiciel ayant expiré...

    Il existe des logiciels d'administrateurs qui sont capables de lister l'ensemble des logiciels installés sur un poste client... et qui te permette dans prendre le controle completement.. donc, pourquoi pas une telle solution

    A+ The Monz, Toulouse

Discussions similaires

  1. Comment fermer un programme en execution
    Par Nik_Meilleur dans le forum C++Builder
    Réponses: 4
    Dernier message: 15/05/2007, 17h33
  2. Réponses: 3
    Dernier message: 01/05/2007, 13h37
  3. Recupération d'un handle d'un programme en execution
    Par Snoopystyle dans le forum Windows
    Réponses: 4
    Dernier message: 05/07/2006, 09h49
  4. Vérifier qu'un programme est en fonctionnement
    Par Gloup dans le forum Linux
    Réponses: 5
    Dernier message: 16/05/2006, 20h01
  5. Réponses: 4
    Dernier message: 01/05/2006, 14h37

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