Visual Basic Foro

Programación => Visual Basic .NET / C# => Mensaje iniciado por: cobein en Junio 22, 2011, 08:10:52 pm

Título: Pregunta Fillmemory
Publicado por: cobein en Junio 22, 2011, 08:10:52 pm
Una pregunta, alguna mara de llenar un array con un determinado byte, algo asi como fillmemory api?
Título: Re:Pregunta Fillmemory
Publicado por: _katze_ en Junio 24, 2011, 01:21:06 am
cobein en este namespace :System.Runtime.InteropServices se encuentra una clase llamada marshall es para uso no administrado de memoria y una forma de copiar bloques de momoria cosas asi quisas sea la respuesta.o si puedes subir un ejemplo de lo que necesitas quizas lo pueda pasar...de ultima haces un pinvoke al api fillmemory y la usas a esa.
edito. sino puedes usar la misma clase array para hacer algo parecido a lo que pides...mejor si pones un ejemplo chango.
Título: Re:Pregunta Fillmemory
Publicado por: cobein en Junio 26, 2011, 02:31:59 pm
Esto es basicamente lo que necesito

Código: [Seleccionar]
    Private Sub FillMem(ByRef bytevBuffer() As Byte, ByVal byteData As Byte)
        Dim i As Integer
        For i = 0 To UBound(bytevBuffer)
            bytevBuffer(i) = byteData
        Next
    End Sub

No creo que esta sea la manera mas eficiente pero por ahora es lo unico que me funciona.
Título: Re:Pregunta Fillmemory
Publicado por: _katze_ en Junio 27, 2011, 01:34:52 pm
chango la clase array es de array en array y el marshal practicamente lo mismo...mmm...te corrijo algo en tu code y es q al estar en .net tienes q usar lo de .net mas halla qque halla soporte para las funciones de vb6....ya te ago el pinvoke del fillmemory asi la uses a esa que esa valida tmb.
Código: [Seleccionar]
Private Sub FillMem(ByRef bytevBuffer() As Byte, ByVal byteData As Byte)
        Dim i As Integer
        For i = 0 To bytevBuffer.Length - 1 'no usar ubound

            bytevBuffer(i) = byteData

        Next

    End Sub
Título: Re:Pregunta Fillmemory
Publicado por: cobein en Junio 27, 2011, 07:34:37 pm
Buen punto, es la costumbre del 6
Título: Re:Pregunta Fillmemory
Publicado por: _katze_ en Junio 27, 2011, 11:38:55 pm
si locura es la costumbre ami tambien me paso y hasta pasa por eso desactivo ese namespace jej


este link te puede servir seguro estas trabajando con esto http://www.codeproject.com/KB/vb/Marshal.aspx

y te paso mas o menos el pinvoke del fillmemory no encontre pero lo armo yo

Código: [Seleccionar]
Private Sub FillMemory _
 (ByVal Destination As Byte, ByVal Length As Long, ByVal Fill As Byte)
    End Sub

importa el espacio system.runtime.interopservices

seguimos en linea cualquier cosa