ich versuche ein Beispielprogramm für eine TCP/IP Verbindung nachzuvollziehen und bekomme eine Fehlermeldung mit der ich nichts anfangen kann. Ich hoffe es kann mir wer helfen!
Fehlermeldung1:
In file included from /usr/include/w32api/windows.h:72:0,
from /usr/include/w32api/winsock2.h:23,
from main.cpp:14:
main.cpp: In function 'int WinMain(HINSTANCE, HINSTANCE, LPSTR, int)':
main.cpp:348:46: error: 'IDD_WSSERVER' was not declared in this scope
DialogBox(hInstance, MAKEINTRESOURCE(IDD_WSSERVER), NULL, WSServerProc);
^
main.cpp:348:46: note: suggested alternative: 'PARSE_SERVER'
main.cpp: In function 'BOOL WSServerProc(HWND, UINT, LPARAM, WPARAM)':
Verwende ich die Alternative PARSE_SERVER kommt diese Fehlermeldung2:
In file included from /usr/include/w32api/windows.h:72:0,
from /usr/include/w32api/winsock2.h:23,
from main.cpp:14:
main.cpp: In function 'int WinMain(HINSTANCE, HINSTANCE, LPSTR, int)':
main.cpp:348:9: error: invalid conversion from 'BOOL (*)(HWND, UINT, LPARAM, WPARAM) {aka int (*)(HWND__*, unsigned int, long long int, long long unsigned int)}' to 'DLGPROC {aka long long int (*)(HWND__*, unsigned int, long long unsigned int, long long int)}' [-fpermissive]
DialogBox(hInstance,
^
/usr/include/w32api/winuser.h:2341:29: note: initializing argument 4 of 'INT_PTR DialogBoxParamA(HINSTANCE, LPCSTR, HWND, DLGPROC, LPARAM)'
WINUSERAPI INT_PTR WINAPI DialogBoxParamA(HINSTANCE hInstance,LPCSTR lpTemplateName,HWND hWndParent,DLGPROC
^~~~~~~~~~~~~~~
lpDialogFunc,LPARAM dwInitParam);
Code:
Code: Alles auswählen
/*
* Aufgabe: Dialogprozedure des Hauptdialogs
*
* Parameter: Standarddialogparameter
* Rückgabewert: nachrichtenabhängig
*/
BOOL WINAPI WSServerProc(HWND hDlg, UINT msg, LPARAM wP, WPARAM lP) {
switch(msg) {
...
}
/*
* Aufgabe: Programmstart
*
* Parameter: Standard
* Rückgabewert: 0
*/
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nShowCmd) {
WSADATA wsadata;
// Version 1.1 der Winsock-DLL wird benötigt
if(WSAStartup(MAKEWORD(1, 1), &wsadata) == 0) {
DialogBox(hInstance,
MAKEINTRESOURCE([b]IDD_WSSERVER[/b]), // oder [b]PARSE_SERVER[/b]
NULL,
WSServerProc);
WSACleanup(); //Winsock-DLL aufräumen
}
else MessageBox(0,
"Fehler beim Initialisieren von WINSOCK",
"WSSServer.EXE",
0);
return 0;
}