no me contestaste ninguno de mis correos anteriores. estas un poco maleducada. 
ahora mismo 
estaba pensando en ti.. en que hoy no habías ido a trabajar. en fin que no 
esperaba este 
correo tuyo hoy.

PEPE




-----Original Message-----
From: "Pata del Santo" <[EMAIL PROTECTED]>
To: "vbnet List Member" <[email protected]>
Date: Fri, 2 May 2008 18:22:15 +0200
Subject: [***SPAM*** Score/Req: 07.70/05.00] [vbnet] String a Byte

> Esto no tiene que ver especificamente con VB.NET, es un problema
> genérico de
> arrays.
> Repito lo que pusiste en tu código:
>  
> Dim valor_buffer() As Byte 
> For i As Integer = 0 To args.Length - 1 
>     valor_buffer(1) = args(i)
> Next
>  
> Estás referenciando el índice=1 (que es el segundo elemento) pero
> valor_buffer todavía no tiene dos elementos, más bien no tiene ninguno.
> Habría que dimensionar primero el array, de esta manera:
>  
> Dim valor_buffer(args.Length - 1) As Byte 
> Nota: en VB redimensionamos un array, indicando el índice máximo que
> tendrá
> (o sea: la cantidad de elementos menos uno).
>  
> Ahora sí podemos rellenar el array
>  
> For i As Integer = 0 To args.Length - 1 
>     valor_buffer(i) = args(i)
> Next
>  
> El problema es que args(i) es caracter y valor_buffer(i) es de tipo
> Byte.
> Tal vez te haga la conversión automáticamente, aunque podemos utilizar
> CByte(<expresion>) para convertir.
>  
> O sea que, después de todo esto, tu código queda finalmente así:
>  
> Dim valor_buffer(args.Length-1) As Byte 
> For i As Integer = 0 To args.Length - 1 
>     valor_buffer(i) = CByte(args(i))
> Next
>  
> Suerte.
> Pata.
>   _____  
> 
> De: [email protected] [mailto:[EMAIL PROTECTED] En nombre de Oscar
> Onorato
> Enviado el: viernes, 02 de mayo de 2008 18:07
> Para: vbnet List Member
> Asunto: [vbnet] String a Byte
> 
> 
> 
> PabloC
>  
> 
> lo que me copias no me ayuda mucho.
> Podrias ser mas explicito?
> 
>  
> No, la verdad que no.
> Hago lo que puedo, lo siento.  =P
>  
> Saludos
> 
> El día 2 de mayo de 2008 12:32, PabloC <[EMAIL PROTECTED]>
> escribió:
> 
> Oscar, muy lindo lo que mandas, pero como empece este mail explicando
> que NO
> tengo la mas remota idea de VB,NET, lo que me copias no me ayuda mucho.
> Podrias ser mas explicito?
> Gracias
> Saludos
> PabloC
> 
> ----- Original Message ----- 
> From: Oscar Onorato <mailto:[EMAIL PROTECTED]>  
> To: vbnet List Member <mailto:[email protected]>  
> Sent: Friday, May 02, 2008 12:17 PM
> Subject: [vbnet] String a Byte
> Utilice el tipo de datos Byte para contener datos binarios.
> El valor predeterminado de Byte es 0.
> 
> Sugerencias de programación
> 
> 
> *     
> 
>       Números negativos. Dado que Byte es un tipo sin signo, no puede
> representar un número negativo. Si utiliza el operador menos (-) unario
> en
> una expresión que produce un resultado del tipo Byte, Visual Basic
> convierte
> primero la expresión a Short.
> *     
> 
>       Conversiones de formato. Cuando Visual Basic lee o escribe archivos
> o cuando llama a archivos DLL, métodos y propiedades, puede convertir
> automáticamente entre los formatos de datos. Los datos binarios
> almacenados
> en variables Byte y matrices se conservan durante estas conversiones de
> formato. No debería utilizar una variable String para datos binarios,
> ya que
> su contenido puede dañarse durante la conversión entre los formatos
> ANSI y
> Unicode.
> *     
> 
>       Ampliación. El tipo de datos Byte se amplía a Short, UShort, Integer
> y UInteger, Long, ULong, Decimal, Single y Double. Esto significa que
> se
> puede convertir Byte en cualquiera de estos tipos sin encontrar un
> error
> System.OverflowException.
> *     
> 
>       Caracteres de tipo. Byte no tiene ningún carácter de tipo de literal
> o de tipo de identificador.
> *     
> 
>       Tipo en Framework. El tipo correspondiente en .NET Framework es la
> estructura System.Byte.
> 
> Saludos 
> El día 2 de mayo de 2008 11:42, PabloC <[EMAIL PROTECTED]>
> escribió:
> 
> 
> Hugo con Redim funciono todo bien hasta que le envie un parametro con
> un
> valor "3B" en ese caso me da un error de excepcion 
> ERROR La conversión de la cadena "3B" en el tipo 'Byte' no es válida.
>  
> Alguna idea??
> Saludos
> PabloC
> 
> ----- Original Message ----- 
> From: PabloC <mailto:[EMAIL PROTECTED]>  
> To: vbnet List Member <mailto:[email protected]>  
> Sent: Tuesday, April 29, 2008 9:58 AM
> Subject: [vbnet] String a Byte
> Gracias Hugo
> Voy a probar
> Despues comento como me fue
> Saludos
> PabloC
> 
> ----- Original Message ----- 
> From: Hugo Teijiz <mailto:[EMAIL PROTECTED]>  
> To: vbnet List Member <mailto:[email protected]>  
> Sent: Monday, April 28, 2008 7:54 PM
> Subject: [vbnet] String a Byte
> Hola Pablo,
>            El problema reside en que el array que utilizas es dinámico,
> esto
> implica que debes redimensionarlo cada vez que le adicinas un elemento.
> Una
> posibilidad es que utilices la instrucción Redim, para redimensionar el
> array, esto sería que redimensiones el array en uno por cada item del
> array
> args. La otra es utilizar un arraylist, que es algo similar al array,
> con la
> diferencia que es una lista. De este modo, no vas a tener que
> preocuparte de
> la dimensión del array, ya que tendrás el método Add para anexarle los
> items, y luego podrás recorrerlo como si fuera un array.
>  
> Espero haberte ayudado
>  
> Saludos,
>  
> Hugo 
> El día 28 de abril de 2008 16:45, PabloC <[EMAIL PROTECTED]>
> escribió: 
> 
> Holas a todos
> No tengo mucha experiencia, es mas casi nada, en VB.Net
> Tengo una app de consola que recibe parametros y debo pasar esos
> parametros
> a una rutina que hace un calculo pero que recibe ByVal valor As Byte
>  
> Si hago, lo de aca abajo me sale un error de exception y se muere la
> applicacion
> Public Shared Function Main(ByVal args As String()) As Integer
> 
> ' Analizo argumentos de linea de comandos 
> If args.Length = 0 Then 
> Call ExplicarUso() 
> Return -1 
> End If 
> Dim valor_buffer() As Byte 
> For i As Integer = 0 To args.Length - 1 
>     valor_buffer(1) = args(i)
> Next
> Pero si en lugar de eso lo paso FIJO funciona perfectamente
>  
>  
> Public Shared Function Main(ByVal args As String()) As Integer
> 
> ' Analizo argumentos de linea de comandos 
> If args.Length = 0 Then 
> Call ExplicarUso() 
> Return -1 
> End If 
> Dim valor_buffer As Byte() = {"04", "03", "00", "00"} 
> Alguna idea 
> Saludos
> PabloC
> 
> 


Responder a