On Thu, 27 Oct 2022 20:54:16 +0200 didier gaumet <didier.gau...@gmail.com> wrote:
> Dan's answer is spot on but I supposed Suman would appreciate more > details :-) > > From my point of view: Let me add to this. Microsoft has an OS, Windows. It also has several application programs, of which Microsoft's Internet Explorer and the Office suite of programs are well known examples. Back when I worked for Microsoft, I observed a few things: * The application programs took advantage of OS APIs that were not documented to the outside world. This gave the Microsoft applications a competitive edge. * Back in the day, application writers would disassemble MS-DOS and find and use hidden undocumented APIs. Of course there is no guarantee that a hidden API will work in the next version of DOS. Except that major application vendors would put pressure on Microsoft to carry those hidden APIs into future versions of DOS. And Windows on top of DOS (Widows 95, et al.). And into Widows NT, etc. Furthermore, sometimes those hidden APIs were buggy. Which meant the successor code had to carry those bugs forward. * Things that appeared to be applications might in fact be extensions to the OS. Case in point, Microsoft Internet Explorer. To install Microsoft's C compiler required installing Internet Explorer. Why? because there were OS extensions in Internet Explorer, in addition to a web browser. So far as I know (it's been a while) those hidden and buggy APIs are still there. Which means that a truly complete LSW would also have to carry them over. Good luck writing code to emulate that stuff! My advice, if you must run Windows applications (I don't), is run well behaved applications only, which includes applications that don't call hidden APIs. I have no idea if there is a test suite for well behaved Windows applications, but wine should be a decent approximation of one. -- Does anybody read signatures any more? https://charlescurley.com https://charlescurley.com/blog/