Datein umbennen (auf Server)

Anfängerfragen zum Programmieren mit PureBasic.
fredipedri
Beiträge: 9
Registriert: 09.03.2009 10:00

Datein umbennen (auf Server)

Beitrag von fredipedri »

Hallo ich bin amverzweifeln und hoffe ihr könnt mir weiterhelfen.
Ich möchte Datein auf einem Server umbennen(.txt in .sav)
das funktioniert auch aber nur auf meinem lokalen Rechner.
Ich habe durch rumgooglen einen code gefunden der aber leider in vb 6.0 geschrieben ist und ich nur vb 2005 verstehe.
kann mir jemadn helfen den code zu verstehen?

Code: Alles auswählen

'Transfer-Batch Einlagerung schreiben
PfadUndDatei = MdbPath & "FTPEIN.BAT"
Open PfadUndDatei For Output As #1
InpRcd = "@echo off"
Print #1, InpRcd
InpRcd = " "
Print #1, InpRcd
InpRcd = "ftp -s:" & Trim(MdbPath) & "ftpein.ftp " & Trim(txt_UPing) & " | find " & Chr$(34) & "226" & Chr$(34) & ">NUL"
Print #1, InpRcd
InpRcd = "IF ERRORLEVEL 1 goto end"
Print #1, InpRcd
InpRcd = " "
Print #1, InpRcd
InpRcd = ":end"
Print #1, InpRcd
InpRcd = "exit"
Print #1, InpRcd
Close #1

'Transfer-Script Einlagerung schreiben
Textdatei = "Test1.txt“
Savdatei = "Test1.sav“
PfadUndDatei = MdbPath & "FTPEIN.FTP"
Open PfadUndDatei for Output As #1
InpRcd = Trim(txt_UUser)
Print #1, InpRcd
InpRcd = Trim(txt_UPass)
Print #1, InpRcd
InpRcd = "ascii"
Print #1, InpRcd
InpRcd = "get “ & Trim(Textdatei) & " "  & Trim(DataPath) & Trim(Textdatei)
Print #1, InpRcd
InpRcd = "ren " & Trim(Textdatei) & “ “ & Trim(Savdatei)
Print #1, InpRcd
InpRcd = "quit"
Print #1, InpRcd
Close #1

Ergebnis = Shell(MdbPath & "FTPEIN.BAT, vbHide)
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Datein umbennen (auf Server)

Beitrag von Kiffi »

@fredipedri:

RenameFTPFile() dürfte der Befehl sein, den Du suchst.

Grüße ... Kiffi
a²+b²=mc²
fredipedri
Beiträge: 9
Registriert: 09.03.2009 10:00

Beitrag von fredipedri »

danke dir für die super schnelle antwort!
und diesen Teil kann ich so lassen oder?:

Code: Alles auswählen

Open PfadUndDatei For Output As #1
InpRcd = "@echo off"
Print #1, InpRcd
InpRcd = " "
Print #1, InpRcd
InpRcd = "ftp -s:" & Trim(MdbPath) & "ftpein.ftp " & Trim(txt_UPing) & " | find " & Chr$(34) & "226" & Chr$(34) & ">NUL"
Print #1, InpRcd
InpRcd = "IF ERRORLEVEL 1 goto end"
Print #1, InpRcd
InpRcd = " "
Print #1, InpRcd
InpRcd = ":end"
Print #1, InpRcd
InpRcd = "exit"
Print #1, InpRcd
Close #1 
damit schreib ich doch in die Batch datei doer?
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

fredipedri hat geschrieben:und diesen Teil kann ich so lassen oder?
diesen Code brauchst Du gar nicht.

Vorgehensweise:

Mit FTP verbinden -> OpenFTP()
In das gewünschte Verzeichnis wechseln -> SetFTPDirectory()
Datei umbenennen -> RenameFTPFile()
FTP-Verbindung beenden -> CloseFTP()

Grüße ... Kiffi
a²+b²=mc²
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

fredipedri hat geschrieben:danke dir für die super schnelle antwort!
Anscheinend war Sie für dich nicht verständlich.
Drück mal wenn du in der PureBasic IDE bist die Taste F1 auf deiner Tastatur. Dann kommt die Befehlsreferenz von PureBasic. Dort schaust du unter "Ftp". Hier sind alle Befehle (Unter anderem auch RenameFTPFile) aufgelistet die PureBasic für eine Ftp Verbindung bietet. Unten siehst du dort noch einen Link zu einem allgemeinen Beispiel.

Bild

Hier ist das Beispiel (Nur für den Fall, dass du bei den letzten Schritten nicht mitgekommen bist):

Code: Alles auswählen

;
; ------------------------------------------------------------
;
;   PureBasic - Ftp example file
;
;    (c) Fantaisie Software
;
; ------------------------------------------------------------
;

InitNetwork()

If OpenFTP(0, "127.0.0.1", "test", "test", 0)

  Result = SendFTPFile(0, OpenFileRequester("Choose a file to send", "", "*.*", 0), "purebasic_sent.file", 1)
  
  Repeat
    Debug FTPProgress(0)
    Delay(300)
  Until FTPProgress(0) = -3 Or FTPProgress(0) = -2

  Debug "finished"
  
Else
  MessageRequester("Error", "Can't connect to the FTP server")
EndIf
[EDIT]

Achja ich hab grad bemerkt, dass du wohl Visual Basic programmierst und nicht PureBasic:

http://www.softgames.de/forum/viewtopic.php?t=125907

Desshalb bist du hier wohl falsch.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
fredipedri
Beiträge: 9
Registriert: 09.03.2009 10:00

Beitrag von fredipedri »

danke:)

