Partage
  • Partager sur Facebook
  • Partager sur Twitter

Quel est le meilleur moyen d'exécuter du cmd en C

Quel est le meilleur moyen d'exécuter des commandes cmd en C ?

    24 septembre 2021 à 17:33:29

    Bonjour, désolé de vous déranger x)

    J'aimerais savoir quel est le meilleur moyen d'exécuter des commandes windows (cmd) en langage C

    Petit problème, lorsque je souhaite exécuter la commande shutdown de windows, le cmd se lance à l'infini et rien ne se passe au niveau de mon programme

    Mon code source/images:

    #include "headers.h"
    
    int main(int argc, char const *argv[])
    {
    	shutdown();
    
    	return 0;
    }
    
    int shutdown(void)
    {
    	char shutdownScript[60] = "shutdown /r /t 30 /c \"HAHAHA HACKED BY SPECTRE\"";
    	int shutdownCommand;
    	shutdownCommand = system(shutdownScript);
    
    	return shutdownCommand;
    }

    headers.h :

    #include <stdio.h>
    #include <stdlib.h>
    
    /* fonctions */
    int shutdown(void);

    ce qu'il se passe:




    • Partager sur Facebook
    • Partager sur Twitter
      24 septembre 2021 à 17:57:25

      Es-tu certain de la syntaxe de ta commande shutdown?
      Essaies plutôt une commande plus simple comme "dir /a /b f*" si tu as des fichiers qui commencent par 'f'

      Et affiches ta chaîne avec printf avant de l'exécuter.

      -
      Edité par PierrotLeFou 24 septembre 2021 à 18:00:22

      • Partager sur Facebook
      • Partager sur Twitter

      Le Tout est souvent plus grand que la somme de ses parties.

        24 septembre 2021 à 18:29:54

        Hello,

        Chez moi, win7, ce programme fonctionne

        #include <stdlib.h>
        
        int shutdown(void) {
            char shutdownScript[60] = "shutdown /r /t 30 /c \"HAHAHA HACKED BY SPECTRE\"";
            int shutdownCommand;
        
        	shutdownCommand = system(shutdownScript);
        
            return shutdownCommand;
        }
        
        
        int main(void) {
            shutdown();
        
            return 0;
        }
        

        Je lance le programme à partir de la console (et j'utilise shutdown /a pour annuler la commande)

        -
        Edité par edgarjacobs 24 septembre 2021 à 18:31:30

        • Partager sur Facebook
        • Partager sur Twitter

        Il y a ceux qui font des sauvegardes, et ceux qui n'ont pas encore eu d'incident....

          24 septembre 2021 à 18:36:14

          Note que le redémarrage ne se fera qu'au bout de 30 secondes dans ton cas.
          • Partager sur Facebook
          • Partager sur Twitter

          Le Tout est souvent plus grand que la somme de ses parties.

            24 septembre 2021 à 19:59:48

            Ok ok je prends note, par contre HAHA je pense que c'est mon compilateur le problème non ? vu que chez edgarjacobs ça fonctionne nikel, je suis sous windows 7 pro 64 bit et j'utilise un compilateur 32 bit (pour que mes programmes soient compatibles avec un grand nombre de system windows .... bref......) est-ce que ça ne serais pas plutôt ça le problème ? :V

            Jvais test sur un vm en 32 bit pour voir x)

            Merci pour vos retours OH ! et à propos des commandes du genre mkdir ou ce genre de commandes simple... ça fonction nikel, je sais pas pourquoi mais shutdown il veut pas xD

            encore merci x)

            Cordialement

            • Partager sur Facebook
            • Partager sur Twitter
              24 septembre 2021 à 20:24:44

              edgarjacobs et moi sommes sur Windows-10 avec un compilateur 64-bits (je pense pour edgar ...)
              As-tu bien la doc de shutdown pour W7?
              • Partager sur Facebook
              • Partager sur Twitter

              Le Tout est souvent plus grand que la somme de ses parties.

                25 septembre 2021 à 9:00:34

                Sous Windows tu peux faire appel à la fonction ExitWindowsEx()
                • Partager sur Facebook
                • Partager sur Twitter
                  25 septembre 2021 à 18:10:02

                  PierrotLeFou a écrit:

                  edgarjacobs et moi sommes sur Windows-10 avec un compilateur 64-bits (je pense pour edgar ...)
                  As-tu bien la doc de shutdown pour W7?


                  c'est exactement la même
                  • Partager sur Facebook
                  • Partager sur Twitter

                  Quel est le meilleur moyen d'exécuter du cmd en C

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  • Editeur
                  • Markdown