elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Código más simple si es posible
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Código más simple si es posible  (Leído 3,731 veces)
Meta


Desconectado Desconectado

Mensajes: 3.439



Ver Perfil WWW
Código más simple si es posible
« en: 5 Diciembre 2009, 23:10 pm »

Hola:

Teniendo este código:

Código
  1. private void button_b_Click(object sender, EventArgs e)
  2.        {
  3.            byte[] mBuffer = new byte[11];
  4.            mBuffer[0] = 0x48; //ASCII letra "H".
  5.            mBuffer[0] = 0x6F; //ASCII letra "o".
  6.            mBuffer[0] = 0x6C; //ASCII letra "l".
  7.            mBuffer[0] = 0x61; //ASCII letra "a".
  8.            mBuffer[0] = 0x20; //ASCII letra " ".
  9.            mBuffer[0] = 0x6D; //ASCII letra "m".
  10.            mBuffer[0] = 0x75; //ASCII letra "u".
  11.            mBuffer[0] = 0x6E; //ASCII letra "n".
  12.            mBuffer[0] = 0x64; //ASCII letra "d".
  13.            mBuffer[0] = 0x6F; //ASCII letra "o".
  14.            mBuffer[0] = 0x2E; //ASCII letra ".".
  15.            serialPort1.Write(mBuffer, 0, mBuffer.Length);
  16.        }

En este caso son 11 byte para enviar por puerto serie. Si fueran 50 sería una lista muy grande hacia abajo. ¿Hay alguna forma diferente hacerlo más simplificado con el mismo resultado?

Saludo.


En línea

raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Código más simple si es posible
« Respuesta #1 en: 5 Diciembre 2009, 23:24 pm »

Código
  1. private void button_b_Click(object sender, EventArgs e)
  2. {
  3.    mBuffer = System.Text.ASCIIEncoding.GetBytes("Hola mundo!");
  4.    serialPort1.Write(mBuffer, 0, mBuffer.Length);
  5. }

ahi lo tenes en una misera linea xD XD


En línea

Meta


Desconectado Desconectado

Mensajes: 3.439



Ver Perfil WWW
Re: Código más simple si es posible
« Respuesta #2 en: 6 Diciembre 2009, 02:25 am »

Gracias.

http://social.msdn.microsoft.com/Forums/es-ES/vcses/thread/416aa986-61fc-486d-a05d-1e224d965fea#a2fd8b4c-a092-44a3-be34-86084e57de2b

Saludo.
En línea

raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Código más simple si es posible
« Respuesta #3 en: 6 Diciembre 2009, 02:30 am »

otra cosa, en el foro preguntaste si podias enviar un archivo de texto, "hola.txt" por ejemplo, pero....la gran pregunta es como? o sea... puedes usar un TextReader (o StreamReader en caso de que me falle la memoria xD) y enviar el contenido con "ReadToEnd()".
Sino enviar el archivo? ...nose...con los comandos del puerto serie capaz,,, algun comando de "sea lo que sea" que este conectado al puerto serie....
En línea

Meta


Desconectado Desconectado

Mensajes: 3.439



Ver Perfil WWW
Re: Código más simple si es posible
« Respuesta #4 en: 6 Diciembre 2009, 03:41 am »

Código
  1. string strSource = null;
  2.            byte[] bteEndode = null;
  3.            FileStream myFileStream = new FileStream(@"C:\senpir.pdf", FileMode.OpenOrCreate, FileAccess.ReadWrite);
  4.  
  5.  
  6.           strSource = "asdf";
  7.           bteEndode = Encoding.ASCII.GetBytes(strSource);
  8.  
  9.  
  10.           myFileStream.Write(bteEndode, 0, bteEndode.Length);
  11.  
  12.           myFileStream.Close();

No funciona, no envía nada, aún así compila bien.
En línea

raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Código más simple si es posible
« Respuesta #5 en: 6 Diciembre 2009, 14:26 pm »

pero ahi lo que estas haciendo es guardar un archivo de texto, no enviarlo por el puerto serie.

Has asi (no estoy seguro de que funcione, lo estoy haciendo al vuelo)
Código
  1. byte[] strParaEnviar = null;
  2. FileStream archivoTexto = new OpenText(@"C:\senpir.txt");
  3.  
  4. bteEndode = Encoding.ASCII.GetBytes(archivoTexto.ReadToEnd());
  5.  
  6. myFileStream.Close();
  7. serialPort1.Write(bteEndode , 0, bteEndode .Length);
  8.  

y para guardar archivos desde el puerto serie debes hacer lo mismo pero a la inversa (Usar un CreateText para guardar, guardar el serialPort1.Read o Peek o lo que sea para leer bytes en un array de bytes para convertirlo con el ASCII.GetString() y lo escribes en el FileStream)
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
problema en simple codigo
Programación C/C++
elkiy 3 6,646 Último mensaje 26 Marzo 2013, 01:16 am
por avesudra
¿Es posible ver el código de las librerías propias de .NET?
.NET (C#, VB.NET, ASP)
DanteInfernum 3 1,819 Último mensaje 20 Junio 2013, 20:39 pm
por DanteInfernum
El código simple... no funciona.
Scripting
Tachikomaia 7 3,651 Último mensaje 2 Febrero 2021, 16:44 pm
por EdePC
duda codigo simple C
Programación C/C++
73P3 4 2,703 Último mensaje 23 Marzo 2021, 22:28 pm
por Eternal Idol
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines