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

API, COM et SDKs Delphi Discussion :

[Windows 10] Exécuter fichier batch


Sujet :

API, COM et SDKs Delphi

  1. #1
    Membre régulier
    Femme Profil pro
    Inscrit en
    Avril 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2007
    Messages : 209
    Points : 93
    Points
    93
    Par défaut [Windows 10] Exécuter fichier batch
    Bonjour à tous,

    depuis les dernières mises à jour Windows, je rencontre un problème lors de l'exécution d'un fichier BATCH depuis mon programme Delphi 7. Je m'explique.

    J'utilise la fonction suivante pour afficher la liste des ports COM :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    procedure TForm1.btnPortsCOMClick(Sender: TObject);
    Const
         NomFichier : AnsiString = 'ChangePort.Bat';
     
    Var
       CheminFichier : AnsiString;
     
    begin
         CheminFichier:=IncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName));
     
         Try
            DeleteFile(CheminFichier+NomFichier);
         Except
         End;
     
         mmoBatch.Clear;
         mmoBatch.Lines.Add('@ECHO OFF');
         mmoBatch.Lines.Add('ECHO Etat des ports COM (CHANGE PORT /QUERY) : ');
         mmoBatch.Lines.Add('ECHO.');
         mmoBatch.Lines.Add('CHANGE PORT /QUERY');
         mmoBatch.Lines.Add('ECHO.');
         mmoBatch.Lines.Add('PAUSE');
         mmoBatch.Lines.SaveToFile(CheminFichier+NomFichier);
         mmoBatch.Clear;
     
         ShellExecute(0,'OPEN',PChar(CheminFichier+NomFichier),Nil,Nil,SW_SHOW);
    end;
    Lorsque je clique sur ce bouton, j'ai bien une fenêtre dos qui s'ouvre. mais le message "'Change' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes" apparaît

    Nom : Sans titre.png
Affichages : 1576
Taille : 24,6 Ko

    J'ai uniquement ce problème sur mon Windows 10. et il n'est apparu que suite aux dernières mises à jour Windows.
    Ce qui est étrange c'est que je n'ai pas ce problème sur Windows 7. De plus, sur mon Windows10, si j'exécute depuis l'explorateur le fichier bat généré par mon programme, je n'ai pas ce problème non plus.

    J'ai essayé d'ajouter un manifest à mon programme pour qu'il s'exécute avec les privilèges "highestAvailable" mais ça ne change rien (Je fais mon test sur une session Administrateur).

    Savez-vous comment je pourrais corriger ce problème?

    EDIT : Après quelques recherches supplémentaires. il semble que le problème vienne du fait que l'invit de commande lancée par mon appli Delphi est la : "C:\Windows\SysWOW64\cmd.exe" alors que celle lancée lors de l'exécution manuelle d'un fichier bat est "C:\Windows\System32\cmd.exe". Y a-t-il un moyen de forcer le choix de l'invit de commande pour la "C:\Windows\System32" dans Delphi?



    Merci d'avance.

    Noémie

  2. #2
    Membre régulier
    Femme Profil pro
    Inscrit en
    Avril 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2007
    Messages : 209
    Points : 93
    Points
    93
    Par défaut
    Pour ceux que ça intéresserait, la solution décrite ici : https://stackoverflow.com/questions/...execute-delphi

    m'a permis de régler mon problème.

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

Discussions similaires

  1. [Batch] Cours sur la ligne de commande Windows et les fichiers Batch
    Par Community Management dans le forum Scripts/Batch
    Réponses: 9
    Dernier message: 26/10/2023, 11h44
  2. [Débutant] Problèmes d'exécution fichiers Batchs
    Par Pinou421 dans le forum VB.NET
    Réponses: 1
    Dernier message: 22/10/2012, 20h57
  3. Réponses: 0
    Dernier message: 30/03/2009, 19h24
  4. [Système] Exécuter fichier batch
    Par gogolak dans le forum Langage
    Réponses: 6
    Dernier message: 10/05/2006, 11h04

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