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

 

 


Tema destacado: Introducción a Git (Primera Parte)


  Mostrar Temas
Páginas: 1 ... 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 [58] 59 60 61 62 63 64 65 66
571  Programación / .NET (C#, VB.NET, ASP) / cifrar tramas de bytes en: 20 Mayo 2009, 21:02 pm
Buenas:
He hecho un programa con Visual C# Express 2008. Puedo enviar tramas desde Internet.
Cliente: Introduces un buuton1 y un textBox1.
Código
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using System.IO;
  10. using System.Net;
  11. using System.Net.Sockets;
  12.  
  13. namespace Client
  14. {
  15.    public partial class Form1 : Form
  16.    {
  17.        public Form1()
  18.        {
  19.            InitializeComponent();
  20.        }
  21.  
  22.        private void button1_Click(object sender, EventArgs e)
  23.        {
  24.            UdpClient udpClient = new UdpClient();
  25.            udpClient.Connect(textBox1.Text, 60000);
  26.            Byte[] sendBytes = Encoding.ASCII.GetBytes("Hola a todo el mundo...");
  27.            udpClient.Send(sendBytes, sendBytes.Length);
  28.        }
  29.    }
  30. }
  31.  

Server:
Introduces un listBox1.
Código
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using System.Threading;
  10. using System.Net.Sockets;
  11. using System.Net;
  12.  
  13. namespace Server
  14. {
  15.    public partial class Form1 : Form
  16.    {
  17.        public Form1()
  18.        {
  19.            InitializeComponent();
  20.        }
  21.  
  22.        public void serverThread()
  23.        {
  24.            UdpClient udpClient = new UdpClient(60000);
  25.            while(true)
  26.            {
  27.                IPEndPoint RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);
  28.                Byte[] receiveBytes = udpClient.Receive(ref RemoteIpEndPoint);
  29.                string returnData = Encoding.ASCII.GetString(receiveBytes);
  30.                 listBox1.Items.Add(RemoteIpEndPoint.Address.ToString() +
  31.                    ":" + returnData.ToString());
  32.            }
  33.        }
  34.  
  35.        private void Form1_Load(object sender, EventArgs e)
  36.        {
  37.            Thread thdUDPServer = new Thread(new
  38.            ThreadStart(serverThread));
  39.            thdUDPServer.Start();
  40.        }
  41.    }
  42. }
  43.  

Mi idea es que necesito encriptrar estas tramas que se envía a través  de Internet para que los sniffer (husmeadores) no cojan libremente los datos enviados. Los datos puedes ser textos de un chat.

He encontrado algo aquí, pero no entiendo nada.
http://msdn.microsoft.com/es-es/library/system.security.cryptography.des.aspx

Código
  1. private static void EncryptData(String inName, String outName, byte[] desKey, byte[] desIV)
  2. {    
  3.     //Create the file streams to handle the input and output files.
  4.     FileStream fin = new FileStream(inName, FileMode.Open, FileAccess.Read);
  5.     FileStream fout = new FileStream(outName, FileMode.OpenOrCreate, FileAccess.Write);
  6.     fout.SetLength(0);
  7.  
  8.     //Create variables to help with read and write.
  9.     byte[] bin = new byte[100]; //This is intermediate storage for the encryption.
  10.     long rdlen = 0;              //This is the total number of bytes written.
  11.     long totlen = fin.Length;    //This is the total length of the input file.
  12.     int len;                     //This is the number of bytes to be written at a time.
  13.  
  14.     DES des = new DESCryptoServiceProvider();          
  15.     CryptoStream encStream = new CryptoStream(fout, des.CreateEncryptor(desKey, desIV), CryptoStreamMode.Write);
  16.  
  17.     Console.WriteLine("Encrypting...");
  18.  
  19.     //Read from the input file, then encrypt and write to the output file.
  20.     while(rdlen < totlen)
  21.     {
  22.         len = fin.Read(bin, 0, 100);
  23.         encStream.Write(bin, 0, len);
  24.         rdlen = rdlen + len;
  25.         Console.WriteLine("{0} bytes processed", rdlen);
  26.     }
  27.  
  28.     encStream.Close();  
  29.     fout.Close();
  30.     fin.Close();                  
  31. }
  32.  

