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

Scripts/Batch Discussion :

Avec xcopy, si 'Access denied' faire 'ca' [Batch]


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Août 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Août 2010
    Messages : 6
    Par défaut Avec xcopy, si 'Access denied' faire 'ca'
    J'ai fait un petit install.bat simplissime qui copie des fichiers sur C:\ comme suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    @echo off
    title Installation du logiciel
    
    xcopy "\\serveur\Logiciel\LastVersion\*" /D /Y C:\
    xcopy "\\serveur\Logiciel\update.bat" /D /Y "C:\Documents and Settings\All Users\Start Menu\Programs\Startup"
    copy "\\serveur\Logiciel\Logiciel.lnk" /Y "C:\Documents and Settings\All Users\Desktop\"
    
    echo Installation terminee
    start C:\Logiciel.exe
    pause
    exit
    Note : dans le dossier LastVersion il y a le fichier Logiciel.exe et une dll.

    Le probleme c'est que des fois l'utilisateur n'est pas admin donc n'a pas acces aux dossiers all users donc j'ai creer un 2eme .bat en remplacant "All users" par %USERNAME% comme suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    @echo off
    title Installation du logiciel
    
    xcopy "\\serveur\Logiciel\LastVersion\*" /D /Y C:\
    xcopy "\\serveur\Logiciel\update.bat" /D /Y "C:\Documents and Settings\%USERNAME%\Start Menu\Programs\Startup"
    copy "\\serveur\Logiciel\Logiciel.lnk" /Y "C:\Documents and Settings\%USERNAME%\Desktop\"
    
    echo Installation terminee
    start C:\Logiciel.exe
    pause
    exit
    Ma question est comment detecter qu'il y eu un "Access denied" pour la copie "All users" et enchainer sur une copie "One user" ?

    Sur le site de Microsoft j'ai trouve ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    xcopy %1 %2 /s /e 
    
    if errorlevel 4 goto lowmemory 
    if errorlevel 2 goto abort 
    if errorlevel 0 goto exit
    La liste des errorlevel retournes par xcopy est la :
    • 0 => Files were copied without error.
    • 1 => No files were found to copy.
    • 2 => The user pressed CTRL+C to terminate xcopy.
    • 4 => Initialization error occurred. There is not enough memory or disk space, or you entered an invalid drive name or invalid syntax on the command line.
    • 5 => Disk write error occurred.

    Rien qui parle d'un "Access denied" ! Une idee ?

  2. #2
    Membre chevronné

    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2003
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 333
    Billets dans le blog
    1
    Par défaut
    ta commande produit un output, tu la redirige via 2>&1 | dans findstr auquel tu donne le motif de recherche en question (access denied), puis tu regarde son code retour.

    un exemple :

    dir /b /s c:\ 2>&1 | findstr /i /c:"system32" >nul
    if %errorlevel% EQU 0 (echo system32 exist...)

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

Discussions similaires

  1. Relay Access Denied avec Postfix
    Par dnizard dans le forum Administration système
    Réponses: 0
    Dernier message: 12/05/2009, 14h54
  2. Réponses: 6
    Dernier message: 04/12/2008, 18h28
  3. [phpMyAdmin] Comment accéder avec un #1045 - Access denied for user
    Par R.L. dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 05/12/2007, 21h38
  4. [JDBC][Access] comment faire un lien avec la BD
    Par pmartin8 dans le forum JDBC
    Réponses: 4
    Dernier message: 19/10/2005, 14h35

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