Salut JP.

Je n'ai pas vérifié, mais il est vraisemblable que le TImage utilise lock et unlock en interne.
D'où ton erreur lors du Unlock.
Tu peux écrire :

if img4result.Canvas.Locked then...