Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Robrunner Mini JLI'ler
Alter: 32 Anmeldedatum: 08.07.2007 Beiträge: 44 Wohnort: Passau Medaillen: Keine
|
Verfasst am: 29.08.2007, 12:49 Titel: Problem mit Visual C++ Express |
|
|
Ich möchte von Code::Blocks auf MS Visual C++ Express Edition umsteigen. Konsolenanwendungen bringe ich schon ohne Probleme zum laufen, aber mit Windows-Fenstern habe ich noch Probleme. Ich habe bereits unter Extras->Optionen->Projekte und Projektmappen->VC++-Verzeichnisse bei den Includedateien C:\programme\microsoft plattform sdk\include ;
...\include\atl und ...\include\mfc hinzugefügt und bei Bibliotheksdateien ...sdk\lib hinzugefügt. (Hoffe das stimmt alles )
Wenn ich jetzt ein leeres Projekt starte und das HelloWindows Programm vom Buch einfüge (,dass unter Code::Blocks läuft) und auf Erstellen->Projektmappe erstellen klicke erhalte ich folgende Fehlermeldungen:
Zitat: |
main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__PostQuitMessage@4" in Funktion ""long __stdcall MessageHandler(struct HWND__ *,unsigned int,unsigned int,long)" (?MessageHandler@@YGJPAUHWND__@@IIJ@Z)".
main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__DefWindowProcA@16" in Funktion ""long __stdcall MessageHandler(struct HWND__ *,unsigned int,unsigned int,long)" (?MessageHandler@@YGJPAUHWND__@@IIJ@Z)".
main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__CreateWindowExA@48" in Funktion ""struct HWND__ * __cdecl CreateMainWindow(struct HINSTANCE__ *)" (?CreateMainWindow@@YAPAUHWND__@@PAUHINSTANCE__@@@Z)".
main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__RegisterClassExA@4" in Funktion ""struct HWND__ * __cdecl CreateMainWindow(struct HINSTANCE__ *)" (?CreateMainWindow@@YAPAUHWND__@@PAUHINSTANCE__@@@Z)".
main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__GetStockObject@4" in Funktion ""struct HWND__ * __cdecl CreateMainWindow(struct HINSTANCE__ *)" (?CreateMainWindow@@YAPAUHWND__@@PAUHINSTANCE__@@@Z)".
main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__LoadCursorA@8" in Funktion ""struct HWND__ * __cdecl CreateMainWindow(struct HINSTANCE__ *)" (?CreateMainWindow@@YAPAUHWND__@@PAUHINSTANCE__@@@Z)".
main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__LoadIconA@8" in Funktion ""struct HWND__ * __cdecl CreateMainWindow(struct HINSTANCE__ *)" (?CreateMainWindow@@YAPAUHWND__@@PAUHINSTANCE__@@@Z)".
main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__TranslateMessage@4" in Funktion "_WinMain@16".
main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__DispatchMessageA@4" in Funktion "_WinMain@16".
main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__GetMessageA@16" in Funktion "_WinMain@16".
main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__InvalidateRect@12" in Funktion "_WinMain@16".
main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__MessageBoxA@16" in Funktion "_WinMain@16".
C:\Dokumente und Einstellungen\Robert\Eigene Dateien\Visual Studio 2005\Projects\Windows\Release\Windows.exe : fatal error LNK1120: 12 nicht aufgelöste externe Verweise. |
Danke im voraus! |
|
Nach oben |
|
 |
Jonathan_Klein Living Legend

Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 29.08.2007, 14:15 Titel: |
|
|
DU musst einfach nur die richtigen Libs einbinden. In VC sind die Standardmäßig drinne.
Ich weiß die Namen nicht auswendig, sollten aber nur eine Hand voll sein. Falls du VC noch installiert hast, kannst du dort nachschauen, oder ein VC Projekt versuchen zu importieren, dann sollte er die libs auch übernehmen. Ansonsten findet man die libs auch im Internet, also die Namen, einfach ein wenig suchen. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
 |
Robrunner Mini JLI'ler
Alter: 32 Anmeldedatum: 08.07.2007 Beiträge: 44 Wohnort: Passau Medaillen: Keine
|
Verfasst am: 29.08.2007, 15:57 Titel: |
|
|
Danke schonmal. Aber was sind das für libs und wie kann ich sie zu meinem Projekt hinzufügen? (Wie gesagt VC++-Anfänger ) |
|
Nach oben |
|
 |
Christian Rousselle Site Admin

Alter: 48 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
Verfasst am: 29.08.2007, 16:03 Titel: |
|
|
Das sieht mir eher aus, also ob der Projekttyp nicht stimmt. Hast du ein Windows oder Consolenprojekt erstellt? |
|
Nach oben |
|
 |
Robrunner Mini JLI'ler
Alter: 32 Anmeldedatum: 08.07.2007 Beiträge: 44 Wohnort: Passau Medaillen: Keine
|
Verfasst am: 29.08.2007, 16:06 Titel: |
|
|
Leeres Projekt.
Es gibt:
CLR-Konsolenprojekt
Leeres CLR-proj.
win32-konsolenproj.
emptyproj.
klassenbibliothek
makefile-proj.
windows-form-proj
was soll ich da nehmen? |
|
Nach oben |
|
 |
