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 DevidEspenschied · begonnen am 24. Jun 2010 · letzter Beitrag vom 24. Jun 2010
Antwort Antwort
DevidEspenschied

Registriert seit: 7. Sep 2006
Ort: Berlin
441 Beiträge
 
Delphi 12 Athens
 
#1

Windows-Konsolenfenster positionieren?

  Alt 24. Jun 2010, 12: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
Devid Espenschied
Pre-sales Consultant
Embarcadero Germany GmbH
germany.info@embarcadero.com

Kein Support per PN
  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, 13: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 14:33 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