mtconleyuk
8th June 2007 08:46 UTC
How to stop bypassing CRCCheck?
This is probably not a NSIS question per se, but it does involve the installer's CRCCheck directive.
If I burn a CD with an installer set up for autoplay, and I insert it in one of my machines, the CRCCheck will run every time I insert the disc.
If I do the same on another one of my machines, the check only runs the first time I insert the disc; on subsequent insertions, the check appears to be bypassed (or occurs so quickly no progress dialog is displayed).
I'm guessing that there is some obscure Windows security setting that's causing this, and that NSIS is making some system call that retrieves cached data after the first disc insertion, so that CRCCheck simply turns around and says 'Done!' far faster on subsequent insertions.
If this is the case, does anyone know how to turn off the caching? I like to verify my discs before shipping, and I can't really test them if the CRCCheck isn't running. Besides that, I'm just curious as to what might be going on.
kichik
8th June 2007 09:07 UTC
Sounds like standard Windows file caching. In this case, not only the CRC is calculated on the cached data, but also the decompression of the data. Windows is simply skipping the CD so it'd run faster. There's nothing to worry about. The CRC is still done but much faster because the data is from the cache.
mtconleyuk
8th June 2007 09:14 UTC
Thanks, but the point is I want the CRCCheck done on the copy of the data on the CD I insert. I didn't make it clear in my original post that we're talking about *different* CDs here: I have a stack of CDs I've burned, and I just want to make sure that the data were transferred by the burner app (which has been known to be a bit flakey at times) correctly. If Windows is caching the data from the first disc so that NSIS is not checking the data on the others, then I'm not able to verify that the individual copies of the installers are actually correct.
kichik
8th June 2007 09:22 UTC
That's a bit strange. I'm sure Windows is smart enough to only pull something from the cache if it's the same CD. If not, I guess only decreasing the cache size will help you. There are "tweakers" out there that help you set the cache size.
mtconleyuk
11th May 2009 08:08 UTC
I discovered awhile back that the way to work around this is to open the Computer Management dialog (My Computer > Manage, open the Removable Storage item, and click on Media. The caching is then disabled, and Windows scans each CD individually, even though they are all copies.
Just in case anyone else wanted to know.