Poke – Write a value of any type into memory

Poke – Write a value of any type into memory

' write a value of any type in memory'' The value is written in the format of the value passed' as the second argument, but you can overwrite it by passing' an explicit data type in the third argument (this is the only' way to store a value as a 16-byte Variant)' This routine doesn't support strings and objectsSub Poke(ByVal address As Long, value As Variant, Optional ByVal ValueType As _    VbVarType = -1)    ' if a data type wasn't provided, use VarType()    If ValueType = -1 Then ValueType = VarType(value)    Select Case ValueType        Case vbByte            CopyMemory ByVal address, CByte(value), 1        Case vbInteger            CopyMemory ByVal address, CInt(value), 2        Case vbBoolean            CopyMemory ByVal address, CBool(value), 2        Case vbLong            CopyMemory ByVal address, CLng(value), 4        Case vbSingle            CopyMemory ByVal address, CSng(value), 4        Case vbDouble            CopyMemory ByVal address, CDbl(value), 8        Case vbCurrency            CopyMemory ByVal address, CCur(value), 8        Case vbDate            CopyMemory ByVal address, CDate(value), 8        Case vbVariant            CopyMemory ByVal address, value, 16        Case Else            Err.Raise 1001, , "Unsupported data type"    End SelectEnd Sub

See also - an AI reverse image search platform

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist