Datei mit Word speichern und automatisch auf FTP uploaden

Für allgemeine Fragen zur Programmierung mit PureBasic.
smateja
Beiträge: 250
Registriert: 25.11.2004 19:51
Computerausstattung: Alienware Aurora / Intel Core i7 CPU @ 2.8 GHz / 64 Bit OS

Datei mit Word speichern und automatisch auf FTP uploaden

Beitrag von smateja »

Hallo zusammen,

ich hoffe mal wieder auf die tatkräftige Unterstützung der Community und Ideenreichtum :)
Folgender Gedanken schwirrt mir durch den Kopf:

Ist es denn technisch realisierbar eine Datei automatisiert über PB von einem FTP herunter zu laden - dann in Word öffnen zu lassen (kein Ding - nicht das Problem) - nach einem Speichervorgang automatisiert wieder zum FTP Server hoch zu laden? Geht schon quasi in die Sharepoint-Funktionalität.

Hat hier evtl. jemand eine Idee - oder ist dies so überhaupt realisierbar?

Danke im Voraus für das kreative Mitdenken.

LG
PB 4.6 / 32 Bit / 64 Bit
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7028
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Datei mit Word speichern und automatisch auf FTP uploade

Beitrag von STARGÅTE »

Jo ist ganz einfach:

In PureBasic kannst mit GetFileDate(Dateiname$, #PB_Date_Modified) alle 1000ms das Änderungsdatum deiner Word-Datei abfragen.
Sobalt sich dann die aktuelle Wert und der vorherige unterscheiden (datei wurde gespeichert) kannst du den PB-Befehl für den Upload geben.

Allerdings weiß ich nicht genau, ob Word das nicht verhindert, da die datei ja noch geöffnet ist (habe da immer Probleme beim verschicken), müsstest du mal ausprobieren.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
Bisonte
Beiträge: 2465
Registriert: 01.04.2007 20:18

Re: Datei mit Word speichern und automatisch auf FTP uploade

Beitrag von Bisonte »

Dazu müsste man ja den Dateinamen wissen... würde es nicht reichen, das Verzeichnis auf Änderung zu testen ?
Da war doch in RSBasics WinAPI Snippets soetwas... sobald da sich was ändert, ist der Dateiname bekannt und den dann hochladen...
PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom​​
Nino
Beiträge: 1300
Registriert: 13.05.2010 09:26
Wohnort: Berlin

Re: Datei mit Word speichern und automatisch auf FTP uploade

Beitrag von Nino »

STARGÅTE hat geschrieben:Allerdings weiß ich nicht genau, ob Word das nicht verhindert, da die datei ja noch geöffnet ist (habe da immer Probleme beim verschicken)
Wen man Word mit RunProgram() und dem Flag #PB_Program_Wait aufruft, sollte dieses Problem eigentlich nicht auftreten, oder?
PB-Hilfe hat geschrieben:#PB_Program_Wait : Wartet bis das gestartete Programm beendet wird
Bisonte hat geschrieben:Dazu müsste man ja den Dateinamen wissen
smateja hat geschrieben:Ist es denn technisch realisierbar eine Datei automatisiert über PB von einem FTP herunter zu laden - dann [...]
Wenn man die Datei zuvor selbst mit PB heruntergeladen hat, sollte der Dateiname bekannt sein. ;-)

Grüße, Nino
Nino
Beiträge: 1300
Registriert: 13.05.2010 09:26
Wohnort: Berlin

Re: Datei mit Word speichern und automatisch auf FTP uploade

Beitrag von Nino »

Ich habe das jetzt mal mit einer HTML-Datei gemacht, weil ich keine Lust hatte, erst eine Word-Datei zu erzeugen und hochzuladen. Funktioniert hier prima. Das ist das erste Mal dass ich etwas mit FTP programmiere, daher sind Optimierungen evtl. möglich. :)

Code: Alles auswählen

EnableExplicit

Define FtpServer$, FtpUser$, FtpPassWord$
Define FtpDir$, FtpFileName$, LocalDir$, LocalPath$
Define ftp

;-----------------------------------------------------------
; Folgendes individuell anpassen:
FtpServer$   = "xxx"
FtpUser$     = "xxx"
FtpPassWord$ = "xxx"

FtpDir$      = "xxx"
FtpFileName$ = "index.htm"
LocalDir$    = "T:\Desktop\"
;-----------------------------------------------------------

InitNetwork()

ftp = OpenFTP(#PB_Any, FtpServer$, FtpUser$, FtpPassWord$)
If ftp = 0   
   Debug "Konnte 1. FTP-Verbindung nicht aufbauen."
   End
EndIf

If SetFTPDirectory(ftp, FtpDir$) = 0
   Debug "FTP-Verzeichniswechsel fehlgeschlagen."
   CloseFTP(ftp)
   End
EndIf

LocalPath$ = LocalDir$ + FtpFileName$

If ReceiveFTPFile(ftp, FtpFileName$, LocalPath$) = 0
   Debug "FTP-Download fehlgeschlagen."
   CloseFTP(ftp)
   End
EndIf
CloseFTP(ftp)

If RunProgram(LocalPath$, "", "", #PB_Program_Wait) = 0    ; wartet, bis das betr. Programm beendet ist
   Debug "Konnte lokale Datei '" + LocalPath$ + "' nicht öffnen."
   End
EndIf

ftp = OpenFTP(#PB_Any, FtpServer$, FtpUser$, FtpPassWord$)
If ftp = 0   
   Debug "Konnte 2. FTP-Verbindung nicht aufbauen."
   End
EndIf

If SetFTPDirectory(ftp, FtpDir$) = 0
   Debug "FTP-Verzeichniswechsel fehlgeschlagen."
   CloseFTP(ftp)
   End
EndIf

If SendFTPFile(ftp, LocalPath$, "new_" + FtpFileName$) = 0   ; Nach dem Testen "new_" entfernen!
   Debug "FTP-Upload fehlgeschlagen."
   CloseFTP(ftp)
   End
EndIf
CloseFTP(ftp)

Debug "OK"
Grüße, Nino
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8807
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: Datei mit Word speichern und automatisch auf FTP uploade

Beitrag von NicTheQuick »

Denk nur dran, dass Nutzername und Passwort später als Klartext in der EXE-Datei steht. Also gib die EXE nicht in falsche Hände.
Benutzeravatar
Bisonte
Beiträge: 2465
Registriert: 01.04.2007 20:18

Re: Datei mit Word speichern und automatisch auf FTP uploade

Beitrag von Bisonte »

NicTheQuick hat geschrieben:Denk nur dran, dass Nutzername und Passwort später als Klartext in der EXE-Datei steht. Also gib die EXE nicht in falsche Hände.
Das sollte man doch eh den User bestimmen lassen... (sprich per ini oder sowas nachladen)
fest würd ich da gar nix machen ;)

Allerdings wartet er jetzt auf das beenden des programms... wenn ich aber bloss speicher und dann ein neues öffne um es zu
bearbeiten haben wir ein problem ....
PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom​​
Nino
Beiträge: 1300
Registriert: 13.05.2010 09:26
Wohnort: Berlin

Re: Datei mit Word speichern und automatisch auf FTP uploade

Beitrag von Nino »

Bisonte hat geschrieben:Allerdings wartet er jetzt auf das beenden des programms... wenn ich aber bloss speicher und dann ein neues öffne um es zu
bearbeiten haben wir ein problem ....
Na ja, das war ja nur ein erster schneller Grob-Entwurf. Nun kann man das ja weiter verfeinern. :-)

Grüße, Nino
Antworten