System(); qui fonctionnne pas [Résolu]

A voir également:System(); qui fonctionnne pasSystème d'information - Articles Le fichier est trop grand pour le systeme de fichier de destination ✓ - Forum - Windows Systeme d'exploitation - Articles 2018-11 mise à jour pour windows 10 version 1803 sur systèmes x64 (kb4023057) - erreur 0x80070643 ✓ - Forum - Windows 10 Bad system config info ✓ - Forum - Windows 10

Bonjour,

J'ai le code suivant:

 system("for /f "delims=" %%a in ('dir . /b/s ^| findstr /R "\\repertoire" ') do set "path=%%~dpnxa""); system("echo Le chemin est : %path%"); 



Mais j'obtiens les erreurs suivantes lors de la compilation:

 ||=== Build: Debug in setup (compiler: GNU GCC Compiler) ===| C:\Users\user\Documents\setup\main.cpp|7|error: stray '\' in program| C:\Users\user\Documents\setup\main.cpp|7|error: stray '\' in program| C:\Users\user\Documents\setup\main.cpp||In function 'int main()':| C:\Users\user\Documents\setup\main.cpp|7|error: unable to find string literal operator 'operator""delims' with 'const char [8]', 'unsigned int' arguments| ||=== Build failed: 3 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===| 


Pourriez-vous m'aider à résoudre ce soucis svp ?

Je code sous Code::Block

Forum

A voir également:System(); qui fonctionnne pasSystème d'information - Articles Le fichier est trop grand pour le systeme de fichier de destination ✓ - Forum - Windows Systeme d'exploitation - Articles 2018-11 mise à jour pour windows 10 version 1803 sur systèmes x64 (kb4023057) - erreur 0x80070643 ✓ - Forum - Windows 10 Bad system config info ✓ - Forum - Windows 10

Web: www.shapebootstrap.net

2 réponses

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Bonjour,

Une chaîne de caractère ça commence et ça fini par des guillemets(").
A l'intérieur certains caractères ne sont pas accessibles, il faut les précéder d'un backslash(\). Il s'agit entre autres des caractères guillemets(") et backslash(\). Ça donne un truc du genre :
system("for /f \"delims=\" %%a in ('dir . /b/s ^| findstr /R \"\\\\repertoire\" ') do set \"path=%%~dpnxa\"");

Dire « Merci » 1

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 55729 internautes nous ont dit merci ce mois-ci

Reply
réponses:
  • auteur

    Merci la compilation s'effectue bien cependant, lors de l'exécution, j'obtiens ceci sur la console


    %%a était inattendu.


    J'obtiens ceci en résultat au lieu du chemin de mon répertoire:


    %%a était inattendu.
    Le chemin est : C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\iCLS\;C:\Program Files\Intel\Intel(R) Management Engine Components\iCLS\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Windows\System32\OpenSSH\;C:\Users\Admin\AppData\Local\Microsoft\WindowsApps;

  • auteur

    Bonjour, pourriez-vous m'aider svp, j'ai modifié en mettant des "\" mais cela ne fonctionne pas....


    system("for /f \"delims=\" %%a in ('dir . /b/s ^| findstr /R \"http%3a%2f%2fcygwin.mirror.constant.com%2f$" ') do set \"path=%%~dpnxa\"");

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

'lut,
en plus de ce que dit Dalfab, il faut savoir que l'utilisation que tu fais de

system()
ne marchera pas comme tu veux: chaque ligne
system()
lance un interpréteur de commande indépendant, et la variable
path
que tu modifies dans la 1ère ligne ne sera pas visible dans la 2e car sa valeur ne remonte pas au processus parent, c-à-d ton programme, pour qu'elle soit conservée dans son état modifiée pour la 2nde commande. Si tu veux afficher sa valeur ça doit se faire dans un unique appel
system()
.

Reply
réponses:
  • auteur

    merci, j'ai trouvé la solution à mon problème

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed