PROBLEME WINDOW/SOCKET

cs_zzzzzz Messages postés 408 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 18 décembre 2012 - 5 avril 2003 à 16:42
Bub325 Messages postés 41 Date d'inscription dimanche 9 février 2003 Statut Membre Dernière intervention 28 avril 2010 - 3 juin 2003 à 20:45
Voila le truc j'aimerai que quand on clique sur le bouton connecter sa connect un socket a n'importe kel ip c pas la question. mon applic window marche parfaitement et mon mini code en socket aussi(j'ai tester separemment pourtant quand j'incruste mon copde socket dans mon applic window ba ca me emt 40 erreurs mdr
voila le code en entier :

#include <windows.h>
#include "resource.h"
#include <winsock2.h>
#pragma comment(lib,"ws2_32.lib")

BOOL CALLBACK IpDialogFunc(HWND hdlg, UINT mssg, WPARAM wParam,LPARAM lParam)
{
switch(mssg) {
case WM_COMMAND:
switch(wParam) {
case IDC_BUTTON1:
case ID_FILE_EXIT:
PostMessage(hdlg, WM_COMMAND, IDCANCEL, 0);
return 0;
case 1234:
DialogBox(0,MAKEINTRESOURCE(IDD_DIALOG2), hdlg, IpDialogFunc);
return 0;
case exit_ :
MessageBox(0,"Creer par Creatix(ZzZzZz)","Createur ...",0);
PostQuitMessage(0);
return 0;
case about :
MessageBox(0,"Creer par Creatix(ZzZzZz)","Createur ...",0);
return 0;
case IDCANCEL :
EndDialog(hdlg, 0);
case IDENVOYER :
WSADATA wsadata;
WSAStartup(MAKEWORD(2,0),&wsadata);
SOCKET sock = socket(AF_INET,SOCK_STREAM,0);
SOCKADDR_IN sin;
sin.sin_addr.s_addr = inet_addr("80.0.0.1");
sin.sin_family = AF_INET;
sin.sin_port = htons(80);
connect(sock,(LPSOCKADDR)&sin,sizeof(sin));
closesocket(sock);
WSACleanup();
return 0;
}
return 0;
}
return 0;
}

int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{
DialogBox(0,MAKEINTRESOURCE(IDD_APP), 0, IpDialogFunc);
return 0;
}

si j'enleve
#include <winsock2.h>
#pragma comment(lib,"ws2_32.lib")

et

case IDENVOYER :
WSADATA wsadata;
WSAStartup(MAKEWORD(2,0),&wsadata);
SOCKET sock = socket(AF_INET,SOCK_STREAM,0);
SOCKADDR_IN sin;
sin.sin_addr.s_addr = inet_addr("80.0.0.1");
sin.sin_family = AF_INET;
sin.sin_port = htons(80);
connect(sock,(LPSOCKADDR)&sin,sizeof(sin));
closesocket(sock);
WSACleanup();
return 0;

ba mon dialog il marche parfaitement... :\ quelqun peut m'expliquer le pkoi ca marche pas sa chant que les erreurs sont :

C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(638): warning C4005: 'SOMAXCONN' : redéfinition de macro
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(109): error C2011: 'fd_set' : redéfinition du type 'struct'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(209): error C2011: 'hostent' : redéfinition du type 'struct'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(327): error C2011: 'in_addr' : redéfinition du type 'struct'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(625): error C2011: 'linger' : redéfinition du type 'struct'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(222): error C2011: 'netent' : redéfinition du type 'struct'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(241): error C2011: 'protoent' : redéfinition du type 'struct'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(229): error C2011: 'servent' : redéfinition du type 'struct'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(546): error C2011: 'sockaddr' : redéfinition du type 'struct'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(385): error C2011: 'sockaddr_in' : redéfinition du type 'struct'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(586): error C2011: 'sockproto' : redéfinition du type 'struct'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(153): error C2011: 'timeval' : redéfinition du type 'struct'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(395): error C2011: 'WSAData' : redéfinition du type 'struct'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1610): error C2375: 'accept' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1631): error C2375: 'bind' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1650): error C2375: 'closesocket' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1669): error C2375: 'connect' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2091): error C2375: 'gethostbyaddr' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2110): error C2375: 'gethostbyname' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2128): error C2375: 'gethostname' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1711): error C2375: 'getpeername' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2201): error C2375: 'getprotobyname' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2184): error C2375: 'getprotobynumber' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2166): error C2375: 'getservbyname' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2147): error C2375: 'getservbyport' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1732): error C2375: 'getsockname' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock.h(769) : voir la déclaration de 'getsockname'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1755): error C2375: 'getsockopt' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock.h(774) : voir la déclaration de 'getsockopt'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1776): error C2375: 'htonl' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock.h(781) : voir la déclaration de 'htonl'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1793): error C2375: 'htons' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock.h(783) : voir la déclaration de 'htons'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1810): error C2375: 'inet_addr' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1827): error C2375: 'inet_ntoa' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1690): error C2375: 'ioctlsocket' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1845): error C2375: 'listen' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1863): error C2375: 'ntohl' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock.h(793) : voir la déclaration de 'ntohl'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1880): error C2375: 'ntohs' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1900): error C2375: 'recv' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1925): error C2375: 'recvfrom' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1951): error C2375: 'select' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(1975): error C2375: 'send' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2000): error C2375: 'sendto' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2026): error C2375: 'setsockopt' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2048): error C2375: 'shutdown' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2068): error C2375: 'socket' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2493): error C2375: 'WSAAsyncGetHostByAddr' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2466): error C2375: 'WSAAsyncGetHostByName' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2416): error C2375: 'WSAAsyncGetProtoByName' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2441): error C2375: 'WSAAsyncGetProtoByNumber' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2363): error C2375: 'WSAAsyncGetServByName' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2390): error C2375: 'WSAAsyncGetServByPort' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2536): error C2375: 'WSAAsyncSelect' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2516): error C2375: 'WSACancelAsyncRequest' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2341): error C2375: 'WSACancelBlockingCall' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2239): error C2375: 'WSACleanup' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2273): error C2375: 'WSAGetLastError' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2290): error C2375: 'WSAIsBlocking' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2324): error C2375: 'WSASetBlockingHook' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2256): error C2375: 'WSASetLastError' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2221): error C2375: 'WSAStartup' : redéfinition ; liaison différente
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(2307): error C2375: 'WSAUnhookBlockingHook' : redéfinition ; liaison différente
c:\Documents and Settings\Julien\Desktop\Window_socket\main.cpp(34): error C2440: '=' : impossible de convertir de 'u_short (__stdcall *)(u_short)' en 'u_short'
c:\Documents and Settings\Julien\Desktop\Window_socket\main.cpp(34): error C2440: '=' : impossible de convertir de 'u_short (__stdcall *)(u_short)' en 'u_short'
c:\Documents and Settings\Julien\Desktop\Window_socket\main.cpp(32): error C2440: '=' : impossible de convertir de 'unsigned long (__stdcall *)(const char *)' en 'u_long'
c:\Documents and Settings\Julien\Desktop\Window_socket\main.cpp(32): error C2440: '=' : impossible de convertir de 'unsigned long (__stdcall *)(const char *)' en 'u_long'
c:\Documents and Settings\Julien\Desktop\Window_socket\main.cpp(30): error C2440: 'initialisation' : impossible de convertir de 'SOCKET (__stdcall *)(int,int,int)' en 'SOCKET'
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(512): warning C4005: 'AF_IPX' : redéfinition de macro
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(540): warning C4005: 'AF_MAX' : redéfinition de macro
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(672): warning C4005: 'FD_ACCEPT' : redéfinition de macro
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(678): warning C4005: 'FD_CLOSE' : redéfinition de macro
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(675): warning C4005: 'FD_CONNECT' : redéfinition de macro
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(669): warning C4005: 'FD_OOB' : redéfinition de macro
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(663): warning C4005: 'FD_READ' : redéfinition de macro
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(144): warning C4005: 'FD_SET' : redéfinition de macro
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(666): warning C4005: 'FD_WRITE' : redéfinition de macro
C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\Include\WinSock2.h(455): warning C4005: 'SO_DONTLINGER' : redéfinition de macro

m'enfin... byzare non ?

2 réponses

Bub325 Messages postés 41 Date d'inscription dimanche 9 février 2003 Statut Membre Dernière intervention 28 avril 2010
3 juin 2003 à 20:23
Et bien en faite ça doit venir du fichier winsock2.h, essaye avec winsock.h sa devrais marcher. Mais personnellement je te conseil le fichier bubsock.h : http://www.cppfrance.com/article.aspx?Val=1875

le code est déjà prés tapé et s'utilise très simplement tout en évitant les erreures de compilation.

Bonne chance,

Bub325
Le codeur pas comme tout le monde
8-)
0
Bub325 Messages postés 41 Date d'inscription dimanche 9 février 2003 Statut Membre Dernière intervention 28 avril 2010
3 juin 2003 à 20:45
a wi aussi charge:
#pragma comment(lib, "wsock32.lib")

au lieu de :
#pragma comment(lib,"ws2_32.lib")

du coup.

Bonne chance et tient nous au courant !!!

Bub325
Le codeur pas comme tout le monde
8-)
0
Rejoignez-nous