MS Visual C++ 2005 Express und native Win32 Anwendungen



  • Hi Leute,
    Ich hab ein kleines Problem. Ich wollte mir mal die 2005er Express Edition anschauen. Hab dabei jedoch gelesen das die erstellten Files nur auf Systemen laufen die auch das .Net Framework 2.0 installiert haben. Dies soll man ja ueber das PSDK unterbinden koennen.
    Hab mir darauf hin das PSDK installiert, in den Optionen von VS 2005 Express die Pfade fuer die Bin, Include und Libs angepasst. im corewin_express.vsprops hab ich AdditionalDependencies="kernel32.lib" in AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib" geaendert. und in der AppSettings.htm hab ich die

    WIN_APP.disabled = true;
    WIN_APP_LABEL.disabled = true;
    DLL_APP.disabled = true;
    DLL_APP_LABEL.disabled = true;

    4 Zeilen auskommentiert. Anfuersich hat auch alles geklappt, wenn ich eine Win32 Consolen Anwendung erstelle, kann ich im Application settings Menu auswaehlen obs eine WindowsApp, Dll, ConsolenApp oder Lib werden soll. Problem ist jedoch ist das solch ein Projekt weiterhin nur auf Framework 2.0 Rechnern laeuft. Wenn ich aber ein Leeres Projekt erstelle, laeuft es auch auf non Framework Rechnern.
    Meine frage ist nun ob des so gedacht ist oder ob ich irgendwo etwas vergessen oder falsch gemacht habe. Es ist halt immer ein wenig nervig wenn ich nach dem Erstellen des Projekts erstmal in den Projekt Eigentschaften von .exe auf .dll oder .lib wechseln muss.. Sprich ob es nicht auch moeglich ist, ueber ein Win32 Projekt ein non Framework lauffaehiges Programm zu erstellen.

    Mit freundlichen Grueßen

    Daniel



  • Problem ist jedoch ist das solch ein Projekt weiterhin nur auf Framework 2.0 Rechnern laeuft.

    Wodurch macht sich das bemerkbar? Bzw. woran hast du das festgestellt?



  • hm naja, ich hab schnell ein kleines Consolen programm geschrieben, getestet, bei mir laeuft es. Dann hat ein Kollege es auf seinem PC ohne Framework 2.0 ausprobiert und er bekam eine Fehlermeldung. Als er aber den "Leeres Projekt" Versuch getestet hat lief es auch bei ihm.



  • bekam eine Fehlermeldung

    Und welche? 🙄 🙄



  • Ach Ihr wollts aber genau wissen 🙂

    pic1

    Das ist die Fehlermeldung bei meinem Kumpel, beim anderen siehts genauso aus und so sollte es eigentl. laufen:

    pic2



  • "Funktioniert nicht" ist keine Fehlerbeschreibung. "Mein Auto ist kaputt, was kann ich dagegen tun?" ist auch nicht besser.

    Aber ich wette es ist die berühmte Meldung auf die jeder reinfällt, weil sich das Deployment ab VS2005 geändert hat.

    ZUfällig diese Meldung:
    Diese Anwendung konnte nicht gestartet werden, weil die Anwendungskonfiguration nicht korrekt ist. Zur Problembehandlung sollten Sie die Anwendung neu installieren."

    Die hat nichts mit .NET zu tun. Oder steht da was von .NET? Nö!

    Also, dieses Thema wurde schon mehrmals hier im Forum behandelt. EInfachste Lösung: die CRT (Runtime Lib) statisch und nicht dynamisch linken! Das ganze findest du in den Projekteinstellungen und kannst es dort ändern.

    Project -> Project Properties -> Configuration Properties -> C/C++ -> Code Generation -> Runtime Library (change from "Multi-Threaded DLL" to "Multi-Threaded").

    Fertig!

    Genauere Infos dazu gibts in der MSDN und auf codeproject, da das Thema eigentlich umfangreicher ist:
    http://www.codeproject.com/cpp/vcredists_x86.asp



  • vallov schrieb:

    Ach Ihr wollts aber genau wissen 🙂

    pic1

    Das ist die Fehlermeldung bei meinem Kumpel, beim anderen siehts genauso aus und so sollte es eigentl. laufen:

    pic2

    Na siehste, hätteste in deinem ersten Post die Fehlermeldung durch gegeben, hättest du dir deinen ellen langen Post sparen können und hättest in null komma nix eine Lösung gehabt.



  • Noch schlauer wäre es gewesen die Fehlermeldung bei google einzugeben. 🙄



  • hm ich habs halt mal aufs dot net framework geschoben, da bei mir ja ohne probleme alles rund lief. aber danke fuer die hilfe, ich hab in der suche auch cs 2005 express oder nur 2005 express oder gott weiß was eingeben, aber es wurde nie ein thema gefunden. vllt lag es auch daran das ich zu diesem zeitpunkt noch nicht eingeloggt war. aber lange rede kurzer sinn, danke jungs


Anmelden zum Antworten