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 istIch 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?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 nichtauch 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
-
Du hast eine Funktion, die verwendet und deklariert wird aber nicht in der DLL oder deinen Modulen vorhanden/definiert ist.
-
Zu dem Thema noch was zum Lesen:
http://c-plusplus.net/forum/viewtopic-var-t-is-246875-and-highlight-is-.html
-
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.hCString field[100];
Aber da sehe ich auch keine Probleme
-
DLL-Abhängigkeiten kriegst du mit dem Dependency Walker raus.