(gelöst) [Qt] Programm zu gross für den Arbeitsspeicher



  • Moin,

    folgendes:

    Ich habe ein Programm mit MSVC 2008 Express und Qt 4.5 geschrieben. Das Programm lief bisher auf beiden Entwicklungsrechnern.

    Heute wollte ich das Programm auf einem anderen Rechner starten. Ich habe mittels Dependency Walker in Erfahrung gebracht, dass die Dateien QtGui4.dll, QtCore4.dll, msvcp90.dll, msvcr90.dll, kernel.dll und vcinpl.dll benötigt werden.

    Diese habe ich alle der Exe beigelegt (Außer kernel.dll und vcinpl.dll).

    Wenn ich das Programm aufrufe erscheint die Windows Eingabeaufforderung mit zwei Fehlermeldungen:
    1. Befehl oder Dateiname nicht gefunden
    2. Proramm zu groß für den Arbeitsspeicher

    Von den 512 MB Ram werden 344 MB benutzt, die Auslagerungsdatei ist 2 GB groß. Auf dem Laufwerk ist noch 10 GB Platz frei.

    Das Programm ist 170 kb groß und die DLLs insgesamt 10 MB. Auf dem Entwicklungsrechner benötigt das Programm benötigt 12 MB Ram.

    Kann mir jemand helfen?

    Danke schonmal
    Matthias

    Lösung: Installation der MSVC Redistributable



  • Weiß nicht ob's daran liegt, aber auf keinen Fall die kernel.dll beilegen.
    Und die vciinpl.dll wohl auch nicht (weiss nicht was die macht).



  • Ich tippe mal ins blaue, aber vielleicht mag es dein Programm nicht, das du die kernel.dll lokal hinzugibst, die ist auf jedem windowsrechner nach der installation, vorhanden, somit brauchst du sie nicht mitverteilen.

    EDIT: da war wohl jemand schneller gewesen



  • Softwaremaker schrieb:

    Weiß nicht ob's daran liegt, aber auf keinen Fall die kernel.dll beilegen.
    Und die vciinpl.dll wohl auch nicht (weiss nicht was die macht).

    Entschuldigt, ich habe mich nicht klar ausgedrückt. Ich habe alle hinzugefügt, die nicht auf dem anderen Rechner vorhanden sind. Die vcinpl.dll wird zur Kommunikation mit dem CAN-Bus benötigt.



  • Also den Fehler mit dem Arbeitsspeicher hatte ich auch vor kurzem. Das lag bei mir daran, dass ich 1 Byte zuviel vom HTTP Response abgeschnitten habe und es in der .exe fehlte. Ich habe gelesen, dass der Fehler meist damit zusammenhängt, dass die .exe beschädigt ist. Vielleicht hilft dir das ja weiter bei der Fehlersuche...



  • Das hat leider nicht geholfen, trotzdem danke.


  • Mod

    Hm, und die Debug version ist es auch nicht?



  • Es funktioniert mit beiden Versionen nicht, sowohl Debug als auch Release.



  • Hast du die MSVCRT (vcredist.exe, passend zur VisualStudio-Version) auf dem Zielrechner installiert?



  • Ich bin gerade hergekommen um zu schreiben, dass es dadran gemangelt hat und siehe da, das wäre auch der nächste Tipp gewesen 🙂 Danke soweit.

    Es lag dadran. Ich habe das Packet gestern installiert und das Programm lief noch immer nicht. Heute, nachdem ich den Rechner neugestartet hatte lief es wie von Zauberhand, als vermute ich, dass es an der Redistributable lag.

    Gibt es einen Weg, wie ich auf die Installation der Redistributable verzichten kann?



  • Gibt es. Ich komme gerade nicht an den Link und es ist auch nicht ganz ohne.
    Aber suche mal auf Google nach "Jochen Kalmbach", Blog, vc redist, manifest oder so.


Anmelden zum Antworten