QWebView > Rückgabewert -1073741511 (Windows)

Alles rund um die Programmierung mit Qt
Antworten
TheQuestion
Beiträge: 10
Registriert: 7. Juni 2010 18:53
Kontaktdaten:

QWebView > Rückgabewert -1073741511 (Windows)

Beitrag von TheQuestion »

  • Kann ich für die url-Eigenschaft des QWebViews "file://liesmich.htm" verwenden, einen relativen Pfad?
  • Wenn ich das QWebViews Element einfüge, bekomme ich den Rückgabewert -1073741511, die Anwendung ist nicht fertig, keine Fehler
    Ausgabe von "4 Kompiilierung:"

    Code: Alles auswählen

    Führe Build-Schritte für Projekt Minifreizeit2010 aus...
    Konfiguration unverändert, überspringe QMake-Schritt.
    Starte: D:/Programme/Qt/mingw/bin/mingw32-make.exe -w 
    mingw32-make: Entering directory `D:/Dateisammlung/C++ Projekte/MF2010CD/Minifreizeit2010'
    d:\programme\qt\qt\bin\qmake.exe -spec ..\..\..\..\Programme\Qt\qt\mkspecs\win32-g++ -win32 CONFIG+=release -o Makefile Minifreizeit2010.pro
    mingw32-make: Leaving directory `D:/Dateisammlung/C++ Projekte/MF2010CD/Minifreizeit2010'
    mingw32-make: Entering directory `D:/Dateisammlung/C++ Projekte/MF2010CD/Minifreizeit2010'
    D:/Programme/Qt/mingw/bin/mingw32-make -f Makefile.Release
    mingw32-make[1]: Entering directory `D:/Dateisammlung/C++ Projekte/MF2010CD/Minifreizeit2010'
    mingw32-make[1]: Nothing to be done for `first'.
    mingw32-make[1]: Leaving directory `D:/Dateisammlung/C++ Projekte/MF2010CD/Minifreizeit2010'
    mingw32-make: Leaving directory `D:/Dateisammlung/C++ Projekte/MF2010CD/Minifreizeit2010'
    Beendet mit Rückgabewert 0.
Meine Dateien:

main.cpp

Code: Alles auswählen

#include <QtGui/QApplication>
#include "mf2010cd.h"

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    mf2010cd w;
    w.show();
    return a.exec();
}
mf2010cd.cpp

Code: Alles auswählen

#include <QUrl>
#include <QDesktopServices>
#include <QCoreApplication>
#include <QtWebKit>
#include <QtWebKit/QWebView>


#include "mf2010cd.h"
#include "ui_mf2010cd.h"

mf2010cd::mf2010cd(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::mf2010cd)
{
    ui->setupUi(this);
}

mf2010cd::~mf2010cd()
{
    delete ui;
}

void mf2010cd::changeEvent(QEvent *e)
{
    QMainWindow::changeEvent(e);
    switch (e->type()) {
    case QEvent::LanguageChange:
        ui->retranslateUi(this);
        break;
    default:
        break;
    }
}

void mf2010cd::on_pushButton_4_clicked()
{
    close();
}

void mf2010cd::on_pushButton_3_clicked()
{
    QUrl url( "LiesMich.pdf" );
    QDesktopServices::openUrl( url );
}

void mf2010cd::on_pushButton_clicked()
{
    QUrl url( "file:///"+QCoreApplication::applicationDirPath()+"/Bilder" );
    QDesktopServices::openUrl( url );
}

void mf2010cd::on_pushButton_2_clicked()
{
    QUrl url( "file:///"+QCoreApplication::applicationDirPath()+"/Musik" );
    QDesktopServices::openUrl( url );

}
Projektdatei:

Code: Alles auswählen

# -------------------------------------------------
# Project created by QtCreator 2010-06-06T21:32:42
# -------------------------------------------------
TARGET = Minifreizeit2010
TEMPLATE = app
SOURCES += main.cpp \
    mf2010cd.cpp
HEADERS += mf2010cd.h
FORMS += mf2010cd.ui
OTHER_FILES += 
RC_FILE = icon.rc
QT += webkit
Im Projektordner befinden sich bereits folgende Bibliotheken:
libgcc_s_dw2-1.dll, mingwm10.dll, QtCore4.dll, QtGui4.dll, QtWebKit4.dll

Was ist das Problem mit dem QWebView?
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Laufzeitfehler haben meistens nichts mit Problemen beim Kompilieren zu tun. Der Compiler prüft deinen Code nur auf korrektes C++, gibt in vielen Fällen hilfreiche Warnungen aus. Aber wenn es um korrekte Logik geht (oder Sachen wie NULL-Zeiger-Dereferenzierung), dann kann der Compiler nix mehr machen.
Zu deinem Programm kann ich absolut nichts sagen, da nirgendwo ein QWebView erstellt wird, geschweige denn verwendet.

Relative Dateipfade gehen mit URL sicher auch, dann würd ich das aber nicht händisch zusammenbasteln, sondern Qt das machen lassen, so ein Pfad ist ja immer was Plattformspezifisches.

Code: Alles auswählen

QUrl localRelativeUrl = QUrl::fromLocalFile("../liesmich.html");
Antworten