![]() |
Rückgabewert eines c Programmes verwenden
Hallo,
ich habe mal eine Frage zum Rückgabewert eines C-Programmes. Und zwar hat ja die Main Funktion in C einen Rückgabewert, ist es möglich in Delphi ein C programm (die fertige exe) aufzurufen, und den Rückgabewert zu bekommen? also in C schaut das Prog so aus:
Delphi-Quellcode:
int main()
{ return 10; } |
Re: Rückgabewert eines c Programmes verwenden
Wie rufst du den das Programm auf?
|
Re: Rückgabewert eines c Programmes verwenden
Hello,
daweil so
Delphi-Quellcode:
ShellExecute(Application.Handle,'open', PChar('c_programm.exe'),Nil, Nil, SW_NORMAL);
|
Re: Rückgabewert eines c Programmes verwenden
|
Re: Rückgabewert eines c Programmes verwenden
Hab ich das jetzt richtig verstanden, das der Rückgabewert der Funktion ShellExecute mir den Rückgabewert der main Funktion liefert?
|
Re: Rückgabewert eines c Programmes verwenden
es gibt keinen rückgabewert der funktion main. es gibt 'n beendigungscode des der funktion an das betriebssystem. das ist unabhänig von der verwendeten programmiersprache... geht auch in pascal :-)
hat man früher dafür verwendet um die batchdateien zu steuern ... gibt das programm keinen expliziten code mit, wird i.d.R. der wert 0 an das BS zurückgegeben... |
Re: Rückgabewert eines c Programmes verwenden
ich checks nicht, is es jetzt möglich oder nicht???
Delphi-Quellcode:
hier kommt immer 42 zurück, egal was ich im c programm eingebe....
showmessage(inttostr(ShellExecute(Application.Handle,'open', PChar('test.exe'),Nil, Nil, SW_NORMAL)));
|
Re: Rückgabewert eines c Programmes verwenden
Zitat:
|
Re: Rückgabewert eines c Programmes verwenden
|
Re: Rückgabewert eines c Programmes verwenden
Moin ferby,
um an den Return-Code zu kommen, müsstest Du das Programm mit ShellExecuteEx oder CreateProcess aufrufen (dann klappt auch der Tip von NeoTracer) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:59 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz