Paulo Sousa brought Rangers' top scorer onto the field with 10 mins to go and he duly obliged with the winning goal.
Earlier Rangers had twice led through Heidar Helguson but on both occasions Preston came back. Chris Sedgewick and then a Callum Davidson penalty meant it was 2 - 2 going into the final minutes.
Rangers had the last laugh though with top scorer Blackstock winning the match in the 86th minute.
The win sees Rangers into 9th place and prepares them well for Friday's 1pm kick off at The Valley against free falling Charlton.