Non è perfetto nè completo, ma penso che questo "Tutorial for
creating a threaded socket server and client application" sia un
buono spunto da cui partire:
http://dn.codegear.com/article/26276.
Ovviamente utilizza i componenti TClientSocket e TServerSocket
Borland.
HTH,
--
Stefano Frosio
www.esse-effe.com
Ma questo perchè? Comunque puoi provare a creare un progetto
dall'IDE e poi esportare il makefile per vedere eventuali
differenze. Secondo me nel caso specifico non stai semplicemente
includendo la VCL.
> Ho provato a creare un semplice main con
> un'istanza delle classi necessarie TClient/ServerSocket
> (tra parentesi passandogli NULL invece del puntatore
> all'oggetto che richiede)
Non è un problema, il parametro è l'Owner dell'oggetto e se ti
preoccupi tu di eseguire il delete puoi passare NULL
tranquillamente.
> se do un'occhiata al file di descrizione del
> progetto di esempio di una piccola chat nell'ambiente
> Borland, vedo una quantità di chiamate a files che non sono
> nemmeno .lib.
Qui non ho capito. Quale file di descrizione del progetto? Di
che chiamate a files stai parlando?
> Come posso sapere quali librerie devo chiamare "a mano" se
> la cosa si può fare?
Ripeto, secondo me qui stai utilizzando un componente VCL senza
includere la VCL stessa. Tieni presente che a discapito del
nome, la VCL non include solo componenti visuali.
> Se sono dozzine e dozzine di
> dipendenze cercherò di passare all'ambiente integrato
> anche se molto a malincuore,
Ma perchè a malincuore? Il debug come lo esegui senza IDE?
> Io devo solo sviluppare
> applicazioni console senza portarmi appresso gli ambienti
> grafici.
Cosa che puoi benissimo fare dall'IDE.
> Grazie comunque del tutorial, utilissimo!
Di nulla.
--
Stefano Frosio
www.esse-effe.com
Se devi scrivere codice portabile, allora lascia perdere la VCL, la classe
TThread ed i componenti offerti con Borland C++ Builder. Una valida
alternativa è usare i POSIX thread, che sono supportati su molte
piattaforme UNIX-like. Esiste il porting per Windows. Per i socket, sotto
gli *nix ovviamente userai i BSD, sotto Windows useari Winsock. Volendo
puoi wrappare tutto in classi adeguate.
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news segnala gli abusi ad ab...@newsland.it
Scusa, ma all'inizio hai detto di lavorare con BCB6 e... non usi
l'ambiente di sviluppo?
> La
> compilazione la faccio con un batch ogni linea del quale
> inizia con bcc32; il linker lo chiamo con un file di
> configurazione con l'elenco dei .obj
Più o meno quello che fa in automatico l'IDE...
Comunque ripeto, dall'IDE puoi esportare il makefile, poi puoi
anche compilare da riga di comando.
--
Stefano Frosio
www.esse-effe.com