Тип указателя p не работает в 2.46, используйте i.(Используйте автономный справочный файл, онлайновый справочный файл имеет функции, доступные только в SVN) *
Кроме того, когда функции требуется указатель на выделенную вами структуру, используйте «i register», а не «i .register»(Функция должна знать адрес памяти, чтобы заполнить его данными)
System::Call '*(i,i)i.r0'
System::Call "USER32::GetCaretPos(i r0)i.r3"
System::Call '*$0(i.r1,i.r2)'
DetailPrint "$1x$2 return=$3"
System::Free $0