http://msdn.microsoft.com/es-es/library/system.security.cryptography.aspx
572  Programación / .NET (C#, VB.NET, ASP) / Abrir y cerrar bandeja. en: 17 Mayo 2009, 19:44 pm
Hello.

Trabajo con el Visual C# Express 2008. ¿Se puede hacer con un Firm1 y dos button abrir y cerrar la bandeja de un lector de disco del PC?

Si es posible. ¿Cómo se hace?

Adiós.
573  Programación / .NET (C#, VB.NET, ASP) / Interfaz saltos de líneas para PIC en: 3 Mayo 2009, 18:50 pm
Buenas a todos y todas:

Tengo la idea que tengo medio hecho y está en experimentación de hacer un programa para poder generar los códigos necesarios rápidamente. Quizás sea una tontería y pérdida de tiempo, al menos sólo para un PIC. Lo haré con el PIC16F84A, más adelante lo haré para 16F876A/877A/886/887/88/628A y también en ASM para los 18F2550/4550 (también se puede para C).

Generaría la tabla de la verdad al menos que estoy haciendo es del 3 últimos bit, ya haré de 16 combinaciones.

Se generaría un archivo.asm o txt como se muestra abajo.
Código:
; ZONA DE DATOS **********************************************************************

LIST P=16F84A
INCLUDE <P16F84A.INC>
__CONFIG _CP_OFF &  _WDT_OFF & _PWRTE_ON & _XT_OSC

; ZONA DE CÓDIGOS ********************************************************************

ORG 0 ; El programa comienza en la dirección 0.
Inicio
clrf PORTB ; Debe estar a cero cuando el puerto se configure como salida.
bsf STATUS,RP0 ; Acceso al Banco 1.
clrf TRISB ; Las líneas del Puerto B se configuran como salida.
movlw b'00011111' ; Las 5 líneas del Puerto A se configuran como entrada.
movwf TRISA
bcf STATUS,RP0 ; Acceso al Banco 0.
Principal
movf PORTA,W ; Lee los sensores.
andlw b'00000111' ; Máscara para quedarse con el valor de los sensores.
addwf PCL,F ; Salta a la configuración adecuada.
goto Configuracion0
goto Configuracion1
goto Configuracion2
goto Configuracion3
goto Configuracion4
goto Configuracion5
goto Configuracion6
goto Configuracion7
Configuracion0
movlw b'01100001' ; Estado "Vacio" (configuración 0).
goto ActivaSalida
Configuracion1
movlw b'01100010' ; Estado "Llenándose" (configuración 1).
goto ActivaSalida
Configuracion2
movlw b'00010000' ; Estado "Alarma" (configuración 2).
goto ActivaSalida
Configuracion3
movlw b'00100100' ; Estado "Lleno" (configuración 3).
goto ActivaSalida
Configuracion4
movlw b'00010000' ; Estado "Alarma" (configuración 4).
goto ActivaSalida
Configuracion5
movlw b'00010000' ; Estado "Alarma" (configuración 5).
goto ActivaSalida
Configuracion6
movlw b'00010000' ; Estado "Alarma" (configuración 6).
goto ActivaSalida
Configuracion7
movlw b'00001000' ; Estado "Rebose" (configuración 7).
ActivaSalida
movwf PORTB ; Visualiza por el puerto de salida.
goto Principal

END

El programa aún no es funcional del todo, estoy con pruebas y diseño de la Interfaz primero, para luego programarlo al final.



Abajo se puede descargar el programa hecho, pero aún no es funcional, sólo cositas de diseño.
Saludo.
574  Informática / Electrónica / Pasar de 16F84A a 16F627 en: 10 Abril 2009, 12:14 pm
Hola:

Me gustaría pasar del PIC16F84A al 16F627 (no 16F628A porque no lo tienen en el local).
¿Qué configuraciones debo usar para que me funcione el mismo circuito y con oscilador interno?


Código
  1. ; Repetición del ejercicio Indexado_02.asm sobre la forma de implementar una tabla de
  2. ; verdad, pero resuelto con más eficacia.
  3. ;
  4. ; ZONA DE DATOS **********************************************************************
  5.  
  6. LIST P=16F84A
  7. INCLUDE <P16F84A.INC>
  8. __CONFIG _CP_OFF &  _WDT_OFF & _PWRTE_ON & _XT_OSC
  9.  
  10. ; ZONA DE CÓDIGOS ********************************************************************
  11.  
  12. ORG 0 ; El programa comienza en la dirección 0.
  13. Inicio
  14. bsf STATUS,RP0 ; Acceso al Banco 1.
  15. clrf TRISB ; Las líneas del Puerto B se configuran como salida.
  16. movlw b'00011111' ; Las 5 líneas del Puerto A se configuran como entrada.
  17. movwf TRISA
  18. bcf STATUS,RP0 ; Acceso al Banco 0.
  19. Principal
  20. bcf STATUS,C ; Lee los sensores y los multiplica por 2
  21. rlf PORTA,W ; añadiendo un "0" y desplazando hacia la izquierda.
  22. andlw b'00001111' ; Se queda con los cuatro bits más bajos
  23. addwf PCL,F ; Salta a la configuración adecuada.
  24. movlw b'01100001' ; Estado "Vacio" (configuración 0).
  25. goto ActivaSalida
  26. movlw b'01100010' ; Estado "Llenándose" (configuración 1).
  27. goto ActivaSalida
  28. movlw b'00010000' ; Estado "Alarma" (configuración 2).
  29. goto ActivaSalida
  30. movlw b'00100100' ; Estado "Lleno" (configuración 3).
  31. goto ActivaSalida
  32. movlw b'00010000' ; Estado "Alarma" (configuración 4).
  33. goto ActivaSalida
  34. movlw b'00010000' ; Estado "Alarma" (configuración 5).
  35. goto ActivaSalida
  36. movlw b'00010000' ; Estado "Alarma" (configuración 6).
  37. goto ActivaSalida
  38. movlw b'00001000' ; Estado "Rebose" (configuración 7).
  39. ActivaSalida
  40. movwf PORTB ; Visualiza por el puerto de salida.
  41. goto Principal
  42.  
  43. END
   


Un cordial saludo.
575  Programación / .NET (C#, VB.NET, ASP) / Cliente -Servidor. en: 22 Marzo 2009, 09:12 am
Hola:

Tengo hecho algo de Cliente-Servidor muy básico. Me gustaría saber que si el PC1 se conecta al PC2, envía al PC1 un mensaje que advierta si su conexión ha sido un éxito y que se mantenga en línea como el messenger. Cuando PC1 cierra la conexión mediante un buttón o botón, el PC2 muestra un mensaje indicando su conexión.

NOTA: Los botones de Control,por ahora no hablamos de ellos y aún no es funcional.

DESCARGAR


PC1-Cliente:
Código:
using System; 
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Net;
using System.Net.Sockets;
 
namespace PC1_Cliente
{
    public partial class Form_principal : Form
    {
        public Form_principal()
        {
            InitializeComponent();
        }
 
        private void button_Conectar_Click(object sender, EventArgs e)
        {
            UdpClient udpClient = new UdpClient();
            udpClient.Connect(textBox1.Text, 8888);
            Byte[] sendBytes = Encoding.ASCII.GetBytes(textBox2.Text);
            udpClient.Send(sendBytes, sendBytes.Length);
        }
    }
}

PC2-Servidor:
Código:
using System; 
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.IO.Ports;
using System.Net;
using System.Net.Sockets;
using System.Threading;
 
namespace PC2_Servidor
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            if (!serialPort1.IsOpen)
            {
                try
                {
                    serialPort1.Open();
                }
                catch (System.Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }
            }
        }
        public void serverThread()
        {
        UdpClient udpClient = new UdpClient(8888);
        while(true)
        {
        IPEndPoint RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);
        Byte[] receiveBytes = udpClient.Receive(ref RemoteIpEndPoint);
        string returnData = Encoding.ASCII.GetString(receiveBytes);
        lbConnections.Items.Add(RemoteIpEndPoint.Address.ToString() + ":" + returnData.ToString() );
        }
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            Thread thdUDPServer = new Thread(new
            ThreadStart(serverThread));
            thdUDPServer.Start();
        }
    }
}

