Visual C++ Program Bug

Dieses Thema im Forum "Programmieren" wurde erstellt von Don_Pazo, 16. September 2005.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Don_Pazo

    Don_Pazo Byte

    Registriert seit:
    16. September 2005
    Beiträge:
    58
    Hallo,
    ich habe einen Programmchen erstellt, mit hilfe von MFC.

    Es ist "Einzel Dokument" mit der Klasse "CHtmlView". Ich habe zusetzlich einen Dialog-Fenster gebaut, der seine eigene Klasse "CVerbindung" abgeleitet von CDialog hat. In dem Dialog-Fenster soll man den Server, ein Paar andere Opzionen wählen. Am Ender bildet alles zusammen einen "LINK".

    Und jetz DAS PROBLEM:

    IN DEM DIALOG-FENSTER SOLLTE BEIM KLIKEN DER OK TASTE, DAS LINK ZU DER FUNKTION "Reqest(CString Link)" witer geleitet:

    <Code>
    //**********************************************
    // Verbindung.cpp
    #include "E_Learn.h"

    #include "E_LearnDoc.h"
    #include "Verbindung.h"
    #include "E_LearnView.h"
    ...
    ...

    void CVerbindung::OnOK()
    {
    // TODO: Zusätzliche Prüfung hier einfügen
    UpdateData(TRUE);
    /* gewählte Option vom ComboBox holen*/
    int index;
    CString OptionName;

    index = m_cCombo.GetCurSel();
    m_cCombo.GetLBText(index, OptionName);

    /* Verbindung zum Link aufbauen*/
    CString Link;

    Link= "http://" + m_strServer + "/servlet/statisticsgateway?QUERYID=" + OptionName + "&USERID=" + m_strBenutzer + "&PASSWD=" + m_strPasswort;

    CE_LearnView *ptr = NULL;
    ptr->Request(Link);
    CDialog::OnOK();
    }

    //**********************************************
    // E_LearnView.h
    ...
    ...
    protected:
    afx_msg void Request();
    ...
    ..

    //**********************************************
    // E_LearnView.cpp
    #include "E_Learn.h"

    #include "E_LearnDoc.h"
    #include "Verbindung.h"
    #include "E_LearnView.h"
    ...
    ...
    void CE_LearnView::Request(CString Link)
    {
    Navigate2(Link,0,NULL);
    // MessageBox("EHOOOO");
    }


    Es wird alles compiliert keinen Problem. Aber bei ausführen das Programm kommt es zu Fellermeldung. Das Link wird nicht angezeigt. Aber das MessageBox funktionirt, wenn man Navigate2 auskomentiert.

    Könnte mir bitte jemand einen Rat geben, was ich falsch gemacht habe !!!

    Danke
     
  2. Don_Pazo

    Don_Pazo Byte

    Registriert seit:
    16. September 2005
    Beiträge:
    58
    // ******** LÖSUNG ********/

    void CVerbindung::OnOK()
    {
    // TODO: Zusätzliche Prüfung hier einfügen
    UpdateData(TRUE);
    /* gewählte Option vom ComboBox holen*/
    int index;
    CString OptionName;

    index = m_cCombo.GetCurSel();
    m_cCombo.GetLBText(index, OptionName);

    /* Verbindung zum Link aufbauen*/
    CString Link;
    Link= "http://" + m_strServer + "/servlet/statisticsgateway?QUERYID=" + OptionName + "&USERID=" + m_strBenutzer + "&PASSWD=" + m_strPasswort;

    //****** DAS TRICK *******//

    CView *ptr = ((CFrameWnd *)AfxGetMainWnd())->GetActiveView();

    if( ptr && ptr->IsKindOf(RUNTIME_CLASS(CE_LearnView) ))
    {
    ((CE_LearnView *)ptr)->Request(Link);
    }

    CDialog::OnOK();
    }
     
Status des Themas:
Es sind keine weiteren Antworten möglich.

Diese Seite empfehlen