Fehler beim Ausfuehren



  • Hallo,
    ich bekomme von meinem Programm(Konsolenanwendung unter VisualStudio geschrieben), wenn ich das Programmfenster wieder schließen will, als erstes die Meldung: Meldung

    Debug Error!
    Program: ...
    R6025
    -pure virtual function call

    (press etry to debug the application)

    Klicke ich dann auf wiederholen bekomme ich einen Breakpoint in crt0msg.c
    Die Umgebung von dem Breakpoint sieht so aus:

    #ifdef _DEBUG
                /*
                 * Report error.
                 *
                 * If _CRT_ERROR has _CRTDBG_REPORT_WNDW on, and user chooses
                 * "Retry", call the debugger.
                 *
                 * Otherwise, continue execution.
                 *
                 */
    
                if (rterrnum != _RT_CRNL && rterrnum != _RT_BANNER && rterrnum != _RT_CRT_NOTINIT)
                {
                    if (1 == _CrtDbgReport(_CRT_ERROR, NULL, 0, NULL, rterrs[tblindx].rterrtxt))
                        _CrtDbgBreak(); //Hier zeigt der Compiler beim Breakpoint 
                }
    

    Klicke ich auf Abbrechen oder Ingnorieren schließt das Programm. Kann mir jemand vielleicht Tipps zur Fehlersuche geben?



  • wulfgang schrieb:

    -pure virtual function call

    Steht doch da. Siehe http://www.codeproject.com/KB/cpp/PureVirtualFunctionCall.aspx



  • Moin, danke für die Antwort. Bin leider noch nicht ganz dahintergekommen, wie ich den Fehler beseitige. Ich weiß, dass der Fehler nur auftaucht wenn ich

    CInternetSession session((_T("My FTP Session")),1, INTERNET_OPEN_TYPE_PROXY ,(_T( "proxy")), NULL, 0);
    

    außerhalb einer Methode erzeuge also z.B

    CInternetSession session((_T("My FTP Session")),1, INTERNET_OPEN_TYPE_PROXY ,
    	                          (_T( "proxy")), NULL, 0);  
    Connect::Connect(void)
    {}
    

    Kommt der Fehler daher, dass ich sssion erst zerstören muss? Aber einfach nur delete(session) in der aufrufenden Umgebung funktioniert nicht. 😞


Anmelden zum Antworten