Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

Invité Laurent_62

Batch

Messages recommandés

Invité Laurent_62

Bonjour à tous,

 

Dans le cadre de mon apprentissage je me suis lancé il y a quelques temps dans la réalisation d'un batch permettant de supprimer un service et pour compliquer la chose j'ai voulu ajouter quelques fonctionalités comme par exemple compatibilité 2000/XP, sauvegarde des clé de registre et Fichier exécutable relatif au service.

 

A priori le Batch fonctionne mais j'aimerais savoir si une personne plus expérimentée pouvais jeter un oeil pour me donner un avis critique sur la conception.

Ce batch combine l'utilisation de Pskill et Psservice (sysinternal)

 

l'archive complète est ici http://www.cfasi.net/telechargement/service.zip

 

Attention : Ne pas utiliser ce batch dans son etat actuel. Je le répète il est le résultat de test et d'un apprentissage en cours par conséquent rien ne confirme qu'il soit 100% fonctionnel et sans risque

 

Merci

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour Laurent_62, scuny, bonjour à tous,

 

Bravo pour ton batch !

Certes, j'imagine que tu as commencé par un batch simple puis, tu l'as complété... il est difficile à lire !

 

Je le regarderai plus attentivement plus tard car il me faut le décortiquer...

 

Quelques remarques :

- la programmation pourrait être plus simple comme pour

if not exist %windir%\system32\pskill.exe (

copy pskill.exe %windir%\system32\

if exist %windir%\system32\pskill.exe echo psservice copie

if not exist %windir%\system32\pskill.exe echo psservice absent

if not exist %windir%\system32\pskill.exe pause

if not exist %windir%\system32\pskill.exe goto exit

)

Je pense qu'on pourrait économiser des lignes et des tests ; ton message devrait être "echo pskill absent"

- tu utilises des tas de variables d'environnement mais il serait bon que tu les libères en fin de programme car si tout le monde faisait comme çà, après 100 batch dans la journée, la COMREG ne serait pas jolie-jolie ! :P Pourquoi changer de variable pour chaque interrogation de l'opérateur, pourquoi ne pas prendre le même nom

(désolé, j'ai fait des batch du temps de Windows 9x, alors, je suis économe)

- il te faut prendre les lettres accentuées en compte

- ton orthographe mérite des améliorations comme dans "Veuillez controler l'hortographe exacte"

- dans ta routine de fin,

if exist %windir%\system32\psservice.exe del /q %windir%\system32\psservice.exe
ceci n'est pas sympa pour un utilisateur qui, de lui-même, a installé psservice... tu le lui supprimes même si ce n'est pas toi qui l'a installé !

- je ne sais pas ce que tu comptes faire de ton outil mais si tu veux le diffuser sur le Web, il te faut certainement l'autorisation de SysInternals/Microsoft

- dans la routine exit,

if exist rapport_%rech%.txt (
ne comporte pas de parenthèse fermée !

- à quoi sert

if not exist "sauvegarde" (

md sauvegarde

)

3 lignes au lieu d'une qui ne simplifient pas la lecture

- Il existe un programme SWSC programmé par Bobbi Flekman utilisable sous XP et 2000 ( http://www.xs4all.nl/~fstaal01/downloads-us.html )

- il ne me semble pas que tu aies utilisé REG ou mieux, SWREG

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité Laurent_62

Bonjour scuny, ipl_001

 

Merci pour vos remarques.

 

Pour les accents c'est totalement de ma faute j'ai complètement oublié de les remettre.

 

Pour les autorisations nécessaires j'en ai pleinement conscience mais à ce jour il n'est pas encore question de le diffuser ou que ce soit sans être certain qu'il fonctionne ce qui me semble être la première étape.

 

Je vais donc voir pour effectuer les corrections et quelques modifications

- Test en début de la présence de psservice/pskill

-- Si absent copie et suppression à la fin

-- Si présent je laisse en place.

 

- Libérer les variables et en diminuer le nombre.

 

- Correction d'orthographe

 

 

Merci encore. Si d'autres remarques sont nécessaires je reste attentif dans la mesure ou le but est d'abord de corriger mes erreurs et d'en tirer partie pour apprendre.

 

Cordialement

Partager ce message


Lien à poster
Partager sur d’autres sites

Rebonsoir Laurent_62, scuni, rebonsoir à tous,

 

Parmi mes remarques, il y en a aussi d'autres qui ne sont pas de la cosmétique ! :P

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité Laurent_62

Re bonsoir,

 

Effectivement je prend seulement connaissance du dernier paragraphe concernant SWSC et SWREG

Je ne sais pas pourquoi je ne les avais pas vu à la première lecture.

 

Je regarde tout ca de plus près et je crois que, pour bien faire, je vais recommencer de "0" ca rendra les choses plus lisibles car effectivement ce fichier a subi beaucoup de modifications au fur et à mesure des essais.

 

Donc je recommence tout ca en prenant en compte SWSC et SWREG je pense pour la semaine prochaine si tout se passe bien. (certains inpondérants dont confirmation ne sera reçue que cette semaine)

 

Merci et a bientôt

Partager ce message


Lien à poster
Partager sur d’autres sites

B'soir tous,

 

Euh ... me v'là aprés la bataille (pas là, je faisais de la voile ... sur la Dordogne).

 

Mais le demandeur est entre les meilleures mains possibles dans le genre ...

 

Donc, désolé et Un grand salut au vieil ami Gérard /IPL (et au petit Scuny of course) et mes excuses pour me disperser dans pleins de trucs, hormis l'info !!! :P

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité Laurent_62

Bonsoir O.Fournier,

 

Tu n'arrives pas trop tard je te rassure les avis de tout le monde (avis ou critiques) sont les bienvenus, mon but est de reprendre quelques habitudes avec les Batch et améliorer mes connaissances existantes. Ayant la très mauvaise habitude de chercher à apprendre tout seul il faut bien que j'essaie de me soigner.

 

Tu es bien le premier que je vois s'excuser d'avoir des loisirs :P

 

Bonne soirée

Modifié par Laurent_62

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité Laurent_62

Bonsoir à tous,

 

En relisant le fichier aujourd'hui je me suis aperçu qu'il restait des trucs qui dataient d'une version largement antérieure.

 

Ce qui justifie d'autant plus une remise à "0" et comme le but est l'entrainement je vais m'attarder pour employer REG ou SWReg et SWSC.

Faut juste que je prenne le temps de me familiariser avec ses outils que je n'avais jamais essayé auparavant.

 

Donc "format service.bat" et je retente autre chose.

 

- Par contre le prochain je ferais un copier coller du contenu pour simplifier les choses et éviter la personne m'accordant de son temps à télécharger le fichier pour voir de quoi il retourne.

 

Cordialement

Partager ce message


Lien à poster
Partager sur d’autres sites

il existe un utilitaire fourni par windows qui permet de faire qqe trucs sympa

dont l'écriture en bdr (pas tester cette fonction perso)

 

il s'agit de setx.exe

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

  • En ligne récemment   0 membre est en ligne

    Aucun utilisateur enregistré regarde cette page.

×