Autor Beitrag
cemolade
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26



BeitragVerfasst: So 06.03.11 16:34 
hey leute.

mein programm macht einen screenshot vom desktop und der wird dann als png oder jpeg abgespeichert. dann lade ich das bild auf meinen ftp server hoch!
das funktioniert ja alles, aber dann klicke ich das bild am ftp server an, und es wird nur "Bild" angezeigt oder ein X oderso.. die filegröße am ftp stimmt mit dem am pc überein, also wird alles übertragen.
das komische ist aber, wenn ich die bilder über FileZilla(ftp client programm) hochlade dann werden sie angezeigt =/

btw.. wisst ihr wie man dateien am server überschreibt ? einfach eine datei mit dem selben namen uploaden geht leider nicht.

danke schonmal


Moderiert von user profile iconKha: Topic aus WinForms verschoben am So 06.03.2011 um 18:53
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 06.03.11 16:50 
Meine Glaskugel ist leider gerade vom Tisch gerollt und kaputt, deshalb sehe ich deinen Quelltext nicht mehr. :nixweiss: :roll:

Woher sollen wir den wissen was du da machst?
cemolade Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26



BeitragVerfasst: So 06.03.11 16:54 
sorry für deine glaskugel >_<
ich helf dir mal aus :D

screenshot machen

ausblenden Quelltext
1:
2:
3:
4:
                bmp = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);
                gfx = Graphics.FromImage(bmp);
                gfx.CopyFromScreen(Screen.PrimaryScreen.Bounds.X, Screen.PrimaryScreen.Bounds.Y, 0, 0, Screen.PrimaryScreen.Bounds.Size, CopyPixelOperation.SourceCopy);
                bmp.Save(@"C:\Users\Anonym\Desktop\streamit" + counter.ToString() + ".png", ImageFormat.Png);



bild uploaden

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
                FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://csharpkeylogger.cs.ohost.de/3E/streamit" + counter.ToString() + ".png");   //bin mir nicht sicher ob der Server Name so stimmt über Filezilla geht es mit ftp.drivehq.com schon.

                request.Method = WebRequestMethods.Ftp.UploadFile;


                // This example assumes the FTP site uses anonymous logon.
                request.Credentials = new NetworkCredential(benutzername, passwort);

                // Copy the contents of the file to the request stream.
                StreamReader sourceStream = new StreamReader("C:\\Users\\Anonym\\Desktop\\streamit" + counter.ToString() + ".png");
                byte[] fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd());
                sourceStream.Close();
                request.ContentLength = fileContents.Length;

                Stream requestStream = request.GetRequestStream();
                requestStream.Write(fileContents, 0, fileContents.Length);
                requestStream.Close();

                FtpWebResponse response = (FtpWebResponse)request.GetResponse();



                response.Close();
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 06.03.11 17:03 
UTF8? Bei einer Binärdatei?
Wenn da jetzt zufällig Zeichen drin sind, die nach UTF8 aussehen, werden die eventuell umgewandelt. Ich weiß nicht was C# an der Stelle eigentlich macht.

Hast du denn einmal die hochgeladene Datei mit der echten verglichen?
cemolade Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26



BeitragVerfasst: So 06.03.11 17:12 
stimmt ! ich hab das einfach nur aus meinem txt-upload-test-programm stur rein kopiert^^

habs mal auf default gestellt, selbes problem.
wenn ich die datei über den filezilla öffnen will, gehts nicht. dateiformat wird in der fotoanzeige nicht unterstützt

komisch..
was kann ich tun?
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 06.03.11 17:18 
Lade die Datei doch einfach wieder herunter und vergleiche die beiden. ;-)
Zum Beispiel mit HxD.

Was mir gerade auffällt: Du setzt UseBinary nirgends auf true. Du willst doch aber eine solche Datei übertragen. :idea:
cemolade Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26



BeitragVerfasst: So 06.03.11 17:36 
hab usebinary auf true gesetzt, gleich nachdem ich den FtpWebRequest deklariere, aber es funktioniert trotzdem nicht ):

