Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [C#]Connessione lan tra pc e server
Forum - C# / VB.NET - [C#]Connessione lan tra pc e server

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
lupodenis (Normal User)
Newbie


Messaggi: 7
Iscritto: 06/09/2013

Segnala al moderatore
Postato alle 9:46
Venerdì, 06/09/2013
Ciao a tutti, entro altri 6 giorni compreso oggi devo scrivere un programma in c# che si connetta ad un server PLC e trasmetta un file .reg al server. Sul server PLC gira windows CE 6.0, il server è connesso al pc via cavo ethernet, è la prima volta che faccio un programma di questo genere e non so proprio dove mettere mano, ho provato ad utilizzare il socket ma anche questo non lo conosco bene, ho provato con del codice banale per provare a connettermi al server ma mi restituisce l'errore: Impossibile stabilire la connessione. Rifiuto persistente del computer di destinazione 192.168.1.75:801 :d

Codice sorgente - presumibilmente C# / VB.NET

  1. static void Main(string[] args)
  2. {
  3.       Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
  4.       s.Connect("CAR_ACQ_105_103",801);
  5. }



P.S.   CAR_ACQ_105_103 è l'Host Name

Ultima modifica effettuata da lupodenis il 06/09/2013 alle 12:21
PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 12:58
Venerdì, 06/09/2013
http://csharp.net-informations.com/communications/csharp-s ...
cerca su google o guarda i programmi caricati in questo sito prima di postare domande come questa

PM Quote
Avatar
lupodenis (Normal User)
Newbie


Messaggi: 7
Iscritto: 06/09/2013

Segnala al moderatore
Postato alle 13:44
Venerdì, 06/09/2013
Ammetto di non aver guardato i programmi su questo sito, in quanto a google sono già 2 giorni che cerco senza trovare niente o meglio ho trovato che devo utilizzare la classe socket in seguito ho letto che è meglio utilizzare un protocollo che si basa sul socket poichè è più semplice, quindi mi sono cimentato alla ricerca della classe FTP e l'ho trovata ma il mio malgrado non funziona nemmeno questa. Comunque per il momento vorrei almeno riuscire a connettermi al server, sarebbe già un buon passo, dal collegamento che mi hai mandato con le mie conoscenze della lingua inglese, ho dedotto che per la comunicazione client-server deve essere presente un programma sia sul server che sul client, il mio problema è che io devo accedere al server con il solo programma del client e trasferire il mio file .reg. Questo è quello che ho capito io, però non ho ancora una buona conoscenza della lingua inglese (la sto ancora studiando). Sempre dal tuo link ho tratto queste righe di codice per effettuare la connessione con il server ma mi restituisce sempre lo stesso errore: Impossibile stabilire la connessione. Rifiuto persistente del computer di destinazione 192.168.1.75:801

Codice sorgente - presumibilmente C# / VB.NET

  1. static void Main(string[]
  2. {
  3.     TcpClient clientSocket = new TcpClient();
  4.     clientSocket.Connect("192.168.1.75", 801);
  5.     Console.ReadLine();
  6. }



Se dici che sul sito c'è qualcosa del genere ora cerco. Grazie per la risposta.

PM Quote
Avatar
lupodenis (Normal User)
Newbie


Messaggi: 7
Iscritto: 06/09/2013

Segnala al moderatore
Postato alle 13:53
Venerdì, 06/09/2013
Scusa dimenticavo che ho quest'altro codice del quale la seconda parte che riguarda la connessione il trasferimento del file al mio server, non funziona. L'eccezione che mi genera è: Impossibile effettuare la connessione al server remoto. Eppure la prima parte del codice effettua un ping senza alcun problema :-?


Codice sorgente - presumibilmente C#

  1. static void Main(string[]
  2. {
  3. //PING IP: 192.168.1.75
  4. Ping pingSender = new Ping();
  5. Console.Write("IP Address: ");
  6. string address = Console.ReadLine();
  7. Console.WriteLine("Esecuzione di Ping {0} con 32 byte di dati:", address);
  8. int ok=0;
  9.   for (int i = 0; i < 4; i++)
  10.   {
  11.         PingReply reply = pingSender.Send(address);
  12.           if (reply.Status == IPStatus.Success)
  13.           {
  14.               Console.WriteLine("Risposta da {0}: byte={1} durata={2}ms TTL={3}", reply.Address.ToString(),reply.Buffer.Length,reply.RoundtripTime,reply.Options.Ttl);
  15.                ok++;
  16.            }
  17.            else
  18.            {
  19.                Console.WriteLine(reply.Status);
  20.            }
  21.   }
  22.   if (ok == 0)
  23.   { Console.WriteLine("!!!IP non abilitato!!!"); }
  24. Console.ReadLine();
  25. //Connessione e trasferimento
  26. FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://192.168.1.75/");
  27. request.Method = WebRequestMethods.Ftp.UploadFile;
  28. StreamReader sourceStream = new StreamReader(@"C:\Users\Denis\Desktop\Hard Disk1.reg");
  29. byte[] fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd());
  30. sourceStream.Close();
  31. request.ContentLength = fileContents.Length;
  32. Stream requestStream = request.GetRequestStream();
  33. requestStream.Write(fileContents, 0, fileContents.Length);
  34. requestStream.Close();
  35. FtpWebResponse response = (FtpWebResponse)request.GetResponse();
  36. Console.WriteLine("Upload File Complete, status {0}", response.StatusDescription);
  37. response.Close();
  38. Console.ReadLine();
  39. }


PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 14:10
Venerdì, 06/09/2013
"devo accedere al server con il solo programma del client e trasferire il mio file" non è possibile. Dall' altra parte ci deve essere un programma che rimane in attesa della connessione, la accetta e legge ciò che con l' altro PC scrivi.

PM Quote
Avatar
lupodenis (Normal User)
Newbie


Messaggi: 7
Iscritto: 06/09/2013

Segnala al moderatore
Postato alle 14:21
Venerdì, 06/09/2013
A me mi è stato detto che sul PLC gira windows CE 6.0 e mi hanno detto che devo realizzare un programma che trasferisca i file (file che sono i setup di altri programmi) sul PLC nel quale in seguito verranno installati, di conseguenza io non posso installare programmi sul PLC. Ho pensato quindi di trasferire solamente un file .reg che mi modifica una chiave del registro di sistema in modo tale da poter accedere alle cartelle del PLC dal PC, il file .reg è pronto il problema ora è solamente come trasferirlo sul PLC. Sono nuovo in questo campo, me ne occupo soltanto da questa settimana, precedentemente non ho avuto nulla a che fare con le connessioni ai server e non le ho mai studiate, quest'anno devo fare il quinto  :-|

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 14:35
Venerdì, 06/09/2013
Credo che tu stia chiedendo l' impossibile, sarebbe troppo comodo che io potessi caricare file sul tuo PC senza che tu avvi niente, ti pare? Se usi i socket o l' FTP o un qualsiasi altro protocollo dall' altra parte deve esserci un programma che accetti la tua connessione e che legga i dati che gli invii.

PM Quote
Avatar
lupodenis (Normal User)
Newbie


Messaggi: 7
Iscritto: 06/09/2013

Segnala al moderatore
Postato alle 14:52
Venerdì, 06/09/2013
Ok grazie, lunedì chiedo se sul PLC è già installato un programma che legge i dati in input, e riferisco questo fatto, dopo ti farò sapere, grazie ancora.

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 15:07
Venerdì, 06/09/2013
Prego, in teoria tale programma non dovrebbe far parte di windows in quanto sarebbe una falla nella sicurezza enorme. Rimango in attesa di sviluppi futuri

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo