Doh! Silly me. THandle and Pointer (as in Pointer to WideChar) will always be of the same size no matter if it's a 32-bit or 64-bit target. Doh!
I just wish there was a tidier solution than using compiler directives to indicate to the compiler that the conversion is safe without it generating a hint.
Here's the definition of THandle that I didn't take into consideration in my original reply.
{$ifdef CPU64}
THandle = QWord;
{$else CPU64}
THandle = DWord;
{$endif CPU64}
P.S. No, I'm not a bot or spammer, I've just been looking for a solution to my compiler hint and this thread came up on top when Googling. Originally I questioned the answer but then, as can be seen by my followup reply, I realised I was completely off.