Un cordial saludo.
576  Programación / .NET (C#, VB.NET, ASP) / Controlar PC desde otro PC en: 17 Marzo 2009, 22:38 pm
Hola:

Tengo la idea de hacer dos programas en cada PC controlado mediante Internet y puerto serie.

1- EL PC1 hago la Interfaz de control para controlar por vía Internet mediante button (botones) el otro programa del PC que ahí está el PIC16F84A.

2- El PC2 tiene otro programa o Interfaz que puede controlar el puerto serie donde está conectado el PIC. Se controla como puedes ver en este vídeo...

http://www.youtube.com/watch?v=niWAbQ-HVnY

...con la diferencia que yo lo quiero hacer mediante control por IP y que ustedes sean capaces de controlarlo desde sus casas mientras ves como se mueve una webcam por poner un ejemplo.

Ahora la pregunta. ¿Con Visual C# se puede hacer esto?

Aquí hay un ejemplo directo de una Interfaz básico con su código fuente, conectado al puerto serie. En realidad esta Interfaz no tiene que ir con el puerto serie, sólo la conexión a Internet mediante una IP que debemos conocer para poder llegar al PC2 que si se puede conectar al puerto serie.

Las órdenes a enviar al PC2 para el puerto serie es algo parecido a esto.

Código
  1.            byte[] mBuffer = new byte[1];  
  2.            mBuffer[0] = 0x20; //ASCII letra "Espacio".  
  3.            serialPort1.Write(mBuffer, 0, mBuffer.Length);






Necesito información y cómo se programa. Poco a poco lo intentaré, al menos como se envía esta trama de bytes en hex para que lo entienda el PC2 desde el PC1. De momento sigo buscando en www.google.com

¿Sugerencias?

Un cordial saludo.
577  Informática / Electrónica / Manejos de pulsadores con PIC en: 16 Marzo 2009, 18:29 pm
Hola:

Con un PIC16F84A-04 en ASM, quiero lograr programar un botón que haga cosas diferentes dependiendo de cómo lo pulses.

Puedes elegir para tu ejemplo los puertos In/Out que desees, las salidas es sólo hay 3  diodos Led. Led_Verde, Led Ambar y otro Led_Rojo.

1º)  Si el pulsador (P en adelante) no se está pulsando, ningún Led se enciende, en cambio de que se pulse se enciende el Led Rojo.

