Anwendungskonfiguration nicht korrekt



  • Hallo Leute

    Ich haben ein Problem mit einem alten Prog.
    Derzeit arbeite ich mit VS 2008 und haben ien altes PRog portiert
    so , dass es auf dem Rechner läuft. Jedoch wird es auf einem fremden Rechner
    nicht gestartet.
    Fehlermeldung:
    Diese Anwendung konnte nicht gestrtet werden, weil die Anwendungskonfiguration nicht korrekt ist

    Ich hab in diesem Forum schon etwas gefunden , aber nicht verstanden 😞
    Nur soviel dass die dll's statisch geladen werden sollen.

    Nur mal für dummies:
    Wie linke ich dll's statisch
    und woher weis ich welche ?

    In einem anderen Thread habe ich folgendes gefunden:

    die 2. Möglichkeit besteht darin, zur Laufzeitumgebung (Runtime Environment) einafch statisch zu linken. 
    
    Dazu gehst du in die Projekteigenschaften 
    in den Bereich C/C++ und wählst dort Codegenerierung 
    
    In dem Dialog gibt es nun den Eintrag "Laufzeit Bibliothek". 
    In der Debug-Variante steht da standardmäßig: "Multithreaded-Debug-DLL (/MDd)" 
    das DLL weißt auf dynamische Verlinkung hin (Dynamic Link Library) 
    um statisch zu linken, wählst du hier: "Multithreaded-Debug (/MTd)" 
    
    das selbe geht auch bei Release 
    aus "Multithreaded-DLL (/MD)" 
    muss hier "Multithreaded (/MT)" werden
    

    dann kommt bei mir aber : fatal error C1189 #error Please use /MD switch

    😕

    Danke für Hilfe und Gruß
    Linus





  • Vielen Dank für den Link . War in erster Linie hilfreich
    aber jetzt bekomme ich folgende Errors:

    Fehler 40 error LNK2001: Nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: int __thiscall CMYSQLDatabase::sqlexecute(class ATL::CStringT<char,class StrTraitMFC<char,class ATL::ChTraitsCRT<char> > >)" (__imp_?sqlexecute@CMYSQLDatabase@@QAEHV?CStringT@DV?CStringT@DV?StrTraitMFC@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@@Z)". HSVereinDlg.obj HSVerein

    ich lese daraus , dass irgend etwas mit den Mysql-Dll's nicht geht?
    aber verstehen tue ich diese hieroglyphen nicht

    auch habe ich folgende warnings erhalten:

    Warnung 4 warning C4251: 'CMYSQLDatabase::field': class 'ATL::CStringT<BaseType,StringTraits>' erfordert eine DLL-Schnittstelle, die von Clients von class 'CMYSQLDatabase' verwendet wird c:\users\hauke\documents\visual studio 2008\projects\hs-verein-1.2\databaselib.h 90 HSVerein

    von welcher DLL-Schnittstelle ist hier die REde ?



  • edit : war quatsch was hier stand /edit


  • Mod

    Du hast eine Funktion, die verwendet und deklariert wird aber nicht in der DLL oder deinen Modulen vorhanden/definiert ist.





  • Krurios ist nur dass die Software nur auf einigen Rechnern
    (VS 2008 installiert) funktioniert wenn dynamisch geladen wird
    Also fehlt eine oder mehrere Dll's . Mir wäre ja geholfen wenn
    ich wüßte wie ich herausbekommen kann welche das sind ?

    Übrigens ein Doppelklick auf die Warnings springt in die
    das Statement von databaselib.h

    CString field[100];

    Aber da sehe ich auch keine Probleme



  • DLL-Abhängigkeiten kriegst du mit dem Dependency Walker raus.


Anmelden zum Antworten