I'm suprised by the term "years", do you mean on and off for years, or literally has had them for years?
My sisters gelding had them a couple of times, it's from being in high moisture areas or being turned out for long periods of time in muddy conditions.
Is your horse turned out in muddy paddocks?
Our vet gave us a medicated shampoo specifically for scratches, we had to wash his legs once a day and scrub at the scabs. If it's wet or muddy, you won't want him outside while he's still infested.
MTG works too.