DirectXer Dark JLI'ler

Anmeldedatum: 05.02.2005 Beiträge: 1201 Wohnort: Köln Medaillen: Keine
|
Verfasst am: 29.08.2007, 18:03 Titel: |
|
|
win32 konsolenprojekt, dann weiter, und da musst du statt console application windows application anklicken. und unten das häkchen bei empty projekt setzen.
Falls du die nötigen libs noch brauchst: - kernel32.lib
- user32.lib
- gdi32.lib
- winspool.lib
- comdlg32.lib
- advapi32.lib
- shell32.lib
- ole32.lib
- oleaut32.lib
- uuid.lib
Gruß DXer |
|
Nach oben |
|
 |
Otscho Super JLI'ler

Alter: 36 Anmeldedatum: 31.08.2006 Beiträge: 338 Wohnort: Gummibären-Gasse Medaillen: Keine
|
Verfasst am: 29.08.2007, 18:39 Titel: |
|
|
Ich musste da erst einmal die corewin_express.vsprops ändern damit man SDKs benutzen konnte. Steht aber alles in der Hilfe : ms-help://MS.VSExpressCC.v80/MS.NETFramework.v20.de/dv_vcmcpp/html/971463b4-7178-42cc-87b4-566295b7ae50.htm |
|
Nach oben |
|
 |
DirectXer Dark JLI'ler

Anmeldedatum: 05.02.2005 Beiträge: 1201 Wohnort: Köln Medaillen: Keine
|
Verfasst am: 29.08.2007, 19:05 Titel: |
|
|
Otscho hat Folgendes geschrieben: | Ich musste da erst einmal die corewin_express.vsprops ändern damit man SDKs benutzen konnte. Steht aber alles in der Hilfe : ms-help://MS.VSExpressCC.v80/MS.NETFramework.v20.de/dv_vcmcpp/html/971463b4-7178-42cc-87b4-566295b7ae50.htm |
jo klar, da änderst du ja auch die default-linked libs. Müsstest du eigtl bei der Installation gemacht haben, wenn nicht, hast du dann denn auch die anderen einstellungen geändert?
Gruß DXer |
|
Nach oben |
|
 |
Robrunner Mini JLI'ler
Alter: 32 Anmeldedatum: 08.07.2007 Beiträge: 44 Wohnort: Passau Medaillen: Keine
|
Verfasst am: 30.08.2007, 12:05 Titel: |
|
|
Das hat mich schon mal weitergebracht! Danke!
Jetzt habe ich folgendes Problem:
Fehlermeldungen:
Zitat: | c:\dokumente und einstellungen\robert\eigene dateien\visual studio 2005\projects\testenn\testenn\main.cpp(16) : error C2664: 'MessageBoxW': Konvertierung des Parameters 2 von 'const char [10]' in 'LPCWSTR' nicht möglich
Die Typen, auf die verwiesen wird, sind nicht verknüpft; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat. |
zu dem Code:
Code: | // Dieses Programm zeigt eine MessageBox an
// Headerdatei
#include <windows.h>
// Windows main-Funktion
int WINAPI WinMain(HINSTANCE hInstance, // Handle der Programminstanz
HINSTANCE hPrevInstance, // Handle der letzten Instanz
LPSTR lpCmdLine, // Kommandozeile
int nCmdShow) // Art wie das Fenster angezeigt werden soll
{
// eine MessageBox mit OK-Knopf anzeigen
MessageBox(0, "Nachricht", "Titel", MB_OK);
return 0;
} |
Wenn ich den reinterpret_cast verwende lässt sich die Anwendung starten, aber "Nachricht" und "Titel" werden in Kästchenschrift angezeigt.  |
|
Nach oben |
|
 |
Jonathan_Klein Living Legend

Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 30.08.2007, 12:38 Titel: |
|
|
Dein Projekt benutzt Unicode. Entweder gibts du alle Strings als L"ich bin ein Text" an oder du schaltest Unicode in den Projektoptionen aus. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
 |
Robrunner Mini JLI'ler
Alter: 32 Anmeldedatum: 08.07.2007 Beiträge: 44 Wohnort: Passau Medaillen: Keine
|
Verfasst am: 30.08.2007, 12:44 Titel: |
|
|
Danke jetzt gehts! |
|
Nach oben |
|
 |
Robrunner Mini JLI'ler
Alter: 32 Anmeldedatum: 08.07.2007 Beiträge: 44 Wohnort: Passau Medaillen: Keine
|
Verfasst am: 30.08.2007, 13:27 Titel: |
|
|
Noch eine Frage:
Wie kann ich einzelne libs in mein Projekt einbinden? |
|
Nach oben |
|
 |
Jonathan_Klein Living Legend

Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 30.08.2007, 13:54 Titel: |
|
|
In den Projektoptionen bei Linker eintragen. Zusätzlich natürlich immer noch die entsprechenden Header includieren. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
 |
Robrunner Mini JLI'ler
Alter: 32 Anmeldedatum: 08.07.2007 Beiträge: 44 Wohnort: Passau Medaillen: Keine
|
Verfasst am: 30.08.2007, 14:15 Titel: |
|
|
OK |
|
Nach oben |
|
 |
|