If it were me, I would make companies "bid" on the visas, where their bid is the salary (including all benefits, minus ALL expenses) they will pay the employee.
Employers who really need employees for high-skilled work would thus get visas. Employers who want to underpay their foreign labor will not.
Employers who really need employees for high-skilled work would thus get visas. Employers who want to underpay their foreign labor will not.