You are not logged in.


Takeru

Neuer Clubber

  • "Takeru" started this thread

Posts: 48

Location: Österreich

  • Send private message

1

Thursday, May 22nd 2008, 11:37pm

FTP-Verbindung

Wie Verbinde ich mein Programm mit einem FTP Server?
Nach dieser Frage habe ich selbst lange gesucht. Jetzt will ich aber andere helfen die selbst die Frage versuchen zu beantworten.
Die Lösung heißt WinInt mit WinApi. Jedoch funktioniert es nur mit Windows.
Ich habe es nur mit Dev-Cpp überprüft, ob es wo anderes funktioniert, habe ich keine Ahnung.

1. Schritt - Lib.
Geh in denn Ordner von Dev-Cpp. Bei mir ist es C:\Dev-Cpp.
Von hier in denn Ordner lib und sucht nach libwininet.a.
Habt ihr sie nicht, keine Sorge.
Hier könnt ihr sie downloaden: HIER
Diese Datei downloadet einfach in C:\Dev-Cpp\lib.
Falls ihr die Datei schon drinnen habt, auch ok.

2. Schritt - Header Datei
Zurück in denn Hauptordner geht ihr in denn Ordner include.
Dort sucht nach der Datei wininet.h.
Habt ihr sie, ok. Wenn nicht wieder downloaden: HIER
Und in denn include Ordner.

3. Schritt - Projekt erstellen
Ihr erstellt ein Projekt in Dev-Cpp und gibt ihn ein ganz normalen Namen.
Geht ob in der Menüleiste auf Projekt/Projekt-Einstellungen.
Ein Fenster geht auf. Dort dann auf Parameter.
Rechts unten auf denn Button und die Datei libwininet.a suchen und eingeben.

4. Schritt - Inhalt

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <wininet.h>

void download(char a[500]);
void upload(char a[500]);

char ip[] = "11.111.111.11";  // IP-Nummer des Servers
char name[] = "username";              // Username des Servers
char pass[] = "passwort";              // Passwort des Servers

int main()
{
    download("datei1.txt");         // Hier holl ich mir die datei1.txt vom Server
    upload("datei2.txt");           // Hier lade ich die datei2.txt hoch
    
    return 0;
}

void download(char a[500])
{
    HINTERNET hOpen, hConnection;
    hOpen = InternetOpen("ftp", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
    hConnection = InternetConnect(hOpen, ip, INTERNET_DEFAULT_FTP_PORT,
                                     name, pass, INTERNET_SERVICE_FTP, 0, 0);
     
    FtpGetFile(hConnection, a, a,
                  FALSE, FILE_ATTRIBUTE_ARCHIVE, FTP_TRANSFER_TYPE_BINARY, 0);
                 
    InternetCloseHandle(hConnection);
    InternetCloseHandle(hOpen);
}

void upload(char a[500])
{
    HINTERNET hOpen, hConnection;
    hOpen = InternetOpen("ftp", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
    hConnection = InternetConnect(hOpen, ip, INTERNET_DEFAULT_FTP_PORT,
                                     name, pass, INTERNET_SERVICE_FTP, 0, 0);
     
    FtpPutFile(hConnection, a, a,
                  FTP_TRANSFER_TYPE_BINARY, 0);
                 
    InternetCloseHandle(hConnection);
    InternetCloseHandle(hOpen);
}

Für Fragen beantworte ich gerne die Fragen!

Mit freundlichen Grüße
Takeru

Natureshadow

Stamm Clubber

Posts: 380

Location: Bergisches Land

Occupation: Student BSc Informationstechnologie

  • Send private message

2

Friday, May 23rd 2008, 5:15pm

Hallo,

danke für deinen Code!

Ich denke, der Code ist nicht IDE- oder Compilerabhängig und sollte auch mit z.B. Micro$oft Visual C++ funktionieren.

Grüße,
Nik
There are 10 types of people:
Those who understand binary and those who don't.

ogl_dev

Moderator

Posts: 1,722

Location: TG - Schweiz

Occupation: Informatikstudent ETH Zürich

  • Send private message

3

Friday, May 23rd 2008, 7:11pm

Hallo,

Ich finde es falsch, Dateien einzeln zum Download bei einem Filehoster anzubieten.

1.) Nach 14-tägigem nicht betrachten ist die Datei weg. Niemand mehr kann mit dem Thread etwas anfangen.
2.) Wie sieht es aus mit der Lizenz?

Daher: Originalquellen angeben!

mfg, ogl_dev

Natureshadow

Stamm Clubber

Posts: 380

Location: Bergisches Land

Occupation: Student BSc Informationstechnologie

  • Send private message

4

Friday, May 23rd 2008, 8:59pm

Ist mir nicht aufgefallen. ogl_dev hat Recht ...
There are 10 types of people:
Those who understand binary and those who don't.

