{"id":23843,"date":"2008-01-11T10:00:00","date_gmt":"2008-01-11T10:00:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/oldnewthing\/2008\/01\/11\/windows-is-not-an-mfc-delivery-channel\/"},"modified":"2008-01-11T10:00:00","modified_gmt":"2008-01-11T10:00:00","slug":"windows-is-not-an-mfc-delivery-channel","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/oldnewthing\/20080111-00\/?p=23843","title":{"rendered":"Windows is not an MFC delivery channel"},"content":{"rendered":"<p>Depending on what version of Windows you&#8217;re running, there may be a variety of support DLLs for things that aren&#8217;t formal product components, but which are merely along for the ride. For example, Windows&nbsp;95 came with MFC30.DLL because the Fax Viewer was written with the help of MFC&nbsp;3.0. But if you look at Windows&nbsp;98, MFC30.DLL is gone.\n What happened?\n What happened is that Windows&nbsp;98 didn&#8217;t have a fax viewer that used MFC&nbsp;3.0. The fact that some MFC&nbsp;3.0 DLLs wound up on the machine with Windows&nbsp;95 was merely a side effect of the implementation and not a part of the product specification. And in fact, if you chose not to install the Fax Viewer during Windows&nbsp;95 setup, you wouldn&#8217;t have gotten MFC30.DLL at all either, because MFC30.DLL wouldn&#8217;t have been needed.\n We had a category of Windows&nbsp;98 compatibility bugs from programs that assumed that MFC30.DLL was a contractual part of Windows. If the tester did a minimal install of Windows&nbsp;95 and then installed the application, the application wouldn&#8217;t run there either. The application vendor simply assumed that MFC was part of Windows, even though it wasn&#8217;t. In other words, the program didn&#8217;t work even on Windows&nbsp;95. Is it a bug in Windows&nbsp;98 if the program didn&#8217;t work on Windows&nbsp;95?\n This problem persists today. People go scrounging around the binaries that come with Windows looking for something they can remora. And then they&#8217;re surprised when those binaries change or vanish entirely. For example, one customer had reverse-engineered the Kodak image viewer in Windows&nbsp;2000 and wanted to keep using it in Windows&nbsp;XP. But <a href=\"http:\/\/support.microsoft.com\/?id=308979\"> those components are not included in Windows&nbsp;XP<\/a>; the Kodak image viewer was merely a stopgap solution until the Windows&nbsp;XP fax and image viewer came along. (The linked Knowledge Base article has more information on that product.) I mention this because that customer, a Fortune&nbsp;500 company, was trying to copy the files from Windows&nbsp;2000 and install them onto a Windows&nbsp;XP machine and actually came to us asking for help in what may very well have been a violation of the Windows license agreement! (And certainly a violation of Microsoft&#8217;s agreement with Kodak.)<\/p>\n<p> (I now predict that everybody will comment on the last two sentences and completely ignore the point of this article.) <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Depending on what version of Windows you&#8217;re running, there may be a variety of support DLLs for things that aren&#8217;t formal product components, but which are merely along for the ride. For example, Windows&nbsp;95 came with MFC30.DLL because the Fax Viewer was written with the help of MFC&nbsp;3.0. But if you look at Windows&nbsp;98, MFC30.DLL [&hellip;]<\/p>\n","protected":false},"author":1069,"featured_media":111744,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[26],"class_list":["post-23843","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-oldnewthing","tag-other"],"acf":[],"blog_post_summary":"<p>Depending on what version of Windows you&#8217;re running, there may be a variety of support DLLs for things that aren&#8217;t formal product components, but which are merely along for the ride. For example, Windows&nbsp;95 came with MFC30.DLL because the Fax Viewer was written with the help of MFC&nbsp;3.0. But if you look at Windows&nbsp;98, MFC30.DLL [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/oldnewthing\/wp-json\/wp\/v2\/posts\/23843","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/oldnewthing\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/oldnewthing\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/oldnewthing\/wp-json\/wp\/v2\/users\/1069"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/oldnewthing\/wp-json\/wp\/v2\/comments?post=23843"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/oldnewthing\/wp-json\/wp\/v2\/posts\/23843\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/oldnewthing\/wp-json\/wp\/v2\/media\/111744"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/oldnewthing\/wp-json\/wp\/v2\/media?parent=23843"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/oldnewthing\/wp-json\/wp\/v2\/categories?post=23843"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/oldnewthing\/wp-json\/wp\/v2\/tags?post=23843"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}