Generally, neither IE nor WinAmp care that the Content-Length header is there. Don't worry about it. If you're really interested, pull up a cup of coffee and delve into the delights of RFC2616. To summarise:

In HTTP/1.0, the Content-Length is a courtesy -- it tells the browser how much data to expect. The end of the data is actually signalled by the connection closing. If the amounts don't match, a sensible browser will warn you.

Thus, the Content-Length header is optional.

In HTTP/1.1, it becomes more important. HTTP/1.1 added the ability to use a single TCP connection for multiple requests/responses. This reduces the load on the client and the server.

However, this means that the browser needs to know when one response has finished and the other begins. Content-Length becomes more important for this. It's still valid to close the connection to signify end-of-file.

This complicates the issue if the server doesn't know how big the file is. For this, Transfer-Encoding: chunked is used.
_________________________
-- roger