estoy utilizando System.io.ports para manejar la interaccion con el puerto, en estos momentos ya logro obtener la informacion del puerto pero lo que obtengo son caracteres extraños (signos de interrogacion y algun que otro numero del codigo de barras coniside con el codigo original registrado), segun e leido en tutoriales y foros tengo que convertir esa informacion que ya obtuve pero no se a que tipo de codificacion (ASCII, BINARIO etc.) para manejarla en el tipo de que necesito que es en double, y la segunda duda es cuando intento abrir el puerto COM1 (es el que estoy manejando) no me permite el acceso, me marca un error de "se a denegado el acceso al puerto com1", siendo que ya cheque en administracion de dispositivos y la configuracion que le mando del fuente coinside con la que predetermino al com1, sobra decir que si me detecta el puerto. El codigo que tengo es el siguiente:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
public partial class Form1 : Form
{
public bool continuar;
SerialPort Com1;
string entrada = "";
string[] ports = SerialPort.GetPortNames();
string Convertir = "";
public Form1()
{
InitializeComponent();
}
private void Contraseñatxt_TextChanged(object sender, EventArgs e)
{
try
{
Com1 = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One);
Com1.DataReceived += new SerialDataReceivedEventHandler(com1_DatosRecibidos );
Convertir = System.Convert.ToString(Contraseñatxt.Text);
Com1.Open();
Application.Run();
OleDbConnection MiConeccion = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=C:\Validador\bd2.mdb;Persist Security Info=False");
MiConeccion.Open();
OleDbDataAdapter adap = new OleDbDataAdapter("SELECT Clave FROM Custodios", MiConeccion);
OleDbCommand command = new OleDbCommand("SELECT Clave FROM Custodios WHERE Clave=" + this.Contraseñatxt.Text + "", MiConeccion);
if (command.ExecuteReader().HasRows)
{
Opcciones Inst_op = new Opcciones();
this.Hide();
Inst_op.ShowDialog();
}
Com1.Close();
MiConeccion.Close();
}
catch (Exception Ex)
{
Console.WriteLine(Ex.Message);
}
}
private void com1_DatosRecibidos(object sender, SerialDataReceivedEventArgs e)
{
this.Contraseñatxt.Invoke( new EventHandler
( delegate
{Contraseñatxt.Text+= Com1.ReadExisting();}));
Convertir = System.Convert.ToString(Contraseñatxt.Text);
}
private void pictureBox1_Click(object sender, EventArgs e)
{
pictureBox1.Image = System.Drawing.Image.FromFile("C:/Misdocumentos/VisualStudio2005/Projects/ProyectoOxxo/ProyectoOxxo/Logo_oxxo.png");
}
Espero haber sido lo suficientemente claro como para que le puedan hechar una mano a este programador novato

