Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Qualcomm Snapdragon X2 Elite: l'architettura del SoC per i notebook del 2026
Qualcomm Snapdragon X2 Elite: l'architettura del SoC per i notebook del 2026
In occasione del proprio Architecture Deep Dive 2025 Qualcomm ha mostrato in dettaglio l'architettura della propria prossima generazione di SoC destinati ai notebook Windows for ARM di prossima generazione. Snapdragon X2 Elite si candida, con sistemi in commercio nella prima metà del 2026, a portare nuove soluzioni nel mondo dei notebook sottili con grande autonomia
Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice
Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice
DJI Mini 5 Pro porta nella serie Mini il primo sensore CMOS da 1 pollice, unendo qualità d'immagine professionale alla portabilità estrema tipica di tutti i prodotti della famiglia. È un drone C0, quindi in un peso estremamente contenuto e che non richiede patentino, propone un gimbal rotabile a 225 gradi, rilevamento ostacoli anche notturno e autonomia fino a 36 minuti. Caratteristiche che rendono il nuovo drone un riferimento per creator e appassionati
ASUS Expertbook PM3: il notebook robusto per le aziende
ASUS Expertbook PM3: il notebook robusto per le aziende
Pensato per le necessità del pubblico d'azienda, ASUS Expertbook PM3 abbina uno chassis particolrmente robusto ad un pannello da 16 pollici di diagonale che avantaggia la produttività personale. Sotto la scocca troviamo un processore AMD Ryzen AI 7 350, che grazie alla certificazione Copilot+ PC permette di sfruttare al meglio l'accelerazione degli ambiti di intelligenza artificiale
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 08-01-2009, 14:39   #1
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
[c] programma download http

questo codice prima richiede una pagina dal mio sito, poi prova a scaricare un filmato di megavideo... altervista mi risponde perfettamente, mentre megavideo non si fa sentire dopo che mando il mio GET lui non risponde, sta muto ... sto impazzendo...

grazie mille per l'aiuto

Codice:
#include <stdio.h> 
#include <winsock.h> 
#include <stdlib.h>
#include <string.h>
bool scarica(char *fileremoto,char *filelocale,char *host,char modalita);

int main(int argc, char *argv[]){

    scarica("/forum2/","a.txt","www.mamo139.altervista.org",'1');
    scarica("/files/4ce85b10a5de4f47ea02d653021d0b42/","a.txt","www785.megavideo.com",'1');

    getchar();

}	
	
