Anonymní profil Origin – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Origin – Programujte.comAnonymní profil Origin – Programujte.com

 

Příspěvky odeslané z IP adresy 78.102.118.–

Origin
C / C++ › Dotaz ohledně "getnameinfo()"
3. 9. 2013   #180985

#4 Radek Chalupa
No ono mi ani o cenu nejde, sw co používám si rád zaplatím, ale problém je v tom že ty zdrojáky jsou prostě novým visual studiem nekompatibiliní.. teď to zkouším s VS 2012, tak uvidíme, jen co se v tom trochu zorientuju a zjistím kde mám v nastavení nastavit cesty ke slozkám toho co to vyžaduje.. Jak jsem říkal před lety jsem to už zkoušel přenést do vs 2010 a nepovedlo se..

Nové (no.. nejnovější možné pro VS6 :D) windows SDK jsem už stahoval.. bez něj nefungovalo to "gethostbyaddr" a to byla pěkná makačka , na stránce MS to už ani nejde, všechny linky mně házeli jen na web nového visual studia a nakonec jsem ten soubor našel ke stažení na nějakým japonským fóru.. Ono to gethostbyaddr není špatné, ale je to moc pomalé :(

Origin
C / C++ › Dotaz ohledně "getnameinfo()"
1. 9. 2013   #180945

#2 Radek Chalupa
Díky za odpověď.. koukal jsem po tom, našel jsem Wspiapi.h. na netu, stáhl, přidal jsem ho do projektu a includnul, ale teď to zase hází něco jinýho :(

na těch rádcích co jsou označený není nic "závadnýho".. tak nevím.

WSPiApi.h(40) : error C2061: syntax error : identifier 'socklen_t'
WSPiApi.h(63) : error C2146: syntax error : missing ';' before identifier '__attribute__'
WSPiApi.h(63) : fatal error C1004: unexpected end of file found

a ten unexpected end of file je taky docela záhada...

asi začnu trochu experiementovat  novějším VS.. akorát nevím jak ty kódy udělané v tom starém "převést".. protože už jsem kdysi před lety zkoušel přejít na VS2010 a nepovedlo se.. prostě to v něm nešlo zkompilovat.

Origin
C / C++ › Dotaz ohledně "getnameinfo()"
1. 9. 2013   #180941

Ahoj, mám jen takový dotaz, nikde na to nemůžu najít odpověď... mám projekt (MFC aplikace) napsaný v C++ - Visual Studio 6 (SP6) a z nějakého důvodu nemůžu zkompilovat kód obsahující zavolání funkce "getnameinfo()"

dwRetval = getnameinfo((struct sockaddr *) &saGNI,sizeof (struct sockaddr),hostname,1025, servInfo, 32, NULL);

Se starým "gethostbyaddr()" nebyl problém

myhostent = gethostbyaddr((const char FAR *)&inaddr,sizeof(in_addr),AF_INET))

, tady jsem podle MSDN přidal 

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

a Project/Settings/Link - Ws2_32.lib do libraries...

kód se mi zkompiluje ale i tak mi CL hlásí že 

error C2065: 'getnameinfo' : undeclared identifier

Nevíte někdo co je špatně? jestli třeba tahle funkce není kompatibilní s touhle verzi VS nebo.. ja nevím..

Zkoušel jsem hledat ale beze štěstí, nikde se nikdo podobným problémem nezaobíral.. Nejsem úpně hloupej a vím že hláška uncleard identifier znamena ze tu funkci "getnameinfo" nemám nikde definovanou, ale ta by měla být součásti tech MS knihoven stejně jako "gethostbyaddr", která funguje bez problému (až na to jak je pomalá, protože používa BIOS lookup).. Někde na nějakým čínským fóru jsem se dočetl že getnameinfo je pro Windows CE, ale na MSDN je mezi minimálníma požadavkama WXP...

Tak nevím.. budu moc rád za jakoukoliv odpověď, popřípadě radu jestli neznáte jinou alternativu "gethostbyaddr", která nebude hostname hledat půl minuty..

Děkuji

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032021 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý