Roy made 89 not out on his Surrey home ground on Monday as England hammered outsiders Afghanistan by nine wickets with nearly 200 balls to spare.
England, two days after losing their previous practice match to world champions Australia, returned to winning ways in convincing fashion ahead of their tournament opener against South Africa at the Oval on Thursday.
A target of 161 was never likely to test England, with Roy proving as much in a 46-ball innings that included 11 fours and four sixes.
Before play started, England were boosted by the news that fast bowler Mark Wood had been passed fit to face South Africa after a foot injury and that one-day captain Eoin Morgan was back in the team following a fractured finger.
Morgan did not field, however, and was not required to bat with the only wicket Afghanistan took coming when Jonny Bairstow was stumped by Rahmat Shah off Mohammad Nabi for 39.
Roy ended the match in the 18th over of England's reply with a six over midwicket.
- Archer strikes -
==================
Earlier, Jofra Archer and Joe Root took three wickets apiece as Afghanistan slumped to 160 all out.
Fast bowler Archer struck twice with the new ball to dismiss Hazratullah and Rahmat before ending some late resistance from Nabi.
Opener Noor Ali scrapped his way to 30 before he played on to all-rounder Ben Stokes.
Hashmatullah could not get going and that prompted Asghar Afghan to attack the occasional off-spin of Test captain Root.
But, having missed out on a first-ball full toss, Asghar tried to drive Root over the top but found Roy in the deep instead.
Afghanistan lost their next four wickets in a mere seven deliveries, Hashmatullah and Najibullah Zadran carelessly run out, Gulbadin Naib holing out to Moeen Ali and Rashid Khan steering Root to slip for a golden duck.
Afghanistan were in danger of being dismissed for under 100 before Nabi, with 44, helped the last two wickets add 68 runs.
Nabi's defiant hitting, which included three sixes, kept England at bay before he was last man out when a thick edge off Archer carried to Bairstow on the boundary.