• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Nie mogę zainicjalizować <winsock.h>

Object Storage Arubacloud
0 głosów
185 wizyt
pytanie zadane 22 listopada 2020 w C i C++ przez tonn204 Mądrala (7,440 p.)

Próbuję zainicjalizować <winsock.h> nie wiem dlaczego, kompilator wywala mi błąd i mówi, że nie zna funkcji _WSAStartup, kiedy ja używam WSAStartup (bez tej podłogi na początku). Dlaczego tak jest? I jak mam to naprawić? 

/*
	Initialise Winsock
*/

#include<stdio.h>
#include<winsock2.h>

#pragma comment(lib,"ws2_32.lib") //Winsock Library

int main(int argc , char *argv[])
{
	WSADATA wsa;
	
	printf("\nInitialising Winsock...");
	if (WSAStartup(MAKEWORD(2,2),&wsa) != 0)
	{
		printf("Failed. Error Code : %d",WSAGetLastError());
		return 1;
	}
	
	printf("Initialised.");

	return 0;
}

Błąd kompilatora:

||=== Build: Release in basicSocket (compiler: GNU GCC Compiler) ===|
D:\Networking in C\basicSocket\main.c|5|warning: ignoring #pragma comment  [-Wunknown-pragmas]|
D:\Networking in C\basicSocket\main.c||In function 'main':|
D:\Networking in C\basicSocket\main.c|11|warning: implicit declaration of function '_WSAStartup'; did you mean 'WSAStartup'? [-Wimplicit-function-declaration]|
obj\Release\main.o:main.c:(.text.startup+0x17)||undefined reference to `_WSAStartup'|
||error: ld returned 1 exit status|
||=== Build failed: 2 error(s), 2 warning(s) (0 minute(s), 0 second(s)) ===|

I tutaj jeszcze ostrzeżenie:

||=== Build: Release in basicSocket (compiler: GNU GCC Compiler) ===|
D:\Networking in C\basicSocket\main.c|5|warning: ignoring #pragma comment  [-Wunknown-pragmas]|
D:\Networking in C\basicSocket\main.c||In function 'main':|
D:\Networking in C\basicSocket\main.c|11|warning: implicit declaration of function '_WSAStartup'; did you mean 'WSAStartup'? [-Wimplicit-function-declaration]|
obj\Release\main.o:main.c:(.text.startup+0x17)||undefined reference to `_WSAStartup'|
||error: ld returned 1 exit status|
||=== Build failed: 2 error(s), 2 warning(s) (0 minute(s), 0 second(s)) ===|

 

komentarz 22 listopada 2020 przez tangarr Mędrzec (154,780 p.)
Na jakim systemie to budujesz?
komentarz 22 listopada 2020 przez tonn204 Mądrala (7,440 p.)
Windows 10

1 odpowiedź

+1 głos
odpowiedź 22 listopada 2020 przez j23 Mędrzec (194,920 p.)
wybrane 22 listopada 2020 przez tonn204
 
Najlepsza

#pragma comment(lib,"ws2_32.lib") //Winsock Library

To nie przejdzie w MinGW, musisz dodać bibliotekę w typowy sposób w opcjach projektu (i nie ws2_32.lib tylko ws2_32.a lub po prostu ws2_32).

komentarz 22 listopada 2020 przez tonn204 Mądrala (7,440 p.)
Dzięki działa poprawnie

Podobne pytania

0 głosów
1 odpowiedź 122 wizyt
pytanie zadane 6 czerwca 2020 w C i C++ przez tonn204 Mądrala (7,440 p.)
0 głosów
0 odpowiedzi 124 wizyt
pytanie zadane 30 maja 2020 w Python przez tonn204 Mądrala (7,440 p.)
0 głosów
1 odpowiedź 245 wizyt
pytanie zadane 29 maja 2020 w Python przez tonn204 Mądrala (7,440 p.)

92,555 zapytań

141,403 odpowiedzi

319,557 komentarzy

61,940 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...