Compiler macht Mist!



  • Wenn ich meine ANwendung compiliere, dann führt er sie normal aus. Wenn ich dann nochmal auf "Ausführen" drücke, dann öffnet er es als DOS fenster. Was soll der verdammte käse?!!?!

    schau ich in das Verzeichnis, dann hat er eine DOS exe erstellt und mein eigentliches Programm in eine OldExecutable.bak benannt.

    WARUM?????????????????? 😡

    gruß
    Thorsten



  • was ist das falsch?!

    UINT CheckUpdate(LPVOID pParam)
    {
    	CUpdater updater;
    	if (CUpdater::Success == updater.CheckForUpdate("http://www.myadress.de/app/"))
    	{
    		ShellExecute(NULL, NULL, "C:\\myfolder\\updater.exe", NULL, NULL, SW_NORMAL);
    		AfxEndThread(0);
    	}
    	AfxEndThread(0);
    	return 0;
    }
    

    wenn ich da in die if Anweisung komme, dann macht er aus meiner Anweundung eine DOS datei. Wenn ich die If Anweisung umgehen, läuft alles normal?!



  • das AfxEndThread() hinter ShellExecute() ist unnötig.

    aber zu weiter oben:
    das hört sich komisch an, aber ich denke er wird es nicht ohne grund machen. kann mir nur vorstellen das etwas in den projekteinstellungen falsch ist. welchen compiler benutzt du denn



  • das ist nur, wenn ich den Thread laufen lasse. Wenn ich den entferne, dann läuft er geanz normal

    ShellExecute brauch ich aufjdenfall. Aber wie beende ich diesen Thread korrekt?



  • AUA! ich hab den fehler gefunden! das tat weh 🙂

    war nur eine kleinigkeit....boah...man.....bin ich blöd. Und ich hab schon angefangen, an meinem verstand zu zweifeln 🙂


Anmelden zum Antworten