QT Creator stürzt bei RadioButton ab



  • Hallo, ich programmiere C++. Früher habe ich in VS2010 Programmiert, aber wegen der plattformunabhängigkeit bin ich jetzt zu QT Creator umgestiegen. Es läuft alles, außer ich erstelle ein Programm, wo ein RadioButton drin ist. Das erste Debuggen funktioniert. Dann schiebe ich in meinem Projektverzeichnis die dll`s aus
    (C:\QtSDK\QtCreator\bin) die QTCore4.dll & QTGui4.dll hinzu. Das Programm kann ich jetzt nicht mehr ausführen weil der Prozedureinsprungpunkt von dem RadioButton in der QTGui4.dll fehlt. Das debuggen in SDK funktioniert jetzt auch nicht mehr. Könnt ihr mir helfen ?

    Danke, schonmal 😉



  • Dieser Thread wurde von Moderator/in SeppJ aus dem Forum C++ (auch C++0x und C++11) in das Forum Andere GUIs - Qt, GTK+, wxWidgets verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • CodingToHeart schrieb:

    Hallo, ich programmiere C++. Früher habe ich in VS2010 Programmiert, aber wegen der plattformunabhängigkeit bin ich jetzt zu QT Creator umgestiegen. Es läuft alles, außer ich erstelle ein Programm, wo ein RadioButton drin ist. Das erste Debuggen funktioniert. Dann schiebe ich in meinem Projektverzeichnis die dll`s aus
    (C:\QtSDK\QtCreator\bin) die QTCore4.dll & QTGui4.dll hinzu. Das Programm kann ich jetzt nicht mehr ausführen weil der Prozedureinsprungpunkt von dem RadioButton in der QTGui4.dll fehlt. Das debuggen in SDK funktioniert jetzt auch nicht mehr. Könnt ihr mir helfen ?

    Danke, schonmal 😉

    Fassen wir zusammen: Es funktioniert, wenn du die DLLs nicht in das Projekt-Verzeichnis kopierst? (Edit) Und QtCreator stürzt ab, wenn du einen Radio-Button in dein Programm integrierst (machst du im QtDesigner, nehm ich an...)? Und du bist dir sicher, dass diese DLLs dieselben wie die beim Ausführen aus dem QtCreator heraus sind? Kannst das ja mit Process Explorer testen.

    Sonst lösche sie einfach wieder, und teste (wenn du willst mit Process Explorer), welche DLLs beim Ausführen aus dem SDK gelinkt werden.



  • Also wenn ich mein Projekt erstelle und ein RadioButton hinzufüge und danach debugge, funktioniert es.

    Wenn ich dan in mein ProjektOrdner gehe, muss man ja erst die entsprechenden dlls einkopieren. QTCORE4 & QTGUI4.dll die nehme ich aus "C:\QTSDK\QTCreator\lib".

    Wenn ich dann das Programm ausführe, kommt dann die Fehlermeldung, aber das passiert nur, wenn ich ein RadioButton hinzufüge



  • CodingToHeart schrieb:

    Wenn ich dann das Programm ausführe, kommt dann die Fehlermeldung, aber das passiert nur, wenn ich ein RadioButton hinzufüge

    Hmm.. Und du bist dir eben sicher, dass die DLLs die beim Debuggen gelinkt werden, auch dieselben sind die du aus C:\QTSDK\QTCreator\lib kopierst? Klingt eigentlich nach einer falschen DLL.

    Edit: Irgendwelche anderen Qt-Ordner auf der Festplatte? Seperat installiertes Qt, usw.? Und mal in den System-Pfaden geschaut, ob du nicht irgendeinen dieser "anderen" Ordner in der Path-Systemvariable hast? Sonst werden vielleicht aus diesen Ordnern die entsprechenden DLLs geladen.



  • Ja ich habe die dll´s aus diesesm Ordner genommen



  • Mir ist grad aufgefallen, wenn ich den Buildmod auf Release stelle muss ich eine QTGui4.dll kopieren, wenn ich aber den Buildmod auf Debugg lasse, frägt er mich na eine QtGuid4.dll, diese ich aber nicht besitze?



  • CodingToHeart schrieb:

    Ja ich habe die dll´s aus diesesm Ordner genommen

    Das ist klar! Ich will wissen, ob die DLLs die beim Debuggen gelinkt werden, dieselben wie aus dem QtCreator/... sind.



  • sorry, wie kann ich das heruasfinden ?



  • CodingToHeart schrieb:

    sorry, wie kann ich das heruasfinden ?

    Ich benutzte z.B. Process Explorer (Download Link). Wenn du es installiert hast, exe öffnen und auf den Prozess klicken (dürfte der Name des Projekts sein, wer sucht der findet). Unten werden dann alle DLLs aufgelistet. Suche dann nach der QtCore4.dll (bspw.) und guck, welchen Pfad die hat.



  • ok danke für deine Antwort, werde es mir mal anschauen 😉



  • ok danke ich musste die dll´s aus C:\QtSDK\Desktop\Qt\4.8.0\msvc2010\bin nehmen 😉



  • CodingToHeart schrieb:

    ok danke ich musste die dll´s aus C:\QtSDK\Desktop\Qt\4.8.0\msvc2010\bin nehmen 😉

    😃
    Gut, funktioniert es jetzt?



  • ja, aber der pfad ? die dlls kommen aus: C:\QtSDK\Desktop\Qt\4.8.0\msvc2010\bin
    kommen? heißt msvc nicht Visual studio ?



  • CodingToHeart schrieb:

    ja, aber der pfad ? die dlls kommen aus: C:\QtSDK\Desktop\Qt\4.8.0\msvc2010\bin
    kommen? heißt msvc nicht Visual studio ?

    Jup

    Microsoft Visual C++



  • aber das hat nichts mit .net zutuhn ? Aber ms kann man unter linux nicht asuführen ?



  • kann man das auch ohne ms machen nur mit mingw, oder verstehe ich was falsch ?



  • CodingToHeart schrieb:

    kann man das auch ohne ms machen nur mit mingw, oder verstehe ich was falsch ?

    Ja, nehm ich an. Ich mache Qt immer nur mit MinGW, aber QtCreator hab ich noch nie so benutzt (QtDesigner schon).

    CodingToHeart schrieb:

    Aber ms kann man unter linux nicht asuführen ?

    Ney



  • Wie kann ich das umstellen, das er das mit mingw macht ?



  • Geh mal beim Creator ins Hauptmenü zu Einstellungen - Erstellung und Ausführung - Toolchain
    und stelle da deine Toolchain auf den MinGW um.



  • s oich habe jetzt mingw as a gcc for windows targets ausgewählt, wenn ich es ausführe und unser process explorere schaue, ist der qtdir pfad immer nich im msvc verzeichniss ?


Anmelden zum Antworten