bool scarica(char *fileremoto,char *filelocale,char *host,char modalita){
	FILE *fo; 
	struct sockaddr_in sock; 		//la struttura per il socket
	struct hostent ip; 		        //la struttura per l'indirizzo 
	bool header = true;
	bool invio = false;
	char ultimo_carattere = '\0';

	char msg_response[] = "\0";
	char modo[4];
	int s;
		
    //messaggio per il server...
    char msg_enter[600] = "GET ";
	char protocollo[] = " HTTP/1.1\n"; 
	char protocollo2[] = "Host: "; 
	char protocollo3[] = "\n"; 
	
	char dettagli1[] = "Keep-Alive: 300\n";  
	char dettagli2[] = "Connection: keep-alive";  
	
   	strcat(msg_enter,fileremoto); 
   	strcat(msg_enter,protocollo); 
    strcat(msg_enter,protocollo2); 
   	strcat(msg_enter,host); 
    strcat(msg_enter,protocollo3); 
   	
   	//strcat(msg_enter,dettagli1); //header
	//strcat(msg_enter,dettagli2);

   	strcat(msg_enter,"\n\n"); 

	strcpy(modo,(modalita == '1' ? "w+b" : "w"));
    fo=fopen(filelocale,modo); //creazione file

    //********* connessione *********//
   	WORD wVersion; 
	WSADATA wsaData;
	wVersion = MAKEWORD(2, 2);
	WSAStartup(wVersion, &wsaData); //winsock startup
	s = socket(AF_INET, SOCK_STREAM, 0);
	
	ip = *(gethostbyname(host)); //indirizzo
	memcpy(&sock.sin_addr, ip.h_addr, ip.h_length); //copia l'indirizzo nella struttura socket
	sock.sin_family = AF_INET; 
	sock.sin_port = htons(80); //porta

	
	connect(s, (struct sockaddr *)&sock, sizeof(sock)); //associa al socket s la struttura socket
	if (!s) {
 		printf("Connessione non riuscita!!");
 		getchar();
 		return false;
 	}	
        
    printf("Inviato al server:\n\n%s\n", msg_enter); 
	send(s, msg_enter, strlen(msg_enter) + 1, 0); //invia dati
	printf("Download in corso...\n\n");
        
    while(recv(s, msg_response, 1, 0) != 0) { 
 
    	// se sono finiti gli header stampa nel file
        if (!header) fprintf(fo,"%c",msg_response[0]);  
        else printf("%c",msg_response[0]);
        
        // se l'ultimo carattere è uguale a \r, quello attuale è uguale a \n
   		// e prima c'era già stato un invio (invio==true), mette header=false
        if (ultimo_carattere == 13 && msg_response[0] == 10 && invio==true) header=false;
    	// ulteriore controllo sugli header
        ((ultimo_carattere == 13 && msg_response[0] == 10) || (ultimo_carattere==10 && invio))?invio=true:invio=false;  
        // memorizza l'ultimo carattere                                                                                       	
        ultimo_carattere = msg_response[0];

        //fprintf(fo,"%c",msg_response[0]); 
    }
    
	printf("File Ricevuto\n");
	
	//operazioni di chiusura!
	shutdown(s, 2);
	closesocket(s);
	WSACleanup();
	fclose(fo);
	return true;
}
__________________
http://mamo139.altervista.org
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 08-01-2009, 15:02   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Probabilmente necessita anche di altri header.
Guarda con WireShark la richiesta che viene inviata dal browser e cerca di duplicarla.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 08-01-2009, 15:16   #3
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
Quote:
Originariamente inviato da cionci Guarda i messaggi
Probabilmente necessita anche di altri header.
Guarda con WireShark la richiesta che viene inviata dal browser e cerca di duplicarla.
ho provato ad inviarlo con tutti gli header che invia firefox e niente...
ho provato ad inviare con firefox solo l'header che invio io, cioè Host e funziona!!!
__________________
http://mamo139.altervista.org
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 08-01-2009, 18:50   #4
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
Quote:
Originariamente inviato da cionci Guarda i messaggi
Probabilmente necessita anche di altri header.
Guarda con WireShark la richiesta che viene inviata dal browser e cerca di duplicarla.
grazie al tuo programma ho visto che il mio programma mandava un byte 00 finale in piu rispetto al browser...
ho modificato questa riga da
send(s, msg_enter, strlen(msg_enter) + 1, 0);
a
send(s, msg_enter, strlen(msg_enter), 0);

e ora funziona...

per così poco non andava

grazie
__________________
http://mamo139.altervista.org
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 08-01-2009, 19:29   #5
fero86
Senior Member
 
Iscritto dal: Oct 2006
Città: Roma
Messaggi: 1383
anziché lavorare coi sockets non facevi prima ad usare Windows Internet o WinHTTP?
fero86 è offline   Rispondi citando il messaggio o parte di esso
Old 08-01-2009, 20:06   #6
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
Quote:
Originariamente inviato da fero86 Guarda i messaggi
anziché lavorare coi sockets non facevi prima ad usare Windows Internet o WinHTTP?
non ne ero a conoscenza
__________________
http://mamo139.altervista.org
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 08-01-2009, 20:57   #7
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
Quote:
Originariamente inviato da fero86 Guarda i messaggi
anziché lavorare coi sockets non facevi prima ad usare Windows Internet o WinHTTP?

