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


Tema destacado: Como proteger una cartera - billetera de Bitcoin


  Mostrar Mensajes
Páginas: 1 ... 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 [64] 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 ... 261
631  Programación / .NET (C#, VB.NET, ASP) / Re: Cerrar y abrir la bandeja del lector con el botón manualmente, y que lo sepa C# en: 23 Marzo 2017, 13:52 pm
El Management está incuido, el using Types; nada de nada.
632  Programación / .NET (C#, VB.NET, ASP) / Re: Cerrar y abrir la bandeja del lector con el botón manualmente, y que lo sepa C# en: 23 Marzo 2017, 10:23 am
Hola:

He intentado hacer el último código en C# y como que no.


Parece que ese código es muy antiguo y no hay manera de hecharlo a andar.

Gracias de todas formas. Y mira que lo he intentado.
633  Programación / .NET (C#, VB.NET, ASP) / Re: ¿Cómo se llama una función en VB .net? en: 23 Marzo 2017, 09:42 am
Hola:

Parece que va cogiendo forma, aún así hay dos errores que no me deja en paz.

Código
  1. AddHandler Puerto_serie.DataReceived, AddressOf Me.Puerto_serie_DataReceived

Concretamente el Me.
https://msdn.microsoft.com/es-es/library/20fy88e0.aspx

Citar
Gravedad   Código   Descripción   Proyecto   Archivo   Línea   Estado suprimido
Error   BC30043   'Me' solo es válido en un método de instancia.   Recibir_archivo_desde_Arduino_consola_VB   C:\Users\Usuario\documents\visual studio 2017\Projects\Recibir_archivo_desde_Arduino_consola_VB\Recibir_archivo_desde_Arduino_consola_VB\Module1.vb   49   Activo

Otro error es este:
Código
  1. Gravedad Código Descripción Proyecto Archivo Línea Estado suprimido
  2. Error BC30420 No se encontró 'Sub Main' en 'Recibir_archivo_desde_Arduino_consola_VB.Module1'. Recibir_archivo_desde_Arduino_consola_VB C:\Users\Usuario\documents\visual studio 2017\Projects\Recibir_archivo_desde_Arduino_consola_VB\Recibir_archivo_desde_Arduino_consola_VB\vbc 1 Activo
  3.  

Llevo tiempo traquiniando y no lo campto.
634  Programación / .NET (C#, VB.NET, ASP) / Re: Bot para tener mas visistas en youtube en: 23 Marzo 2017, 07:59 am
Este tipo de cosas está muy protegido por google, muy protegido precisamente para evitar visitas falsas y llamar la atención cuando en realidad no debe haberla. A parte de esto, par no ganar dinero por visitas fantasmas.
635  Programación / Programación C/C++ / Re: Puerto serie C++. Mejorar el programa. en: 23 Marzo 2017, 06:45 am
Hola:

Viendo lo visto, no he digo capaz, al menos por ahora, hacer un menú con fundamento para que me salga en C#, sigo con ello en paralelo ha este por si acaso. Me centraré en que si pulsas una tecla, directamente envía datos al puerto serie.

Código
  1. // Para crear conexión con los puertos COM1 - COM9.
  2. // Serial* Arduino = new Serial("COM7");
  3.  
  4. // Para crear conexión con los puertos COM10 en adelante.
  5. // Serial* Arduino = new Serial("\\\\.\\COM10");
  6.  
  7. #include <iostream>
  8. #include <fstream>
  9. #include <Windows.h>
  10. #include "SerialClass.h"
  11. using namespace std;
  12.  
  13. void main()
  14. {
  15. // Título de la ventana
  16. SetConsoleTitle("Control Led Arduino.");
  17.  
  18. // Puerto serie.
  19. Serial* Puerto = new Serial("COM4");
  20.  
  21. // Comandos para Arduino.
  22. char Luz_ON[] = "Luz_ON"; // Envía "Luz_ON" al puerto serie.
  23. char Luz_OFF[] = "Luz_OFF";
  24. char lectura[50] = "\0"; // Guardan datos de entrada del puerto.
  25.  
  26. int opc; // Guarda un 1 o 2 tipo entero queintroduces desde la consola.
  27.  
  28. while (Puerto->IsConnected())
  29. {
  30. cout << endl; // Dejamos un retorno.
  31. cout << "Introduzca la opcion deseada: " << endl << endl; // Muestra texto en pantalla.
  32.  
  33. cin >> opc; // Aquí introduces un número, el 1 o el 2.
  34.  
  35. switch (opc) // Espera recibir un 1 o un 2.
  36. {
  37. case 1:
  38. // Encener luz.
  39. cout << "Enviando: " << Luz_ON << endl; // Muestra en pantalla textos.
  40. Puerto->WriteData(Luz_ON, sizeof(Luz_ON) - 1); // Envía al puerto el texto "Luz_ON".
  41. break;
  42.  
  43. case 2:
  44. // Apagar luz.
  45. cout << "Enviando: " << Luz_OFF << endl;
  46. Puerto->WriteData(Luz_OFF, sizeof(Luz_OFF) - 1);
  47. break;
  48.  
  49. default: // Si haz pulsado otro número distinto del 1 y 2, muestra
  50. cout << "Puse del 1 al 2."; // este mensaje.
  51. }
  52.  
  53.  
  54. while (true) {
  55. int n = Puerto->ReadData(lectura, 49);
  56. if (n > 0) {
  57. lectura[n + 1] = '\0';
  58. break;
  59. }
  60. Sleep(1);
  61. }
  62. cout << "Recibido: " << lectura << endl;
  63. cout << "-------------------" << endl;
  64. }
  65. }

Habías comentado algo así:
Código
  1. // Tecla 'B' pulsada
  2. if (GetAsyncKeyState('B') & 0x8000)
  3. {
  4. // Apagar luz.
  5. cout << "Enviando: " << Luz_OFF << endl;
  6. Puerto->WriteData(Luz_OFF, sizeof(Luz_OFF) - 1);
  7. }

Pero no funcionaba, daba cosas raras.

Me conformo lo de enviar datos al puerto serie y acto seguido responde desde Arduino, hasta ahí bien, solo falta pulsar una tecla, desde que detecta la tecla, a enviar datos, no que primero pulse una tecla, luego Enter para enviar datos como hasta ahora.

;)
636  Programación / .NET (C#, VB.NET, ASP) / Re: programa que resuelva el siguiente laberinto en C# en: 21 Marzo 2017, 15:51 pm
Hola:

¿Lo que quieres es esto?


Este tipo de cosas recuerdo hacr un ejemplo de la serpiente, un juego ya viejo, que tienes que usar matrices.

Tutorial matrices.
https://msdn.microsoft.com/es-es/library/aa288453%28v=vs.71%29.aspx?f=255&MSPPError=-2147217396

En tu caso son muchas matrices. Solo tienes que indicar la coordenada para moverte dentro de la matriz y cambiar sus valores automáticamente con el teclado.

Saludos.
637  Programación / .NET (C#, VB.NET, ASP) / Re: ¿Cómo se llama una función en VB .net? en: 21 Marzo 2017, 15:39 pm
Hola:

Se me había pasado de que la función devuelve vaor y el método no.
http://es.stackoverflow.com/questions/7403/diferencias-entre-m%C3%A9todos-procedimiento-funci%C3%B3n-para-que-sirven-cada-uno-y-co
https://asm86.wordpress.com/2012/05/19/proceso-subrutina-funcion-y-metodo-son-cosas-diferentes/

Funciona así por lo que veo.

Código
  1. Public Shared Sub Mensaje1()
  2.            Console.WriteLine()
  3.            Console.WriteLine("Creando archivo al disco duro...")
  4.        End Sub

Esta parte y ano me da problemas.

He probado muchos convertidores y ninguno saca algo al 100 %. Gracias por la propuesta.  Ahora te toca convertir estas líneas que no lo hace bien.
http://converter.telerik.com/
http://www.mundoprogramacion.com/NET/WebServices/deCSaVB_web.aspx

El código es muy grande y no traduce bien todo. Voy partes por partes como este y este no convierte.
Código
  1. Puerto_serie.DataReceived += New SerialDataReceivedEventHandler(DataReceivedHandler)

Citar
Gravedad   Código   Descripción   Proyecto   Archivo   Línea   Estado suprimido
Error   BC32022   'Public Event DataReceived As SerialDataReceivedEventHandler' es un evento y no se puede llamar directamente. Use una instrucción 'RaiseEvent' para generar un evento.   Recibir_archivo_desde_Arduino_consola_VB   C:\Users\Usuario\documents\visual studio 2017\Projects\Recibir_archivo_desde_Arduino_consola_VB\Recibir_archivo_desde_Arduino_consola_VB\Module1.vb   48   Activo

Hay otra parte del código que traduce bien en teoría, pero hay muchos peros, da errores en VB .net.
De C#:
Código
  1.                SerialPort sp = (SerialPort)sender;
  2.                string indata = sp.ReadExisting();
  3.                string[] data = indata.Split('A');
  4.                cantidadBytes = int.Parse(data[0]);
  5.  
  6.  
  7.                switch (data[1].ToString())
  8.                {
  9.                    case "1":
  10.                        Console.WriteLine("Tamaño: " + cantidadBytes + " Bytes.");
  11.                        Console.WriteLine("Foto: " + data[1] + ". Tipo de archivo: JPG");
  12.                        break;
  13.  
  14.                    case "2":
  15.                        Console.WriteLine("Tamaño: " + cantidadBytes + " Bytes.");
  16.                        Console.WriteLine("Foto: " + data[1] + ". Tipo de archivo: PNG.");
  17.                        break;
  18.  
  19.                    default:
  20.                        Console.WriteLine("Cosas raras en 'data': " + data.ToString()); // Por si hal algún error.
  21.                        break;
  22.                }
Código
  1. Dim sp As SerialPort = DirectCast(sender, SerialPort)
  2. Dim indata As String = sp.ReadExisting()
  3. Dim data As String() = indata.Split("A"C)
  4. cantidadBytes = Integer.Parse(data(0))
  5.  
  6.  
  7. Select Case data(1).ToString()
  8. Case "1"
  9. Console.WriteLine("Tamaño: " + cantidadBytes + " Bytes.")
  10. Console.WriteLine("Foto: " + data(1) + ". Tipo de archivo: JPG")
  11. Exit Select
  12.  
  13. Case "2"
  14. Console.WriteLine("Tamaño: " + cantidadBytes + " Bytes.")
  15. Console.WriteLine("Foto: " + data(1) + ". Tipo de archivo: PNG.")
  16. Exit Select
  17. Case Else
  18.  
  19. Console.WriteLine("Cosas raras en 'data': " + data.ToString())
  20. ' Por si hal algún error.
  21. Exit Select
  22. End Select



El código es muy largo, si quieren lo pongo, pero no intenten traducirlo de golpe todo porque no funcionará.

Gracias.
638  Programación / .NET (C#, VB.NET, ASP) / ¿Cómo se llama una función en VB .net? en: 21 Marzo 2017, 07:37 am
Hola:

Haciendo pruebas ya que en VB .net no entiendo mucho. Tengo esta función tonta sin parámetros.

Código
  1. Sub Mensaje1()
  2.            Console.WriteLine()
  3.            Console.WriteLine("Creando archivo al disco duro...")
  4.        End Sub

Lo he intentado llamar directamete así y no funciona.
Código
  1. mensaje1()

No sirve.

¿Cómo se le llama?

Saludos.
639  Programación / Programación C/C++ / Re: Puerto serie C++. Mejorar el programa. en: 20 Marzo 2017, 05:29 am
Hola:

Probando con C# se funciona la recepción de datos, en C++ con Win32 no tengo idea como se hace. ;)
Código
  1. using System;
  2. using System.IO.Ports;
  3.  
  4. namespace Envio_y_recepcion_puerto_serie_cs
  5. {
  6.    class Program
  7.    {
  8.        static void Main(string[] args)
  9.        {
  10.            // Título de la ventana.
  11.            Console.Title = "Recibir datos desde Arduino con C#";
  12.  
  13.            // Cree un nuevo objeto SerialPort con la configuración predeterminada.
  14.            SerialPort Puerto_serie = new SerialPort("COM4");
  15.  
  16.            Puerto_serie.BaudRate = 115200;
  17.            Puerto_serie.Parity = Parity.None;
  18.            Puerto_serie.StopBits = StopBits.One;
  19.            Puerto_serie.DataBits = 8;
  20.            Puerto_serie.Handshake = Handshake.None;
  21.            Puerto_serie.RtsEnable = true;
  22.  
  23.            // Detecta cualquier dato recibido.
  24.            Puerto_serie.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
  25.  
  26.            Puerto_serie.Open(); // Abrir puerto.
  27.  
  28.            Console.WriteLine("Presione cualquier tecla para continuar...");
  29.            Console.WriteLine();
  30.            Console.ReadKey(); // Espera pulsar una tecla cualquiera.
  31.            Puerto_serie.Close(); // Cierra el puerto serie.
  32.        }
  33.  
  34.        private static void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
  35.        {
  36.            SerialPort sp = (SerialPort)sender;
  37.            string indata = sp.ReadExisting(); // Almacena los datos recibidos en la variable tipo string.
  38.            Console.WriteLine("Dato recibido desde Arduino: " + indata); // Muestra en pantalla los datos recibidos.
  39.        }
  40.    }
  41. }



Para enviar datos si el puerto en C# es así:
Código
  1. byte[] mBuffer = Encoding.ASCII.GetBytes("Hola mundo");
  2.    serialPort1.Write(mBuffer, 0, mBuffer.Length)

En C# lo hago rápido, deja acabarlo por completo y luego haber si es posible traducirlo al C++. ;)

Sigo investigando...
640  Programación / Programación C/C++ / Re: Puerto serie C++. Mejorar el programa. en: 19 Marzo 2017, 01:01 am
Hola:

El programa que quiero es:

1. Si pulso un número 1 o un 2 en C++, envía un mensaje a Aduino, luego Arduino le devuelve un mensaje.

2. Si pulso otro número que no está en el Switch Case, te salta elmensaje Default inficando que solo hay dos opciones para pulsar, tecla 1 y 2.

3. Si no se pulsa nada desde C++, Arduino tiene un botón, que al pulsarlo, envía mensajes llamado, ON o un OFF, C++ debe leer.

Por eso en C++ Win32 me cuesta mucho, en .net de C++ del CLI no cuesta tanto, más fácil pero no tiene ejecutable nativo, el Win32 si. Hay ventajas enuno y en la otra. ;)

Saludos.
Páginas: 1 ... 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 [64] 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 ... 261
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines