Selbstentwickelte Win32-Konsolenanwendungen auf anderen PC's nutzen



  • Hallo Forummitglieder,
    dies hier ist mein erster Beitrag in diesem Forum deshalb bitte ich euch mich nicht alt zu hart ranzunehmen 🙂
    Ich Programmiere nun schon seit einigen Monaten und da mit der Zeit meine Programme auch etwas Komplexer werden wollte ich diese auf anderen PC nutzen, um sie einfach mal jemanden zu zeigen.

    Allerdings bekommt man hier eine Fehlermeldung wenn ich versuche dies auszuführen:
    Projekt.exe - Systemfehler
    Das Programm kann nicht gestartet werden, da MSVCP110.dll auf dem Computer fehlt. Installieren Sie das Programm erneut um das Problem zu beheben.

    Ich habe natürlich schon mal Google befragt und es gibt auch ein Lösung, im "Normalfall". Das Problem ist normalerweise eine fehlende DLL-Datei, welche man mit einem Redistributable Package neu Installieren könnte. Ich habe dieses Paket mehrfach Installiert, doch die Fehlermeldung änderte sich nicht. Natürlich könnte man nun sagen, dass etwas mit dem Computer nicht stimmt, doch ich habe das ganze schon auf 3 verschieden PC's versucht. Ich glaube das etwas bei meinen Entwicklungsumgebung falsch eingestellt. Falls es von Bedeutung ist, ich verwende Microsoft Visual Studios Express 2012.

    Schon mal danke für alle antworten 🙂



  • Hast du denn das richtige Distributable-Package installiert, also für dein VS 2012 (Visual C++ Redistributable für Visual Studio 2012 Update 4)?

    Evtl. hilft dir auch Statisches Linken der C/C++ Runtime Library.



  • Th69 schrieb:

    Hast du denn das richtige Distributable-Package installiert, also für dein VS 2012 (Visual C++ Redistributable für Visual Studio 2012 Update 4)?

    Evtl. hilft dir auch Statisches Linken der C/C++ Runtime Library.

    Danke erstmal für die Antwort 🙂
    Ich habe versucht das Update zu Installieren jedoch startet der Download nicht, eigentlich müsste ich das Update auch Installiert haben. Ich habe das ganze auf meinem Handy, meinem PC und einen anderen PC versucht. An meinem sogar mit verschiedenen Browsern allerdings beginnt dieser nicht.
    Außerdem weiß ich leider noch nicht wie ich diese Datei einbinden kann und aus dem Beitrag bin ich nicht schlüssig geworden. 😕
    Könnten Sie das mir erklären?



  • Hast du irgendwelche Popup-Blocker? Mit dem IE 11 kommt die Frage nach "Popup zulassen" und dann kann ich die entsprechende Datei runterladen.
    Bei meinem aktuellen Firefox (37.0.2) kann ich die Datei(en) aber auch nicht runterladen (seit den letzten Updates kann ich aber auch keine youtube-Videos mehr schauen- darum habe ich den IE jetzt auch drauf ;-).

    Edit: nach der Installation dieses Redistibutable-Packages sollte die fehlende Datei automatisch beim Starten deiner Anwendung gefunden werden.



  • Ich dachte schon ich bin der einzige bei dem der Firefox spinnt. Ich kann auch keine Videos mit Firefox schauen und zum Downloaden benutze ich den FDM.



  • Die zum jeweiligen Visual Studio und passenden Update passenden Redist liegen doch auch auf dem Entwicklungsrechner. Die kann man mitsamt seinem Programm zum anderen PC tragen ...

    Bei Visual Studio 2012 ist der Ordner Programme\Microsoft Visual Studio 11.0\VC\redist\1031

    Da liegen die Installationsprogramme für die x86, x64 und arm Redistributables. Zumindest bei den größeren VS Versionen, hoffentlich auch bei der Express.

    Die Zahl im Pfad kann nach je nach Sprachversion von VS anders sein.



  • Alternativ könntest du auch, was diese .dll betrifft, in Release-Mode dein Projekt bauen lassen.
    Dann sollte der Zielrechner diese .dll Datei gar nicht brauchen.

    Sinnvoller wäre es vermutlich trotzdem, das zu tun, was die anderen bereits geschildert haben.



  • Erstmal danke für die ganzen Antworten, ich konnte erstmal nicht an den PC deswegen hat das ein wenig gedauert 🙂

    Ich habe es nun über den IE downloaden können. Hier kam auch die Popup-Meldung. Danke dafür :). Ich kann sagen das es mit Chrom, Opera und Firefox auch ohne AD-Blocker nicht geht ...
    Mit der Installation auf den anderen Rechner hat nun alles funktioniert 😃
    Wegen der YouTube Sache habe ich auch keine Ahnung, da ich größtenteils Chrome für alles verwende.

    Ich werde trotzdem noch versuchen die dll-Datei einzubauen, danke für den Tipp und auch noch danke dafür das ihr mir den Pfad genannte habt wo die Installer liegen. Ist bestimmt von Vorteil das zu wissen. 🙂

    Danke für alle Antworten 👍

    Mhmm schrieb:

    Alternativ könntest du auch, was diese .dll betrifft, in Release-Mode dein Projekt bauen lassen.
    Dann sollte der Zielrechner diese .dll Datei gar nicht brauchen.

    Sinnvoller wäre es vermutlich trotzdem, das zu tun, was die anderen bereits geschildert haben.

    nn schrieb:

    Die zum jeweiligen Visual Studio und passenden Update passenden Redist liegen doch auch auf dem Entwicklungsrechner. Die kann man mitsamt seinem Programm zum anderen PC tragen ...

    Bei Visual Studio 2012 ist der Ordner Programme\Microsoft Visual Studio 11.0\VC\redist\1031

    Da liegen die Installationsprogramme für die x86, x64 und arm Redistributables. Zumindest bei den größeren VS Versionen, hoffentlich auch bei der Express.

    Die Zahl im Pfad kann nach je nach Sprachversion von VS anders sein.



  • Mhmm schrieb:

    Alternativ könntest du auch, was diese .dll betrifft, in Release-Mode dein Projekt bauen lassen.
    Dann sollte der Zielrechner diese .dll Datei gar nicht brauchen.

    Sinnvoller wäre es vermutlich trotzdem, das zu tun, was die anderen bereits geschildert haben.

    Eine frage hätte ich da noch. Wenn ich das tun möchte was Du beschrieben hast, wie soll ich dann vorgehen. Soll ich die Datei in den Release-Ordner legen und dort dann per

    [code="cpp"] #include "..."

    einbinden?



  • Eine dll per #include einbinden ist Mist. Du musst dem Linker sagen dass er diese Library (die irgendwo als .a liegt) statisch zum Projekt linken soll. Das stellt man irgendwo in der IDE ein, wo dass bei VS ist weiß ich aber nicht.



  • (die irgendwo als .a liegt)

    Sorry, eher .lib



  • abcgr schrieb:

    Eine dll per #include einbinden ist Mist. Du musst dem Linker sagen dass er diese Library (die irgendwo als .a liegt) statisch zum Projekt linken soll. Das stellt man irgendwo in der IDE ein, wo dass bei VS ist weiß ich aber nicht.

    OK danke 🙂
    Ich werde mal Google befragen.


Anmelden zum Antworten