Pulling the rug out from under an internet protocol
Back in the early days of the World-Wide Web, as it was then known, there were a lot of competing media streaming protocols, many of them proprietary. (Actually, there are still a lot of competing media streaming protocols, many of them proprietary.)
To improve the experience for the end user, a Microsoft product cut a deal with one of the many companies that did streaming media: In exchange for a considerable licensing fee, the company provided a precompiled binary that the product would use in order to stream media from their service. That way, users would not have to go and download the custom media player control. It came built-in. (Given that at this time, dial-up was still a common way to get access to the Internet, pre-installing the media player saved the user a lot of time and hassle.)
Shortly after the Microsoft product was released, the company made an incompatible change to their streaming protocol. The binary that Microsoft paid a lot of money for no longer worked. Instead, the user received a message saying, “This program cannot play the media stream. Click here to download the latest Contoso Media Player.” And of course, the Contoso player came with a bunch of shovelware from companies who paid to have their software included with the media player.
Sure, the user got an awful experience, and Microsoft paid a lot of money in order to redistribute something useless, but I bet the sales people at that company made a huge bonus: They managed to get paid twice, one from Microsoft to distribute what turned out to be advertising, and again from the companies who wanted their trial software distributed with the Contoso player.
Reminder: One of the ground rules for this site is “Don’t try to guess the identity of a program or company whose name I did not reveal.”