.dsy:it. Pages (3): « 1 [2] 3 »
Show 150 posts per page

.dsy:it. (http://www.dsy.it/forum/)
- Tech (http://www.dsy.it/forum/forumdisplay.php?forumid=189)
-- HELP! Problema inspiegabile... (http://www.dsy.it/forum/showthread.php?threadid=21179)


Posted by DarkGod on 07-09-2005 23:38:

Ma intendi il codice sorgente o proprio l'eseguibile?

Per l'eseguibile è un po' un casino... è fatto per Linux, e funziona con una versione modificata (e ricompilata) di VLC, che però funziona sotto Windows. Quindi bisogna usare Cygwin (che emula una shell di linux) per far funzionare anche il programmino sotto Windows... Inoltre per funzionare (e poterlo provare) sono necessari dei file video convertiti appositamente in un formato proprietario... :pensa:

__________________
Chiamatemi Darky ^_^

_____ -+- ANTINOMY -+- __________ -+- Inside Human Cruelty -+- _____


Posted by DarkGod on 08-09-2005 08:55:

Questa è la parte di codice in cui si blocca.

code:
......... ......... console("Main process ready"); while(1) { // waiting for clients and/or messages clientAddr = netGets(socket, buffer); // get a message from the network console("Incoming packet from %s:%d", inet_ntoa(clientAddr -> sin_addr), ntohs(clientAddr -> sin_port)); ......... ......... } // fine ciclo while

Si tratta di un server che invia un filmato in streaming verso un client che lo riproduce tramite VideoLan Player (VLC).
Questa è la parte in cui il server si mette in attesa di connessioni: viene stampato a video "Main process ready", poi entra nel ciclo "while" e non succede altro; "Incoming packet from..." non viene mai visualizzato, il programma si blocca sulla funzione netGets (che riporto qui sotto) come se non arrivassero connessioni, mentre invece VLC sta tentando di avviare una sessione di streaming, senza successo.

code:
CODICE DELLA FUNZIONE netGets() // get a null-terminated string from the network into buffer and return the sockaddr_in of the sender struct sockaddr_in * netGets(int s, char * buffer) { static struct sockaddr_in addr; int len = sizeof(struct sockaddr_in); int n; if ((n = recvfrom(s, buffer, PACKET_SIZE - 1, 0, (struct sockaddr *) &addr, &len)) < 0) return NULL; buffer[n] = '\0'; return &addr; }

Resta bloccato nella funzione recvfrom() senza rilevare connessioni...

__________________
Chiamatemi Darky ^_^

_____ -+- ANTINOMY -+- __________ -+- Inside Human Cruelty -+- _____


Posted by yeah on 08-09-2005 12:07:


Ma intendi il codice sorgente o proprio l'eseguibile?

Intendevo l'eseguibile che non funzionava, ma vedo che è un pò problematico :)


Il fatto che prima funzionava e ora no è sospetto... Ad ogni modo, tanto per eliminare una possibile fonte di problemi, visto che recvfrom() blocca se non ci sono dati, prova ad impostare il socket come nonbloccante (ora mi sfugge quale funzione chiamare) e vedi se il problema persiste

__________________
?


Posted by DarkGod on 08-09-2005 14:01:

Originally posted by yeah
Intendevo l'eseguibile che non funzionava, ma vedo che è un pò problematico :)


Il fatto che prima funzionava e ora no è sospetto... Ad ogni modo, tanto per eliminare una possibile fonte di problemi, visto che recvfrom() blocca se non ci sono dati, prova ad impostare il socket come nonbloccante (ora mi sfugge quale funzione chiamare) e vedi se il problema persiste


Sì, ho capito cosa intendi... però così facendo non resta più in attesa di connessioni, quindi in ogni caso non può funzionare....
Tu indendevi questo?

__________________
Chiamatemi Darky ^_^

_____ -+- ANTINOMY -+- __________ -+- Inside Human Cruelty -+- _____


Posted by yeah on 08-09-2005 21:24:


però così facendo non resta più in attesa di connessioni, quindi in ogni caso non può funzionare....
Tu indendevi questo?

Sì... però se il problema è un altro magari saltava fuori qualcosa. In verità non so che pensare ed era la prima cosa che mi è venuta in mente :)

Anche perchè che si rovini qualche libreria è strano, perchè tutti i programmi, di norma usano le DLL in Windows, quindi non dovrebbero funzionare neanche le altre applicazioni di rete.

Magari sono fuori strada, perchè non so CygWin come gestisca la cosa.

La storia delle voci di registro cancellate potrebbe centrare qualcosa... le altre primitive di rete danno problemi? La recv() funziona?

[edit] Hai la Service Pack 2?

__________________
?


Posted by DarkGod on 08-09-2005 21:36:

Originally posted by yeah
Sì... però se il problema è un altro magari saltava fuori qualcosa. In verità non so che pensare ed era la prima cosa che mi è venuta in mente :)

Anche perchè che si rovini qualche libreria è strano, perchè tutti i programmi, di norma usano le DLL in Windows, quindi non dovrebbero funzionare neanche le altre applicazioni di rete.

Magari sono fuori strada, perchè non so CygWin come gestisca la cosa.

La storia delle voci di registro cancellate potrebbe centrare qualcosa... le altre primitive di rete danno problemi? La recv() funziona?


Funziona quasi tutto, per lo meno tutti i programmi che ho usato recentemente, ad eccezione di:
1) un altro programmino che avevo fatto per windows in cui sembra non funzionare la funzione recv(). (Anche questo l'ho provato in Cygwin)
2) il programmino di Fastweb per visualizzare in tempo reale le mail che arrivano nella casella di posta, senza utilizzare browser o client di posta. Anche questo un mese fa funzionava, ma ora non funziona più... (l'ho reinstallato 3 volte!)

Sul PC di casa ovviamente funziona tutto perfettamente.
Solo che al momento della discussione della tesi non mi posso portare un camion col PC di casa...!!! :asd:

EDIT: I ogni caso farò al più presto altre prove, appena avrò tempo (sono tiratissimo coi tempi di consegna del progetto)
Ringrazio di nuovo per qualsiasi aiuto...

__________________
Chiamatemi Darky ^_^

_____ -+- ANTINOMY -+- __________ -+- Inside Human Cruelty -+- _____


Posted by DarkGod on 08-09-2005 21:39:

[edit] Hai la Service Pack 2? [/B][/QUOTE]

Urca... sai che non ricordo? O_O'
Ma credo di sì, ho installato sempre tutti gli aggiornamenti... (controllerò)

Magari è stato proprio un aggioramento di Windows a sputtanare tutto...

__________________
Chiamatemi Darky ^_^

_____ -+- ANTINOMY -+- __________ -+- Inside Human Cruelty -+- _____


Posted by DarkGod on 08-09-2005 22:38:

Originally posted by yeah
Hai la Service Pack 2? [/B]


Sì, ho controlla, ho installato il SP2 e molti altri aggiornamenti.

Ma mi sono accorto di un altro problemone: NON FUNZIONA PIU' WINDOWS UPDATE!!
Si collega al sito, inizia la ricerca degli aggiornamenti disponibili, ma si interrompe a metà, dicendo genericamente che si è verificato un errore. :?
Non so se può essere connesso agli altri problemi...

__________________
Chiamatemi Darky ^_^

_____ -+- ANTINOMY -+- __________ -+- Inside Human Cruelty -+- _____


Posted by yeah on 08-09-2005 23:21:

Vedi il codice di errore e cerca sulla Knowledge Base

Ti auguro di trovare qualcosa, perchè quando non andava a me ho risolto formattando :(

__________________
?


Posted by DarkGod on 09-09-2005 00:21:

Originally posted by yeah
Vedi il codice di errore e cerca sulla Knowledge Base


Ci ho avevo già provato... ma non c'era nessun codice di errore!
Dice solo che a causa di un errore l'applicazione viene interrotta. tutto qui. :sbonk:

Ti auguro di trovare qualcosa, perchè quando non andava a me ho risolto formattando :( [/B]

Già... è proprio quello che vorrei evitare!
Tra backup dei dati, formattazione e reinstallazione di tutto, ci pederei una vagonata di tempo... :#

__________________
Chiamatemi Darky ^_^

_____ -+- ANTINOMY -+- __________ -+- Inside Human Cruelty -+- _____


Posted by yeah on 09-09-2005 20:17:

La sentenza è che sei nella m...a :D
(ho finito le idee, mi spiace)

__________________
?


Posted by DarkGod on 10-09-2005 09:19:

Originally posted by yeah
La sentenza è che sei nella m...a :D
(ho finito le idee, mi spiace)


Sigh... purtroppo lo so.. :(
Ma se non fosse per la tesi non mi preoccuperei nemmeno così tanto.

E se provassi a installare un'altra copia di Win in una nuova partizione, giusto per far funzionare momentaneamente il mio programmino?
Si riesce a installare per esempio W2K se c'è già installato XP??

__________________
Chiamatemi Darky ^_^

_____ -+- ANTINOMY -+- __________ -+- Inside Human Cruelty -+- _____


Posted by yeah on 10-09-2005 15:05:


E se provassi a installare un'altra copia di Win in una nuova partizione, giusto per far funzionare momentaneamente il mio programmino?
Si riesce a installare per esempio W2K se c'è già installato XP??

Non penso possano esserci problemi (non credo Win2K faccia come Win98 che doveva scrivere comunque qualcosa su C:), tanto ne usi uno alla volta.

__________________
?


Posted by DarkGod on 11-09-2005 00:35:

Originally posted by yeah
Non penso possano esserci problemi (non credo Win2K faccia come Win98 che doveva scrivere comunque qualcosa su C:), tanto ne usi uno alla volta.


Proverò. Se fuzionasse così per il momento (leggi: per la tesi) sarebbe già abbastanza.
Ricordo che era quasi impossibile installare Win95 o o Win98 se avevi già una versione superiore installata...

__________________
Chiamatemi Darky ^_^

_____ -+- ANTINOMY -+- __________ -+- Inside Human Cruelty -+- _____


Posted by yeah on 11-09-2005 01:48:


Ricordo che era quasi impossibile installare Win95 o o Win98 se avevi già una versione superiore installata...

Ora dovrebbe essere diverso... Infatti tempo fa ho installato XP a 64bit e non ho avuto problemi dovuti alla presenza dell'altro XP su un'altra partizione :)

Buona fortuna

__________________
?


All times are GMT. The time now is 17:59. Pages (3): « 1 [2] 3 »
Show all 36 posts from this thread on one page

Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.