Code: Select all
Structure UNICODE_STRING
usLength.w
usMaximumLength.w
usBuffer.i
EndStructure
pu.UNICODE_STRING
Procedure Ansi2Uni(ansi.s)
SHStrDup_(@ansi,@myuni.i)
ProcedureReturn myuni
EndProcedure
testunistring.i = Ansi2Uni("test")
Debug testunistring ;ok
RtlInitUnicodeString_(@pu,testunistring)
Debug pu\usLength ; = 8
Debug pu\usMaximumLength ; = 10
Debug testunistring ; but 0 in x64 !?
Debug pu\usBuffer
Debug PeekS(pu\usBuffer) ; = t , but error in x64
it works in x32 ...