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

Windows Discussion :

Un service pour se reconnecter à internet


Sujet :

Windows

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 73
    Par défaut Un service pour se reconnecter à internet
    Bonsoir,

    Je vais essayer d'être clair.
    J'ai un problème avec une clé 3G sfr qui se déconnecte de temps en temps, de manière aléatoire.
    C'est très handicapant car l'ordinateur qui a cette clé doit fonctionner de manière autonome, et être constamment connecté.

    J'aimerai donc créer une petite appli qui surveille la connexion internet (via un ping toutes les 10 minutes par exemple) et qui en cas de déconnexion stoppe et redémarre le logiciel de connexion sfr.
    En effet, au démarrage de celui-ci la clé se connecte automatiquement au net.

    Je n'y connais pas grand chose, mais je pense qu'un service peut faire ce genre de chose.
    Qu'en pensez-vous?
    Comment créer un service pour XP? Avec quel IDE (gratuit de préférence)?

    Merci d'avance,

  2. #2
    Expert confirmé
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Par défaut
    Es-tu vraiment sûr de vouloir faire un "service" (service NT) ? Une application qui tourne en tâche de fond fait déjà bien l'affaire. Quelles sont tes connaissances actuelles en programmation Windows ?

    Pour surveiller la connexion, faire de pings me semble une bonne idée. En effet on ne peut pas simplement ouvrir une connexion TCP et conclure une panne réseau à la moindre coupure.

    Dans ce tutoriel sur les raw sockets, il y a un exemple de code qui te permet de pinger une machine dont l'adresse ou le nom est spsécifié.

    Pour l'IDE, je te conseille Visual C++ 2008 Express sinon Code::Blocks si c'est trop lourd pour toi.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 73
    Par défaut
    Merci Melem,

    J'ai été voir ton lien sur les raw socket... j'ai laissé tombé vite fait.

    Je suis parti en fait sur l'idée d'un .bat qui tournerait comme un service.
    Pour le bat s'est assez simple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    :start
    sleep 60 // si je veux que ça fasse une pause de 10min
    
    ping www.google.fr
    if %errorlevel% EQU 1 GOTO :cnx
    GOTO :start
    
    :cnx
    tskill "sfr" // on tue le process du logiciel sfr
    start "sfr" "c:\sfr.exe" 
    
    GOTO :start
    Tu en penses quoi?
    Mais là je galère pour en faire un service.
    J'essaie avec la commande sc, et aussi les programme instsrv.exe et srvany.exe, mais ça bug quelque part...?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 73
    Par défaut
    C'est bon je m'en sors pas trop mal.
    Avec le code précédant, j'ai fait un test en lançant la calculatrice (calc.exe).

    Mais ce qui est curieux c'est que le processus calc.exe apparait bien, mais par contre l'interface de la calculatrice n'apparait pas..?? quelqu'un c'est pourquoi et comment corriger cela?

  5. #5
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 497
    Par défaut
    Les services tournent dans un environnement de sécurité (une WorkStation)
    différent de celui de l'utilisateur inter-actif.
    Je rappelle qu'un service tourne même quand personne n'est connecté à la machine.
    Les fenêtres créées par notepad sont sur l'un des écrans de la WorkStation des services et pas dans la Workstation de l'utilisateur inter-actif. (Il y a trois écrans par WorkStation : Le Desktop, l'écran Crtl-Alt-Supp et le ScreenSaver.

    Donc pas de programmes avec IHM lancé en service.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 73
    Par défaut
    Merci Bacelar,
    J'ai un peu près compris ce que tu as dit

    En tout cas je viens de tester avec le logiciel de connexion de la clé 3g et ça semble fonctionner.
    Le service ping toutes les 60s (poour tester) et orsqu'il n'y a pas de connexion, hop le logiciel se lance, je ne le vois mais il est dans les processus, et la connexion se rétablit.

    C'est cool!
    Par contre, j'ai du modifier le service pour que la connexion se fasse avec le compte utilisateur (mon compte) parce qu'en utilisant le compte système local, ça faisait n'importe quoi (il lançait plusieurs processus sfr en même temps).

    C'est quoi IHM?
    Et comment faire si je tenais vraiment à utiliser la calculatrice en la lançant à partir d'un service?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WD9] Service pour port série
    Par y0p dans le forum WinDev
    Réponses: 3
    Dernier message: 11/01/2006, 13h58
  2. [VB.NET] NT AUTHORITY\NETWORK SERVICE pour connection SQL
    Par Immobilis dans le forum ASP.NET
    Réponses: 2
    Dernier message: 05/01/2006, 21h49
  3. [10g] 2 services pour 1 instance
    Par matana dans le forum Oracle
    Réponses: 4
    Dernier message: 21/09/2005, 15h10
  4. Réponses: 5
    Dernier message: 27/08/2003, 11h45

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