AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Windows-Konsolenfenster positionieren?
Thema durchsuchen
Ansicht
Themen-Optionen

Windows-Konsolenfenster positionieren?

Offene Frage von "Bummi"
Ein Thema von devidespe · begonnen am 24. Jun 2010 · letzter Beitrag vom 24. Jun 2010
Antwort Antwort
devidespe

Registriert seit: 7. Sep 2006
Ort: Berlin
434 Beiträge
 
Delphi 10.4 Sydney
 
#1

Windows-Konsolenfenster positionieren?

  Alt 24. Jun 2010, 11:59
Hallo,

ich rufe einen externen Befehl auf, indem ich nicht das normale ShellExecute, sondern ShellExecuteAndWait verwende. Dabei handelt es sich etwa um folgenden Befehl:

dir *.txt /s

Besteht irgendeine Möglichkeit, das aufklappende Windows-Konsolenfenster zu positionieren? Ideal wäre etwa eine Positionierung direkt unter meinem Hauptformular, welches ich extra für die Ausführung des Befehls oben mittig zentriere. Direkt darunter soll das Konsolenfenster erscheinen.

Ich habe nichts entsprechendes gefunden.

Danke für die Hilfe, Devid
Devid
57 65 72 20 6C 65 73 65 6E 20 6B 61 6E 6E 2C 20 69 73 74 20 6B 6C 61 72 20 69 6D 20 56 6F 72 74 65 69 6C 21
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#2

AW: Windows-Konsolenfenster positionieren?

  Alt 24. Jun 2010, 12:07
auf Deine Frage direkt habe ich leider keine Antwort, aber vielleicht möchtest Du ja die Konsolenausgabe direkt ine einem Memo in Deinem Programm anzeigen?

Delphi-Quellcode:
implementation
uses ConsoleThread;
{$R *.dfm}

var
  cs:TConsoleThread;

Procedure TheCallBack(s:AnsiString);
var
  ansi:WideString;
begin
  Setlength(ansi,length(s));
  OemToChar (@s[1],@ansi[1]);
  ansi := StringReplace(StringReplace(ansi,#9689,#10,[rfReplaceAll]),#9834,#13,[rfReplaceAll]);
  Form1.Memo1.Text:=Form1.Memo1.Text+ansi;
  Form1.Memo1.Perform(EM_LineScroll, 0 , Form1.Memo1.Lines.Count-1);

end;

procedure TForm1.Button1Click(Sender: TObject);
begin

// cs:=TConsoleThread.Create('Ping 192.168.1.1', '','',TheCallBack);
   cs:=TConsoleThread.Create('cmd /C CD \|dir'#13#10, '','',TheCallBack); // ACHTUNG CMD nur so


   cs.Resume;
end;
Angehängte Dateien
Dateityp: pas ConsoleThread.pas (5,1 KB, 7x aufgerufen)
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz