Actually, the headers the browser receives are those "Response.AddHeader(..)" sent by your code. I would try the following:
- Enclose strFileName within double quotes, i.e. "attachment; filename=""" & strFileName & """. It is possible that strFileName contains some offending characters.
- If this does not help try to do not send the "Content-Disposition" header at all.
Does this help?