Later, when the PC platform became what we know today, there wasn't really a channel for free (small f) software except shareware magazines and Microsoft surely would not be seen with that crowd! In those days, Microsoft wasn't concerned with losing the heads and minds to another platform but with losing the revenue to Borland. Since then, more and more has been made available (I still fondly remember laying my hands on the first Windows SDK day came with a free command line version of the MSVC compiler), but it is a culture shift that won't be rushed as long as there are no really pressing reasons.
For a while now they haven't been doing that. Community editions are just as good as paid ones and before that Express versions were still comparable if not better than open source IDEs.
Partnering with them gives rebates on their dev tools licenses and gives you kickback when you push your customers to buy for-realsies licenses.
VS is just the fishermans hook, the haul are the 600 SQL server CPU licenses you have ticking all day, every day.
It doesn't even seem like they're acting in rational self-interest by doing that.
I suppose their rationale is that they give a lot of development tools away for free, and you only really have to pay for the really enterprise-y editions. I guess? Still dumb to me.