gia che ci sono lo chiedo: esiste un api che mi permette di prendere una pagina tramite un proxy (ovviamente l'indirizzo del proxy glielo passo io come parametro)??
__________________
http://mamo139.altervista.org
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 08-01-2009, 21:40   #8
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
Quote:
Originariamente inviato da mamo139 Guarda i messaggi
gia che ci sono lo chiedo: esiste un api che mi permette di prendere una pagina tramite un proxy (ovviamente l'indirizzo del proxy glielo passo io come parametro)??
In C non so quale libreria fornisca questa funzionalità (di sicuro ci sarà e qualcuno te la segnalerà), usando Java invece è molto semplice. L'utilizzo del C è un vincolo per te?
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2009, 00:29   #9
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
Quote:
Originariamente inviato da wisher Guarda i messaggi
In C non so quale libreria fornisca questa funzionalità (di sicuro ci sarà e qualcuno te la segnalerà), usando Java invece è molto semplice. L'utilizzo del C è un vincolo per te?
eh si... java non lo conosco

però ho guardato i pacchetti in transito quando imposto un proxy nel browser e non sembra molto complicato... adesso ci provo e vi dico come va.
grazie comunque
__________________
http://mamo139.altervista.org
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2009, 10:21   #10
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Potrebbe essere una buona occasione per studiare un nuovo linguaggio "moderno".
Come C#, Java o Python.

p.es. In C# tutto quello che hai scritto si riduce a 2 righe di codice.
E con il proxy 3.

Codice:
class Program
{
    static void Main(string[] args)
    {
        WebClient wc = new WebClient();
        //wc.Proxy = new WebProxy(....);
        wc.DownloadFile(@"http://www.hwupgrade.it/forum/showthread.php?p=25760450#post25760450", @"c:/QuestoThread.txt");            
    }
}
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2009, 10:33   #11
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
Potrebbe essere una buona occasione per studiare un nuovo linguaggio "moderno".
Come C#, Java o Python.

p.es. In C# tutto quello che hai scritto si riduce a 2 righe di codice.
E con il proxy 3.

Codice:
class Program
{
    static void Main(string[] args)
    {
        WebClient wc = new WebClient();
        //wc.Proxy = new WebProxy(....);
        wc.DownloadFile(@"http://www.hwupgrade.it/forum/showthread.php?p=25760450#post25760450", @"c:/QuestoThread.txt");            
    }
}
mhhh... tutto troppo bello e facile...
non è che ha qualche dipendenza particolare?? tipo librerie??
ad asempio il tuo programma funziona su un windows xp he sp1 basebase con nulla installato o ci vuole qualche pacchetto .NET o robe varie installate??
__________________
http://mamo139.altervista.org
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2009, 10:48   #12
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
ovviamente ci vuole il .NET framework installato.
Ma solo quello.

Questo per qualsiasi programma fatto in C# o VB.net (o C++.net), anche solo Hello World.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2009, 10:49   #13
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
Potrebbe essere una buona occasione per studiare un nuovo linguaggio "moderno".
Come C#, Java o Python.

p.es. In C# tutto quello che hai scritto si riduce a 2 righe di codice.
E con il proxy 3.

Codice:
class Program
{
    static void Main(string[] args)
    {
        WebClient wc = new WebClient();
        //wc.Proxy = new WebProxy(....);
        wc.DownloadFile(@"http://www.hwupgrade.it/forum/showthread.php?p=25760450#post25760450", @"c:/QuestoThread.txt");            
    }
}
Anche in Java si fa in modo simile. Per questo lo consigliavo.
Quote:
Originariamente inviato da mamo139 Guarda i messaggi
mhhh... tutto troppo bello e facile...
non è che ha qualche dipendenza particolare?? tipo librerie??
ad asempio il tuo programma funziona su un windows xp he sp1 basebase con nulla installato o ci vuole qualche pacchetto .NET o robe varie installate??
Per poterlo eseguire devi avere installato il framework .Net
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2009, 10:53   #14
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
ovviamente ci vuole il .NET framework installato.
Ma solo quello.

Questo per qualsiasi programma fatto in C# o VB.net (o C++.net), anche solo Hello World.
capito, grazie per le info
finche riesco a cavarmela con 20 minuti di smanettamenti continuo così... appena incontro uno scoglio insormontabile proverò a cambiare linguaggio...
però non facendo per lavoro ma solo per hobby alla fine mi diverto quasi a complicarmi la vita
__________________
http://mamo139.altervista.org
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2009, 11:01   #15
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da mamo139 Guarda i messaggi
però non facendo per lavoro ma solo per hobby alla fine mi diverto quasi a complicarmi la vita
Ah, ecco, mi sembrava
Allora buona goduria
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2009, 12:14   #16
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da mamo139 Guarda i messaggi
mhhh... tutto troppo bello e facile...
non è che ha qualche dipendenza particolare?? tipo librerie??
ad asempio il tuo programma funziona su un windows xp he sp1 basebase con nulla installato o ci vuole qualche pacchetto .NET o robe varie installate??
Anche in C con libcurl è molto semplice: http://curl.haxx.se/lxr/source/docs/examples/simple.c
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2009, 12:51   #17
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
dai sempre per rimanere a lavorare con le socket grezze vi chiedo questo:

quando provo a connettermi con:
connect(s, (struct sockaddr *)&sock, sizeof(sock));

come posso impostare un timeout, in modo che se il server non mi risponde il mio programma non sta piantato delle ore ad aspettare??
__________________
http://mamo139.altervista.org
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2009, 18:06   #18
~FullSyst3m~
Senior Member
 
L'Avatar di ~FullSyst3m~
 
Iscritto dal: Mar 2007
Messaggi: 4683
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
Potrebbe essere una buona occasione per studiare un nuovo linguaggio "moderno".
Come C#, Java o Python.

p.es. In C# tutto quello che hai scritto si riduce a 2 righe di codice.
E con il proxy 3.

Codice:
class Program
{
    static void Main(string[] args)
    {
        WebClient wc = new WebClient();
        //wc.Proxy = new WebProxy(....);
        wc.DownloadFile(@"http://www.hwupgrade.it/forum/showthread.php?p=25760450#post25760450", @"c:/QuestoThread.txt");            
    }
}
Python:

Codice:
import urllib
urllib.urlretrieve("http://www.hwupgrade.it/forum/showthread.php?p=25760450#post25760450", "C:\QuestoThread.txt")
__________________
Firma eliminata e avatar cambiato. Troppa gente giudica il monaco dall'abito.
~FullSyst3m~ è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2009, 18:43   #19
DanieleC88
Senior Member
 
L'Avatar di DanieleC88
 
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
Abbiamo un nuovo cdimauro tra di noi...
__________________

C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai!
DanieleC88 è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2009, 19:13   #20
~FullSyst3m~
Senior Member
 
L'Avatar di ~FullSyst3m~
 
Iscritto dal: Mar 2007
Messaggi: 4683
Quote:
Originariamente inviato da DanieleC88 Guarda i messaggi
Abbiamo un nuovo cdimauro tra di noi...

__________________
Firma eliminata e avatar cambiato. Troppa gente giudica il monaco dall'abito.
~FullSyst3m~ è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Qualcomm Snapdragon X2 Elite: l'architettura del SoC per i notebook del 2026 Qualcomm Snapdragon X2 Elite: l'architettura del...
Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice Recensione DJI Mini 5 Pro: il drone C0 ultra-leg...
ASUS Expertbook PM3: il notebook robusto per le aziende ASUS Expertbook PM3: il notebook robusto per le ...
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo Test ride con Gowow Ori: elettrico e off-road va...
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design   Recensione OnePlus 15: potenza da vendere e batt...
Col Black Friday partono anche gli scont...
I ribassi più pesanti del vero Bl...
Settimana del Black Friday: pioggia di s...
Speciale Blay Friday Dyson, sconti mai v...
I portatili più scontati del Blac...
WiFi al massimo: gli ASUS più pot...
Domotica in super sconto: tado° e Ne...
Black Friday Amazon: smartphone top a pr...
Black Friday 2025: tutte le migliori off...
Speciale Black Friday TV: 14 modelli sup...
Black Friday Amazon: le migliori offerte...
Tanti droni DJI scontati per il Black Fr...
Anche l'ISRO ha rilasciato alcune inform...
La NASA mostra le nuove immagini della c...
Superati 13.300 MT/s per DDR5: ad ASUS e...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 04:05.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v