SOLUCIONADO
El problema estaba en que en la funcion para obtener el thumbnails, el parametro esta apuntado hacia un pointer, por lo que la unica forma de poder pasarle los parametros correctamente, fue trabajando sobre el vector:
Código Delphi
[-]
var MiWideChar:array[0..255] of WideChar;
a,d,ruta:string;
ar,di:PWideChar;
begin
a:=ExtractFileName(Lista.Strings[w]);
ar:=StringToWideChar((a),archivo,255);
d:=ExtractFilePath(Lista.Strings[w]);
di:=StringToWideChar(d,directorio,255);
Image1.Picture.Assign(GetThumbnail(di,ar, 96, 96));
end;
__________________
Código Delphi
[-]
try
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;