2º) Si dejas pulsado el P durante 3 segundos, se apaga el Led Rojo y acto seguido se enciende Led Verde, al final cuando dejes de pulsar el P, se quedará encendido el Led Verde.

3º) Si dejas pulsado el P durante 10 segundos, se apagan todos los Led, acto seguido parpadea el Led Ambar. 200ms y 200ms, ese el el tiempo de parpadeo del Led Ambar y se queda ahí.

4º) Después del punto 3º), en la EEPROM se almacena un valor que identifique si se pierde la energía, pila o batería al iniciar el PIC de nuevo, siga el Led Ambar parpadeando.

Un cordial saludo.
578  Programación / .NET (C#, VB.NET, ASP) / Manejar ComboBox en: 15 Marzo 2009, 16:04 pm
Hola:

En un Form1, incluí el serialPort1 y un comboBox1. El serialPort1 tiene el serialPort1.PortName = "COM1"; , es decir, que tiene el puerto COM1 predeterminado.

En el comboBox, puse en Items dos valores llamadas COM1 y COM2. Al ejecutar el programa aparece el comboBox aparece en blanco así que debo seleccionar uno de los dos que aparece, el COM1 o el COM2.

1) ¿Cómo hago que al ejecutar la aplicación ya se ve el comboBox con el COM1 seleccionado y no en blanco?

Otra cosa que quiero hacer es, que en el comboBox, sea capaz de cambiar de COM1 a COM2 el componente serialPort1 para seleccionar el puerto 1 o 2 que desee.

2) ¿Cuál es el código necesario?

Un cordial saludo.
579  Informática / Electrónica / Comandos AT para Nokia N70 en: 14 Marzo 2009, 18:22 pm
Hola:

Tengo un Nokión N70 para su época, el cable es de USB. Me gustaría saber si hay alguna manera de manejar el Movil con Comandos AT y probar. Los de antes funcionan con el puerto serie y el HyperTerminal de Windows, ahora no tengo idea.

Si saben algo de información sobre esto mediante USB o con un microcontrolador, mejor que mejor. En www.google.com hay proyectos pero no enseñan mucho como se hace.

Un cordial saludo.
580  Programación / Programación Visual Basic / Conseguir Visual Basic 6 en: 13 Marzo 2009, 22:43 pm
Hola:

Me gustaría encontrar el Visual Basic 6, el .net lo puedo bajar aquí.

Quiero hacer este manual que está hecho en .net a VB6.
http://www.abcdatos.com/tutoriales/tutorial/v12.html

Un cordial saludo.
Páginas: 1 ... 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 [58] 59 60 61 62 63 64 65 66
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines