Dos Box aus C schließen

OP (Firma: KupferKabelbieger GmbH) #4526540
Lesenswert?
• ▲
▼
Moin,

kurze Frage : wie schließe ich eine DOS Box aus einem C Prog,
in die ich z.B. mit fprintf(stdout, "Hallo Welt\n");
eine Ausgabe gemacht habe, ohne, dass ich das entsprechende
Programm beende.

Etwas genauer : ich mache eine Fehlerausgabe in eine DosBox
aus einer C-DLL heraus. Die DLL bleibt geladen, ich möchte aber die
DosBox wieder schließen.
Gast #4526625
Lesenswert?
• ▲
▼
Lutz G. schrieb:
> Etwas genauer : ich mache eine Fehlerausgabe in eine DosBox
> aus einer C-DLL heraus.

Sowas ist immer super nervig, wenn man DLL's verwendet die eigenständig 
irgendwie Fehler anzeigen und den Nutzer verwirren, und man als 
Anwendungsprogrammierer nicht darauf reagieren kann. Mach es vernünftig, 
und leite Fehler korrekt an die Anwendung weiter, sodass diese die 
anzeigen oder anders behandeln kann. Dafür gibts schon lange bekannte 
Mechanismen wie Exceptions oder einfach Fehler Codes.
OP (Firma: KupferKabelbieger GmbH) #4526648
Lesenswert?
• ▲
▼
Dr. Sommer schrieb:
> Lutz G. schrieb:
>> Etwas genauer : ich mache eine Fehlerausgabe in eine DosBox
>> aus einer C-DLL heraus.
>
> Sowas ist immer super nervig, wenn man DLL's verwendet die eigenständig
> irgendwie Fehler anzeigen und den Nutzer verwirren, und man als
> Anwendungsprogrammierer nicht darauf reagieren kann. Mach es vernünftig,
> und leite Fehler korrekt an die Anwendung weiter, sodass diese die
> anzeigen oder anders behandeln kann. Dafür gibts schon lange bekannte
> Mechanismen wie Exceptions oder einfach Fehler Codes.

Hallo Dr. Sommer,

danke für den Beitrag.

Die aufrufenden Anwendung ist eine fertig compilierte Software,
auf die ich keinen Einfluss habe. Hier kann ich nur begrenzt auf 
Meldungen der DLL reagieren. Genauer gesagt nur auf das, was der 
Ersteller der Anwendung zugelassen hat.

Die angestrebte Consolen Ausgabe in der DLL kann über eine 
iniDatei-Eintrag
eingeschaltet werden und nur zum Debuggen während der Laufzeit und nicht 
für den Bediener gedacht. Der Bediener wird sie im Regelbetrieb nicht 
sehen. Dann wird eine Protokolldatei geschrieben.
OP (Firma: KupferKabelbieger GmbH) #4526666
Lesenswert?
• ▲
▼
Lutz G. schrieb:
> Dr. Sommer schrieb:
>> Lutz G. schrieb:
>>> Etwas genauer : ich mache eine Fehlerausgabe in eine DosBox
>>> aus einer C-DLL heraus.
>>
>> Sowas ist immer super nervig, wenn man DLL's verwendet die eigenständig
>> irgendwie Fehler anzeigen und den Nutzer verwirren, und man als
>> Anwendungsprogrammierer nicht darauf reagieren kann. Mach es vernünftig,
>> und leite Fehler korrekt an die Anwendung weiter, sodass diese die
>> anzeigen oder anders behandeln kann. Dafür gibts schon lange bekannte
>> Mechanismen wie Exceptions oder einfach Fehler Codes.
>
> Hallo Dr. Sommer,
>
> danke für den Beitrag.
>
> Die aufrufenden Anwendung ist eine fertig compilierte Software,
> auf die ich keinen Einfluss habe. Hier kann ich nur begrenzt auf
> Meldungen der DLL reagieren. Genauer gesagt nur auf das, was der
> Ersteller der Anwendung zugelassen hat.
>
> Die angestrebte Consolen Ausgabe in der DLL kann über eine
> iniDatei-Eintrag
> eingeschaltet werden und nur zum Debuggen während der Laufzeit und nicht
> für den Bediener gedacht. Der Bediener wird sie im Regelbetrieb nicht
> sehen. Dann wird eine Protokolldatei geschrieben.

Hallo Dr. Sommer,

generell stimme ich Dir da natürlich völlig zu :-)
In diesem Falle ist die DLL aber die zentrale Anwendung,
die zwischen dem TesterProgramm und einer DB steht und die
Kommunikation macht.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren