From owner-freebsd-hackers Sun Apr 20 13:03:41 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id NAA10374 for hackers-outgoing; Sun, 20 Apr 1997 13:03:41 -0700 (PDT) Received: from phaeton.artisoft.com (phaeton.Artisoft.COM [198.17.250.50]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id NAA10344 for ; Sun, 20 Apr 1997 13:02:59 -0700 (PDT) Received: (from terry@localhost) by phaeton.artisoft.com (8.6.11/8.6.9) id NAA08446; Sun, 20 Apr 1997 13:00:49 -0700 From: Terry Lambert Message-Id: <199704202000.NAA08446@phaeton.artisoft.com> Subject: Re: Price of FreeBSD (was On Holy Wars...) To: james@wgold.demon.co.uk (James Mansion) Date: Sun, 20 Apr 1997 13:00:49 -0700 (MST) Cc: nate@mt.sri.com, freebsd-hackers@FreeBSD.ORG In-Reply-To: <3359FCA3.1398@wgold.demon.co.uk> from "James Mansion" at Apr 20, 97 12:23:15 pm X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk > > Re-installs are pretty common in the user world. > > How odd. > > I don't think I reinstalled NT ever on this box, which had vanilla 3.51 > from new (and W95 on a FAT partition) and its been up through every > service pack up to 4.0sp2, which I reverted out admitedly, tho the > backout process provided worked fine. > > The only time the box isn't up with NT is when I boot Linux on it, > which I started to do recently when my Linux/UnixWare box died. > > Have you tried to figure out WHY these reinstals are necessary? I have had to reinstall Windows95 once. I was doing FS developement, and got an offset wrong in a TSD, and it spit up all over my disk. It was definitely my fault. I have had to reinstall components of Windows 95 and NT more frequently. The most common problem is CTL3D32.DLL, which is different between Windows95 and NT, and which is badly documented. The "Install Shield" facility for installing WIN32 software in a platform independent way requires the NT CTL3D32.DLL (what they call the "Unicode version". The Windows95 code requires the "ANSI version", and NT itself requires the "Unicode version". ODBC/OLE code has an extended version with a more complex underlying implementation. This is documented in one small file in the SDK, and has changed in every one of the last three major number revisions. Luckily, the version number is the same in everything, so you can tell them apart. Not. Because of this, many people get this wrong and install the wrong one when they naievely hack together an install and test it in a single environment. The miss out on the other 4 out of 5 versions of the DLL. Luckily, Microsoft was brilliant, and, other than the ODBC/OLE crap, none of the DLL's is a subset of the interfaces of the others; they all have incompatible entry points, with a small intersection set. As long as you write your code to only use the subset of interfaces, you won't have problems. Almost nobody does this, though. So it's the developers who fail to buy the secret decoder rings from Microsoft who are screwing you up... or Microsoft, for requiring them in the first place. Regards, Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.