Unfortunately, the addition of new features is often done without understanding the assumptions that were made with the underlying mechanisms and without concern for the added complexity presented to the system operators and maintainers. While they were writing about UNIX systems, this equally applies to Windows systems or even application programs. Virus scanners are an attempt to add security after the fact. Any computer security primer will tell you this is a doomed enterprise. If the foundations of the building are shaky, adding a fifth floor won't help.
Most virus scanners work by looking for virus 'signatures'.
However, until a virus has been obtained by a scanner manufacturer, its signature is unknown. Thus, virus scanners are available only after an outbreak to be sure, sometimes very soon after an outbreak, but that doesn't help the thousands of systems which may already be infected. Virus scanners are particularly poor detectors of macro viruses. Remember, the source code for a macro virus is easily available. Anyone can alter it to the point where it is no longer recognized by a scanner, but still destructive.