@Sir: Die Startanwendung könnte auch gleichzeitig schon die Konsolenanwendung sein, oder?
Ich habe auch noch etwas probiert:
Variante 1:
Eine normale
GUI-Anwendung und {$Apptype Console} einfügen.
Damit ist allerdings immer ein Console da.
Varinate2:
Delphi-Quellcode:
program Project1;
uses
Forms,
windows,
Unit1 in 'Unit1.pas' {Form1};
{$R *.res}
// ist in D7 noch nicht enthalten:
function AttachConsole(dwProcessId:DWord):Bool;stdcall;
external 'kernel32.dll';
const ATTACH_PARENT_PROCESS=DWORD(-1);
begin
if paramcount=0 then
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end else
begin
if AttachConsole(ATTACH_PARENT_PROCESS) then
writeln
else
allocConsole;
try
writeln('Here I am');
readln;
finally
Freeconsole;
end;
end;
end.
Verhält sich aber auch eigenartig. (Edit: Was daran liegt, dass bei AttachConsole immer noch ein abschließend Readln im Code angehängt wird, oder was auch immer das ist)
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.