Function Goto Batch ne marche pas avec ShellExecute
Greg_ory
Messages postés2Date d'inscriptionmardi 23 décembre 2014StatutMembreDernière intervention23 décembre 2014
-
Modifié par Greg_ory le 23/12/2014 à 18:59
fbalien
Messages postés251Date d'inscriptiondimanche 7 décembre 2003StatutMembreDernière intervention11 novembre 2016
-
26 déc. 2014 à 17:41
Bonsoir a tous,
Voila je viens de me rendre compte que la fonction Goto Batch ne marche pas avec se Code
function ConstructorBatch(Batch: TMemo): String; const Sub = '&&'; var I: Integer; Cmd: String; begin Result := ''; for I := 0 to Batch.Lines.Count - 1 do begin Cmd := Cmd + Batch.Lines.Strings[I] + Sub; end; Result := Copy(Cmd,0, Length(Cmd) -2); end;
procedure TForm1.btn_ExecuterClick(Sender: TObject); Var aCmdLine : PChar; begin aCmdLine := PChar(cmdSwitch + ConstructorBatch(Batch)); StatusBar1.SimpleText := aCmdLine; Case cb_FenetreDos.Checked of True :ShellExecute(Handle, nil, 'CMD', aCmdLine, nil, sw_ShowNormal); False :ShellExecute(Handle, nil, 'CMD', aCmdLine, nil, sw_Hide); end; end;
procedure TForm1.RadioButton1Click(Sender: TObject); begin CmdSwitch := CmdSwitchs[TRadioButton(Sender).tag] ; if RadioButton2.Checked Then With cb_FenetreDos do Begin Checked := True; Enabled := False; End Else cb_FenetreDos.Enabled := True; end;
procedure TForm1.FormShow(Sender: TObject); begin RadioButton2.Checked := True; end;
Exemple se code Batch (Inséré dans le (MEMO = 'Bach') (Probléme ":boucle")
@title << Batch >> @set t=0 :boucle cls @color %t% @echo ------------------ @echo ---- CADRE ------ @echo ------------------ echo %t% @set /a t = t + 1 if %t%==99 goto fin goto boucle :fin pause
Erreur de la console : la syntax du nom de fichier de repertoire ou de volume est incorrecte.
Alors j'ai tester se code batch directement dans un fichier *.bat est la marche
Auriez vous une idée doux pourrai venir le problème ?
Merci de votre réponse & Bonne fête de fin d'année