07. maj 2006 - 22:39Der er
19 kommentarer og 1 løsning
Søger råd ang TCP overførsel
Jeg har lavet en Server (den der connecter) og en client (den der så acceptere connect), server er lavet i c++ og client i C#
Alt dette virker 100%, men jeg vil gerne kunne sende filer mellem de to, samtidigt med jeg kan sende diverse kommandoer.. De skal altså fungere så de kan sende og modtage filer samt udfører kommandoer på samme tid, er jeg så nød til at lave flere connections eller kan man gøre noget smart?
Først og fremmest vil jeg gerne kunne sende en fil fra min client til server (Socket baseret)
Jeg har en accept tråd der står og acceptere alt der kommer ind, derefter opretter den en recv tråd for hver der connecter, er problemet så ikke lidt løst?..
public class MainClass { private static void Process(MultiplexingSocket modified, int id) { byte[] b = new byte[6]; int total = 0; while(total < b.Length) { int n = modified.Receive(id, b); Console.Write(n + ":"); for(int i = 0; i < n; i++) { Console.Write(" " + b[i]); } Console.WriteLine(); total += n; } } public static void Main(string[] args) { Socket original = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); original.Bind(new IPEndPoint(IPAddress.Any, 50000)); original.Listen(1); MultiplexingSocket modified = new MultiplexingSocket(original.Accept()); Process(modified, 1); Process(modified, 2); Process(modified, 3); original.Close(); } }
Synes godt om
Slettet bruger
13. maj 2006 - 12:00#14
Det ser meget lovende ud, tak!.. altså, så jeg skal have det til at køre sm lytte tråd for hver server, og så kan ID fortælle om det er download, upload eller kommandoer der kommr ind ikke?.. men jeg jeg få både få down og upload til at virke på den måde?.. hvordan fortæller jeg om filen er færdig med at overfører fx? :)
Synes godt om
Slettet bruger
13. maj 2006 - 12:35#15
det var dog noget være sludder jeg skriver, håber du kan forstå :D
langt det nemmeste vil være at bruge flere connections
men ja du kan bruge dette her til at mixe flere ting som f.eks. kommandoer og overførsler i en stream
upload og download er i forvejen separeret men du kan seperare kommandoer og upload den ene vej og status og download den anden vej med denne her teknik
Synes godt om
Slettet bruger
15. maj 2006 - 08:26#17
med flere connections mener du vel også hver sin port?
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.