meint ihr so?
tut mir leid ich hab sowas noch nie gemacht :mrgreen:

Procedure FTP()
InitNetwork()
OpenFTP(0, "server", "test", "test" , 1, 21)
SetFTPDirectory(0, "Temp")
CreateFTPDirectory(0, Ordner.s)
SetFTPDirectory(0, Ordner.s)
d$ = "0"
For a = 1 To Down
d$ = Str(Val(d$)+1)
SendFTPFile(0, "\\server")
Next
CloseFTP(0)


und was mach ich mit der shell?
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

fredipedri hat geschrieben:tut mir leid ich hab sowas noch nie gemacht :mrgreen:
kein Thema! Jeder hat mal irgendwann angefangen. Allerdings dürfen wir
von Dir erwarten, dass Du die Antworten auch durchliest.
Kiffi hat geschrieben:Datei umbenennen -> RenameFTPFile()

Code: Alles auswählen

InitNetwork()
Procedure FTP()
  If OpenFTP(0, "server", "test", "test" , 1, 21)
    If SetFTPDirectory(0, "DeinDirectory")
      If RenameFTPFile(0, "AlterName", "NeuerName")
      Else
        Debug "RenameFTPFile fehlgeschlagen"
      EndIf
    Else
      Debug "SetFTPDirectory fehlgeschlagen"
    EndIf
    CloseFTP(0)
  Else
    Debug "OpenFTP fehlgeschlagen"
  EndIf
EndProcedure
Und wie DarkDragon schon anmerkte: Die Bedeutung der einzelnen
Befehle kannst Du Dir auch in der PB-Hilfe (F1) durchlesen.

Grüße ... Kiffi
a²+b²=mc²
fredipedri
Beiträge: 9
Registriert: 09.03.2009 10:00

Beitrag von fredipedri »

ich habe mir eure beträge durch gelesen.
und langsam versteh ich sie auch :D

also ich mach fdp auf und verbinde mich auf den server, dann nen ich die datei um.
nur was versteh ich darunter?

Code: Alles auswählen

If OpenFTP(0, "server", "test", "test" , 1, 21) 
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

fredipedri hat geschrieben:nur was versteh ich darunter?

Code: Alles auswählen

If OpenFTP(0, "server", "test", "test" , 1, 21) 
damit öffnest Du eine Verbindung zu Deinem FTP-Server.

Grüße ... Kiffi
a²+b²=mc²
fredipedri
Beiträge: 9
Registriert: 09.03.2009 10:00

Beitrag von fredipedri »

ja des hab ich verstanden:)

doch was bedeutet das in der Klammer?
Antworten