Existe t-il une fonction équivalente à Winexec(cmd,sw_show) qui attend ?

Résolu
denisbertin Messages postés 245 Date d'inscription lundi 22 avril 2013 Statut Membre Dernière intervention 13 mai 2023 - 7 août 2020 à 23:21
denisbertin Messages postés 245 Date d'inscription lundi 22 avril 2013 Statut Membre Dernière intervention 13 mai 2023 - 9 août 2020 à 11:46
Existe t-il une fonction équivalente à WinExec(cmd,sw_show)

qui attend la fin de ce processus dans une version plus élaborée que WinExec ?

écrit à Bourges.

1 réponse

papyvore Messages postés 223 Date d'inscription samedi 15 novembre 2003 Statut Membre Dernière intervention 16 décembre 2021 15
Modifié le 8 août 2020 à 23:23
salut
cette procedure marche bien
Procedure ExecuteWait(Programme: string);
var
  ShExecInfo: TShellExecuteInfo;
begin
  FillChar(ShExecInfo, SizeOf(ShExecInfo), 0);
  with ShExecInfo do
  begin
    cbSize := SizeOf(ShExecInfo);
    fMask  := SEE_MASK_NOCLOSEPROCESS;
    lpFile := PChar(Programme); { le nom du programme }
    lpVerb := 'open';
    nShow  := SW_SHOW;
  end;
  if ShellExecuteEx(@ShExecInfo) then
  begin { on execute le programme }
    WaitForSingleObject(ShExecInfo.hProcess, INFINITE);
    { on attends un temps indefinie que l'appli s'arrete }
  end;
end;

mais celle-ci https://stackoverflow.com/questions/23814441/delphi-7-32-bits-execute-and-wait-64-bits-process est plus élaborée
prend en compte 32 ou 64 bits;

1
denisbertin Messages postés 245 Date d'inscription lundi 22 avril 2013 Statut Membre Dernière intervention 13 mai 2023 1
9 août 2020 à 11:13
J'ai montré à guillaume romain hiers comment interfacer denis-draw avec les fichiers Webp, une bonne initiative.
Mais mon interface n'était pas complète comme je lui ai expliqué, car je ne savais pas attendre la fin d'un processus comme un batch shell ou une commande Dos.

Depuis le compilateur de langage Delphi pour Pascal alors qu'à PhotoStation l'Erp SAP-ABap me permettait de le savoir.

J'ai alors interrogé les Oracles sur Internet sur le site web code sources comment ça marche pour le savoir.

J'ai obtenu la réponse le lendemain. il me reste à l'intégrer car la méthode précédente était inexacte et incomplète avec un temps d'attente approximatif 1000 millisecondes !... Ce n'est plus le cas cette méthode obtenu avec discernement est exact et la temporisation supposée n'est plus utile dans ce cas !
0
denisbertin Messages postés 245 Date d'inscription lundi 22 avril 2013 Statut Membre Dernière intervention 13 mai 2023 1 > denisbertin Messages postés 245 Date d'inscription lundi 22 avril 2013 Statut Membre Dernière intervention 13 mai 2023
9 août 2020 à 11:46
Donc et d'ou cette méthode d'attente était hypothétique et cette fonction donne le résultat escompté dans un temps précis qui me permet d'améliorer ce code-sources à nouveau et d'inclure aussi la reconnaissance des fichiers au format Tiff.
0
Rejoignez-nous