Avatar billede mickni33 Nybegynder
12. maj 2003 - 17:05 Der er 1 løsning

Socket og Dll

Borland Builder ISAPI

jeg har en dll fil som opretter en socket.
når jeg trykker <<klik>> på min webside kalder den dll filen som opretter en socket og modtager noget data.
Den data bliver så udskrevet ved hjælp af

Response->Contents=dataStreng;

Men jeg kan kun modtage den ene gang, trykker jeg klik igen står den og venter/kører og viser ikke de data som sendes over socket anden gang.
min socket klasse virker når jeg kører den som en almindelig applikation.

Er der et eller andet opjekt der skal nedlægges ?
eller kan man ikke have en socket connection i en dll(pga adresser og sådan noget)?

Eller er der nogen der har en anden ide hvad der kan være galt.

////initSocket();
void SocketClass::initSocket(){
lpHostEntry = gethostbyname(IP);
theSocket = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
saServer.sin_family = AF_INET;
saServer.sin_addr = *((LPIN_ADDR)*lpHostEntry-addr_list);
saServer.sin_port = htons(port);
nRet = connect(theSocket,Socket (LPSOCKADDR)&saServer,sizeof(struct sockaddr
}
//////////////////////////


//////recieveData()///////////////////////////////
char* SocketClass::recieveData(){
    nRet = recv(theSocket,buffer,20,0);     
    return buffer;
}
//////////////////////////////////////////////////

//////min dll onAction/////////////////////

socketObj.setPort(15000);
socketObj.setIP("10.0.1.116");
socketObj.initSocket();
strcpy(dataBuf,socketObj.recieveData());
str=dataBuf;
Response->Content=str;
Avatar billede mickni33 Nybegynder
12. maj 2003 - 17:38 #1
Yeeeees fandt selv ud af det
String str=recieveData();
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester