Autor Beitrag
Acromelaga
Hält's aus hier
Beiträge: 3



BeitragVerfasst: So 17.01.10 11:56 
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.
  • Eine bestimmtes Zip-Archif beim starten des Programmes Downloaden
  • Das Zip-Archif entpacken
  • Die Downloadegeschwindigkeit in Label 3 Anzeigen
  • Den Downloadstatus in pBar1 anzeigen(ProgressBar)
  • sobald das Entpacken fertig ist Button3 Anzeigen


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.
ausblenden 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.
ausblenden 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:
ausblenden 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19288
Erhaltene Danke: 1743

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 17.01.10 12: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 Threadstarter
Hält's aus hier
Beiträge: 3



BeitragVerfasst: So 17.01.10 12: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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19288
Erhaltene Danke: 1743

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 17.01.10 12: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 Threadstarter
Hält's aus hier
Beiträge: 3



BeitragVerfasst: So 17.01.10 12: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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19288
Erhaltene Danke: 1743

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 17.01.10 12:50 
Naja, wenn du eine Integervariable benutzen willst, dann kannst du ja auch nicht einfach schreiben:
ausblenden C#-Quelltext
1:
hallo = 45;					
Sondern du musst zuerst Bescheid sagen, dass das eine Variable ist...
ausblenden C#-Quelltext
1:
2:
int hallo;
hallo = 45;
Mehr dazu findest du unter Variablen bzw. deren Deklaration:
msdn.microsoft.com/d...ibrary/aa691161.aspx
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: So 17.01.10 13: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