wisst ihr noch was?
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: So 06.03.11 18:09 
user profile iconcemolade hat folgendes geschrieben Zum zitierten Posting springen:
habs mal auf default gestellt, selbes problem.
Encoding.Default? Das ist immer noch Text...
Wie wäre es mit WebClient.UploadFile?

_________________
>λ=
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 06.03.11 18:16 
Sollte es nicht auch direkt mit den beiden Streams gehen?
msdn.microsoft.com/e...ibrary/dd783870.aspx
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
                // Copy the contents of the file to the request stream.
                StreamReader sourceStream = new StreamReader("C:\\Users\\Anonym\\Desktop\\streamit" + counter.ToString() + ".png");
                Stream requestStream = request.GetRequestStream();
                sourceStream.CopyTo(requestStream);
                requestStream.Close();

                FtpWebResponse response = (FtpWebResponse)request.GetResponse();

                response.Close();
cemolade Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26



BeitragVerfasst: So 06.03.11 19:44 
@jaenicke gibt kein CopyTo

@Kha uhm, das wusste ich nicht, stimmt^^ aber wo mach ich das mit webclient.uploadfile? statt encoding.default?
gibts leider nicht =/
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: So 06.03.11 19:56 
user profile iconcemolade hat folgendes geschrieben Zum zitierten Posting springen:
@jaenicke gibt kein CopyTo
Du solltest angeben, wenn du nicht mit 4.0 arbeitest.

user profile iconcemolade hat folgendes geschrieben Zum zitierten Posting springen:
@Kha uhm, das wusste ich nicht, stimmt^^ aber wo mach ich das mit webclient.uploadfile?
Hu. Darf ich annehmen, dass du dir nicht einmal die Hilfe zu der Methode angeschaut hast? Einen Tipp gebe ich dir: Sie ersetzt deinen ganzen bisherigen Upload-Code.

Zitat:
csharpkeylogger.cs.ohost.de
Müssen wir uns eigentlich Sorgen machen :gruebel: ?

_________________
>λ=
cemolade Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26



BeitragVerfasst: Mi 09.03.11 17:42 
hey
kann ich um ein bild upzuloaden den streamreader überhaupt verwenden? brauch ich da nicht sowas wie den binaryreader?

ich arbeite schon mit 4.0? wenn ich auf properties gehe rechts im projektmappenexplorer, dann zeigt er mir netframework 4.0 an.

und nein das ist ein harmloser ftp server mit einem dummen namen^^ kannst ja mal rauf schaun xD


Zuletzt bearbeitet von cemolade am Mi 09.03.11 19:13, insgesamt 1-mal bearbeitet
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 09.03.11 18:08 
Stimmt :oops:, aber mit einem FileStream statt einem reinen StreamReader sollte es klappen. :idea:
cemolade Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26



BeitragVerfasst: Mi 09.03.11 19:22 
mh das geht glaub ich auch nicht.. kennt sich wer mit dem filestream aus? hab da probleme mit den parametern..
aber naja wie funktioniert das denn mit CopyTo? geht das so einfach? und wieso wird das bei mir nicht angeziegt?

bei der onlinehilfe zu CopyTo steht, dass es einfach dateien in ein verzeichnis kopiert, kann ich da einfach die adresse von einem ftp server angeben ? o.O

bitte kann mir wer helfen..?
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 09.03.11 20:37 
user profile iconcemolade hat folgendes geschrieben Zum zitierten Posting springen:
mh das geht glaub ich auch nicht.. kennt sich wer mit dem filestream aus? hab da probleme mit den parametern..
Was ist da das Problem? Steht doch in der Doku was du da z.B. hinschreiben musst: :gruebel:
msdn.microsoft.com/d...ibrary/47ek66wy.aspx
Einmal den Dateinamen und einmal FileMode.Open um die Datei zu öffnen.

user profile iconcemolade hat folgendes geschrieben Zum zitierten Posting springen:
bei der onlinehilfe zu CopyTo steht, dass es einfach dateien in ein verzeichnis kopiert
Öh... :gruebel:
Wo steht das? Nicht in dem Link zur Doku zu dem Befehl, den ich oben gepostet habe jedenfalls... :roll:
Ich vermute du bist in irgendeiner Datei- oder Verzeichnisklasse über einen gleichnamigen Befehl gestolpert.