Since everyone is asking, here is the code I am using. I am using it to output the file off the server.
Public Function RedirectFile(ByVal File As System.IO.FileInfo)
If File.Exists Then 'set appropriate headers
System.Web.HttpContext.Current.Response.Clear()
System.Web.HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=" & File.Name)
System.Web.HttpContext.Current.Response.AddHeader("Content-Length", File.Length.ToString())
System.Web.HttpContext.Current.Response.ContentType = "application/octet-stream"
System.Web.HttpContext.Current.Response.WriteFile(File.FullName)
System.Web.HttpContext.Current.Response.End() 'if file does not exist
End If
End Function