Entwickler-Ecke

Netzwerk - Downloader - Probleme vorhanden


Acromelaga - So 17.01.10 12:56
Titel: Downloader - Probleme vorhanden
Guten Morgen... Guten Tag... Guten Abend... oder einfacher Hallo.

Ich bin recht neu in Microsoft Visual C#...
Bzw. bin wieder neu. Habe mich vorlängeren mal damit beschäftigt aber naja.
Dort hatte ich das Programm Microsoft Visual C# 2005.
Heute arbeite ich mit Microsoft Visual C# 2008 Express Edition.
Und das Buch was ich da habe hilft mir absulut nicht mehr weiter.

Das zu meinem Status gegen über C#.
Aber jetz zu meinem Problem:
Ich bin gerade dabei einen Downloader zu erstellen.
Was er können sollte? Es ist eigentlich einfach.


So nun solltet ihr eien Vorstellung haben wie der Downloader aufgebaut sein soll.
Das Downloaden geht einwandfrei.
Denn Code für die Downloadgeschwindigkeit habe ich, jedoch kriege ich diesen nicht eingebaut.

C#-Quelltext
1:
2:
3:
4:
5:
private void DownloadProgressChanged(Object sender, DownloadProgressChangedEventArgs e)
{
    double dn = (double)e.BytesReceived / 1024.0 / (DateTime.Now - [u]start[/u]).TotalSeconds;
    [u]sys[/u].ShowBusyStatus("Lade Update (" + dn.ToString("n") + " KB/s)", e.ProgressPercentage, 100);
}


Den Code für das slebst entpacken habe ich auch.

C#-Quelltext
1:
2:
3:
4:
            client.DownloadFileCompleted += new AsyncCompletedEventHandler([u]DownloadFileCompleted[/u]);
            client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(DownloadProgressChanged);
            [u]start[/u] = DateTime.Now;
            client.DownloadFileAsync(new Uri([u]url[/u]), [u]zipfile[/u]);


Die unterstrichenden Teile sind fehlerhaft.
Warum und so... das genau mein Problem, wie gesagt kenne mic mit C# sehr wenig aus.

Probleme habe ich auch noch dabei der pBar1 den Wert zuzuweisen.
Also das dort der Status des Downloades wiedergegeben wird.

Wie ich das mit den Button mache, das der erst nach dem Download angezeigt wird, weis ich in der Theorie.
Eigentlich sind es halt nur diese beiden Punkte die mich yum veryweifeln bringen.
Der Eintrag "[url="http://msdn.microsoft.com/de-de/library/system.windows.forms.progressbar%28VS.80%29.aspx"]ProgressBar-Klasse[/url]" hat mich leider nicht weiter gebracht....

Dann noch ein paar Allgemeine Infos:

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;


MfG Acro

PS: Für weitere Infos einfach bescheid sagen.


jaenicke - So 17.01.10 13:19

Hallo und :welcome:

Zu den unterstrichenen Bezeichnern hast du vergessen zu posten wo du diese wie deklariert hast. :nixweiss:
Deshalb kann ich da auch wenig dazu sagen weshalb die dort nicht zur Verfügung stehen.

Eine Möglichkeit wäre, dass du die in einer anderen Klasse deklariert hast oder so. Dann kannst du aus der anderen Klasse nicht darauf zugreifen.


Acromelaga - So 17.01.10 13:32

Mhhh... stimmt... da hat man was ganz wichtiges vergessen :D
Aber okay...
Hier die Fehlermeldungen bei dem Code für das Entpacken:
Fehler 1 Der Name "DownloadFileCompleted" ist im aktuellen Kontext nicht vorhanden.
Fehler 2 Der Name "DownloadProgressChanged" ist im aktuellen Kontext nicht vorhanden.
Fehler 3 Der Name "start" ist im aktuellen Kontext nicht vorhanden.
Fehler 4 Der Name "url" ist im aktuellen Kontext nicht vorhanden.
Fehler 5 Der Name "zipfile" ist im aktuellen Kontext nicht vorhanden.

Hier die Fehlermeldungen bei dem Code für die kb/s-Anzeige:
Fehler 1 Der Name "start" ist im aktuellen Kontext nicht vorhanden.
Fehler 2 Der Name "sys" ist im aktuellen Kontext nicht vorhanden.


jaenicke - So 17.01.10 13:38

user profile iconAcromelaga hat folgendes geschrieben Zum zitierten Posting springen:
Fehler 1 Der Name "DownloadFileCompleted" ist im aktuellen Kontext nicht vorhanden.
Fehler 2 Der Name "DownloadProgressChanged" ist im aktuellen Kontext nicht vorhanden.
Fehler 3 Der Name "start" ist im aktuellen Kontext nicht vorhanden.
Fehler 4 Der Name "url" ist im aktuellen Kontext nicht vorhanden.
Fehler 5 Der Name "zipfile" ist im aktuellen Kontext nicht vorhanden.

Hier die Fehlermeldungen bei dem Code für die kb/s-Anzeige:
Fehler 1 Der Name "start" ist im aktuellen Kontext nicht vorhanden.
Fehler 2 Der Name "sys" ist im aktuellen Kontext nicht vorhanden.
Du hast immer noch keinerlei Deklarationen für diese Variablen / Eigenschaften gepostet... :nixweiss:


Acromelaga - So 17.01.10 13:44

liegt wohl daran das das gewünschte nicht vorhanden ist :( :nixweiss: :roll:
wie gesagt.. sehr lange nicht damit gearbeitet und naja... weis nur noch die bedeutungen der begriffe, der "Grundbegriffe"
:oops: :cry:

hilfe(?)
komme mir (sehr) dumm im Moment vor :roll:


jaenicke - So 17.01.10 13:50

Naja, wenn du eine Integervariable benutzen willst, dann kannst du ja auch nicht einfach schreiben:

C#-Quelltext
1:
hallo = 45;                    
Sondern du musst zuerst Bescheid sagen, dass das eine Variable ist...

C#-Quelltext
1:
2:
int hallo;
hallo = 45;
Mehr dazu findest du unter Variablen bzw. deren Deklaration:
http://msdn.microsoft.com/de-de/library/aa691161.aspx


JüTho - So 17.01.10 14:40

Allgemeiner solltest du dich (erneut) mit dem Gültigkeitsbereich von Variablen befassen: innerhalb eines Blocks {...}, innerhalb einer Methode, innerhalb einer Klasse, wie ja eigentlich auch Sebastian sagt.

Gruß Jürgen