Si, no fije de ese error; buena observación. Pero esa es la forma textual de hacerlo y como me dijiste si es muy lenta para un proceso.
De hecho en base a tu código se puede crear una función para descomponer un valor en sus respectivos bytes:
Código:
Option Explicit
Declare Sub RtlMoveMemory Lib "kernel32" (ByRef Destination As Any, _
ByRef Source As Any, ByVal Length As Long)
Type DWORD_BYTE
Byte(0 To 3) As Byte
End Type
Function UnlinkB(ByVal dwVal As Long) As DWORD_BYTE
Dim tmpDW As DWORD_BYTE
CopyMemory tmpDW, dwVal, 4
UnlinkB = tmpDW
End Function
Este era un problema del que no buscaba como safarme a la hora de los procesos, ¡¡gracias Beakdan!!