Takeru

Neuer Clubber

  • "Takeru" started this thread

Posts: 48

Location: Österreich

  • Send private message

5

Saturday, May 24th 2008, 12:57am

Ich kann gern die Datein auf meinem Server hochladen und drauf lassen.
Mach ich dann auch gleich sobald ich weis was eine Lizenz ist *rot werd*.

-----------------------------------------------------------------

Eine Lizenz ist eine Erlaubniss etwas verbotenes zu tun.
Programmieren ist verboten? Kann ich mir nicht vorstellen.
Woher bekomm ich so eine Lizenz? Kostet die etwas?

------------------------------------------------------------------

Die Originalquelle kann ich nicht mehr angeben die war eine japanische(jedenfalls eine Seite aus der ich nur denn Code lesen konnte) Seite und die Adresse kenn ich nicht mehr. Und denn Code hab ich auch etwas geändert. Also die Klassen hab ich programmiert und FtpPutFile hab ich aus WinInet.h heraus.

Mehr kann ich nicht sagen..

Mit freundlichen Grüße
Takeru

Natureshadow

Stamm Clubber

Posts: 380

Location: Bergisches Land

Occupation: Student BSc Informationstechnologie

  • Send private message

6

Saturday, May 24th 2008, 1:54am

Hallo,

die verwendete Bibliothek muss frei zugänglich sein und wir brauchen eine Quellenangabe. Google kann evtl. helfen ...

-nik
There are 10 types of people:
Those who understand binary and those who don't.

Takeru

Neuer Clubber

  • "Takeru" started this thread

Posts: 48

Location: Österreich

  • Send private message

7

Saturday, May 24th 2008, 2:41am

Hab die Quelle wieder: http://www11.plala.or.jp/studyhall/cppftp/page03.html

Und die Bibliothek kann auch durch Dev-Cpp heruntergeladen werde:

Auf Tools/Werkzeuge, Auf Update/Pakete prüfen, Server devpaks.org auswählen, link unten Button aktivieren ,in der Liste nach WinInet suchen und Kontrollkästchen aktivieren und zum Schluss wieder links unten auf Button.

So müsst ihr nicht denn Filehoster benutzten.

Rolf

Moderatorenleitung

Posts: 1,073

Location: Tessin (Schweiz)

Occupation: *

  • Send private message

8

Saturday, May 24th 2008, 8:55am

Hallo

Quoted

Original von Takeru
Mach ich dann auch gleich sobald ich weis was eine Lizenz ist *rot werd*.

Eine Lizenz ist eine Erlaubniss etwas verbotenes zu tun.
Programmieren ist verboten? Kann ich mir nicht vorstellen.
Woher bekomm ich so eine Lizenz? Kostet die etwas?
Takeru


Wenn jemand ein Programm schreibt steht das unter seinem Urheberrecht. Andere dürfen das nicht einfach kopieren (Ausnahme unten). In der Lizenz wird unter anderem festgelegt unter welchen Bedingungen das Programm benutzt werden darf.

Trivialprogramme (z.B. HalloWelt) sind nicht geschützt. Programme aus Büchern sind, sofern nichts anderes angegeben ist, Public Domain.

Gruss Rolf
Wenn Du entdeckst, dass Du ein totes Pferd reitest, steig ab. Weisheit der Dakota Indianer

Natureshadow

Stamm Clubber

Posts: 380

Location: Bergisches Land

Occupation: Student BSc Informationstechnologie

  • Send private message

9

Saturday, May 24th 2008, 10:54am

Hallo Takeru,

die Quelle für die Bibliothek ist damit schonmal ok. Bitte bearbeite deinen Originalbeitrag dementsprechend.

Bitte sage uns dann noch, welche Teile des Codes "abgeschrieben" sind und was du davon selber verfasst hast.

Da niemand hier (wahrscheinlich) die verlinkte Website lesen kann, wird es schwer, die Lizenz des Codes zu finden.

Grüße,
Nik
There are 10 types of people:
Those who understand binary and those who don't.

Sebigboss

Neuer Clubber

Posts: 149

Location: Stuttgart

Occupation: Informatikstudent

  • Send private message

10

Monday, September 22nd 2008, 12:02am

Ich kann etwas japanisch, und auf der Seite steht nichts von einer Lizenz. Was aber auch nicht verwunderlich ist, weil die verwendete Bibliothek von Microsoft zur Verfügung gestellt wird (WinINet). Daher sollten bei der Verwendung dieser Bibliothek keine lizenzrechtlichen Konsequenzen drohen (solange man die Original-libs verwendet).

mfg sebigboss
Der Wille ist der Weg zum Ziel. Lenke deinen Willen, und du lenkst dein Schicksal!

Social bookmarks

Rate this thread