Verwendung von WebResponse zum Herunterladen von WMV-Dateien

Ich verwende den folgenden Code, um eine WMV-Datei über eine WebResponse abzufragen. Ich benutze einen Thread, um diese Funktion aufzurufen:

static void GetPage(object data)
{
    // Cast the object to a ThreadInfo
    ThreadInfo ti = (ThreadInfo)data;

    // Request the URL
    WebResponse wr = WebRequest.Create(ti.url).GetResponse();

    // Display the value for the Content-Length header
    Console.WriteLine(ti.url + ": " + wr.Headers["Content-Length"]);
    string toBeSaved = @"C:\Users\Kevin\Downloads\TempFiles" + wr.ResponseUri.PathAndQuery;        
    StreamWriter streamWriter = new StreamWriter(toBeSaved);

    MemoryStream m = new MemoryStream();
    Stream receiveStream = wr.GetResponseStream();
    using (StreamReader sr = new StreamReader(receiveStream))
    {
        while (sr.Peek() >= 0)
        {
            m.WriteByte((byte)sr.Read());
        }
        streamWriter.Write(sr.ReadToEnd());
        sr.Close();
        wr.Close();
    }

    streamWriter.Flush();
    streamWriter.Close();

    // streamReader.Close();
    // Let the parent thread know the process is done
    ti.are.Set();

    wr.Close();
}

Die Datei wird anscheinend einwandfrei heruntergeladen, aber Windows Media Viewer kann die Datei nicht ordnungsgemäß öffnen. Ein alberner Fehler, weil der Dateityp nicht unterstützt wird.

Was für eine unglaublich einfache Sache vermisse ich?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage