Namespace zeigt fehler obwohl keiner da ist
-
ich habe ein kleines Problem,
ich bin mir gerade eine Programm engine am schreiben,
es geht auch alles soweit, jetzt wollte ich ein paar Zitate ausgeben lassen die
ich in der engine.dll geschpeichert habe
wenn ich das ganze Release bekomme ich denn Fehler1>------ Erstellen gestartet: Projekt: Tester, Konfiguration: Release Win32 ------ 1> menu.cpp 1>menu.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: static void __cdecl EngineNamespace::TNG::Prorgamm_Zitate(void)" (?Prorgamm_Zitate@TNG@EngineNamespace@@SAXXZ)". 1>G:\Programmierung\Vietcong3\Vietcong3 Launcher\Release\Tester.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.der namespace siht so aus:
namespace EngineNamespace { class TNG { static __declspec(dllexport) void Prorgamm_Zitate(); //Fertig }; }und so die dll funktion
namespace EngineNamespace { __declspec(dllexport) void TNG::Prorgamm_Zitate() { string Text[21]; Text[1] = "..."; Text[2] = "..."; Text[3] = "..."; Text[4] = "..."; int zahl = 0; while(20 > zahl) { string message = Text[++zahl]; if(MessageBoxA(NULL,message.c_str(),"Zitate",MB_ICONINFORMATION|MB_OKCANCEL) == IDOK) { cout << zahl << endl; } else { zahl = 20; } } }ich habe die updater funktion genauso geschrieben von aufbau des namespace,
dor bekomme ich allerdings keinen Fehler
-
Du zeigst nicht den Originalcode, deine Funktion ist private.
Hast du vielleicht einmal Programm_ und einmal Prorgamm_ geschrieben?
-
Ich schreibe mal die Originalen codes
#include "include.h" namespace EngineNamespace { class TNG { public: static __declspec(dllexport) void Login(char username[1024],char passwort[1024],char Resultat[1024]); static __declspec(dllexport) void EinstellungenConsole(); static __declspec(dllexport) void Vietcong_connect(char ip[1024],char port[1024],char passwort[1024]); static __declspec(dllexport) void Vietcong_serverquery(char Resultat[1024]); static __declspec(dllexport) void Vietcong_befehl(char Resultat[1024]); static __declspec(dllexport) void Vietcong2_connect(char ip[1024],char port[1024],char passwort[1024]); static __declspec(dllexport) void Vietcong2_serverquery(char Resultat[1024]); static __declspec(dllexport) void Vietcong2_befehl(char Resultat[1024]); static __declspec(dllexport) void Vietcong3_connect(char ip[1024],char port[1024],char passwort[1024]); static __declspec(dllexport) void Vietcong3_serverquery(char Resultat[1024]); static __declspec(dllexport) void Vietcong3_befehl(char Resultat[1024]); static __declspec(dllexport) void chat_connect(char ip[1024],char port[1024],char Name[1024]); static __declspec(dllexport) void chat_sendChat(char TextSend[1024],char TextRecv[1024]); static __declspec(dllexport) void Programm_FileCheck(); //Fertig, Bei neuen Dateien, ein Update in dieser Funktion machen static __declspec(dllexport) void Prorgamm_Zitate(); //Fertig static __declspec(dllexport) void Prorgamm_updater(); //Fertig static __declspec(dllexport) void Playsound(char track[1024],int OnOff);//Fertig }; }Nur die Zitate nehm ich raus ^^
#include "Funktion.h" #include "LaungeGeman.h" #include "include.h" namespace EngineNamespace { __declspec(dllexport) void TNG::Prorgamm_Zitate() { string Text[21]; //////Zitate Gelöscht ///////// int zahl = 0; while(20 > zahl) { string message = Text[++zahl]; if(MessageBoxA(NULL,message.c_str(),"Zitate",MB_ICONINFORMATION|MB_OKCANCEL) == IDOK) { cout << zahl << endl; } else { zahl = 20; } } } }