The Reds' Ryan Ludwick forced extra innings by hitting a leadoff homer in the ninth, his second home run of the game, but he struck out with two men on in the 10th to end the contest.
Pittsburgh, which lost 105 games last year, moved within two games of Cincinnati for first place in the National league Central by capturing two out of three in the series.
Clint Barmes opened the 10th for the Pirates with a ground-rule double off Aroldis Chapman (4-1). McKenry tried and failed to put down a sacrifice bunt before delivering a double to right that brought home Barmes with the winning run.
That made a winner out of Joel Hanrahan, who gave up the tying homer to Ludwick in the ninth and was the sixth of seven Pittsburgh pitchers.
Resop then got Todd Frazier on a popup to the catcher and struck out Ludwick to record only the second save in his 179 major league relief appearances.