Hinweise zum neuen Forum
Zur Homepage des Deutschsprachige Xbase-Entwickler e. V.
Xbase++-Wiki des Deutschsprachige Xbase-Entwickler e. V.

Filecopy XbTools

Alle Fragen um die Programmierung, die sich sonst nicht kategorisieren lassen. Von Makro bis Codeblock, von IF bis ENDIF

Moderator: Moderatoren

Antworten
ramses
1000 working lines a day
1000 working lines a day
Beiträge: 588
Registriert: Mi, 28. Jul 2010 17:16

Filecopy XbTools

Beitrag von ramses » Di, 30. Nov 2010 10:56

Guten Morgen

nachdem sich eine App die Monate lang einwandfrei funktioniert hat auf einmal ohne Fehlermeldung einfach beendet bin ich nach längerem suchen der Meinung das Problem liegt in der Funktion Filecopy der Tools.

Wird versucht ein File mit Leerzeichen zu kopieren z.B. "20101129094BA7_Einlesen Excellisten.pdf" legt Filecopy als Ziel nur eine 0 Byte Datei an und das Programm beendet sich entweder sofort oder bei dem filecopy() folgenden Befehl/Zeile ohne irgendeine Meldung.

Sind keine Leerzeichen im Filename funktionierts einwandfrei.

Kennt jemand dieses "Leerzeichenproblem"


Grüsse Carlo

UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2421
Registriert: Fr, 10. Feb 2006 10:51
Wohnort: Aachen
Kontaktdaten:

Re: Filecopy XbTools

Beitrag von UliTs » Di, 30. Nov 2010 11:00

Hallo Carlo,
ich setze zwar die XbTools nicht ein, vielleicht hilft aber

Code: Alles auswählen

cFileName := "'20101129094BA7_Einlesen Excellisten.pdf'"
Das heißt: in den String des Dateinamens zusätzlich zu Beginn und am Ende ein ' schreiben.

Uli
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück

Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1816
Registriert: Do, 09. Nov 2006 11:33
Wohnort: Bergheim
Kontaktdaten:

Re: Filecopy XbTools

Beitrag von Rolf Ramacher » Di, 30. Nov 2010 11:06

Hallo Carlo,

ich setzte Copy File() ein.
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 10381
Registriert: Do, 16. Mär 2006 8:55
Wohnort: Hamburg

Re: Filecopy XbTools

Beitrag von AUGE_OHR » Di, 30. Nov 2010 11:39

hi,
ramses hat geschrieben:Kennt jemand dieses "Leerzeichenproblem"
Uli sagte es ja schon, man muss den String "einschliessen".
auch bei anderen Function z.b. RunShell() gibt es sonst das "Leerzeichenproblem".

Code: Alles auswählen

RunShell(CHR(34)+SP_PLAYLAST()+CHR(34),"CUTTER.EXE",.T.,.F.)
gruss by OHR
Jimmy

ramses
1000 working lines a day
1000 working lines a day
Beiträge: 588
Registriert: Mi, 28. Jul 2010 17:16

Re: Filecopy XbTools

Beitrag von ramses » Di, 30. Nov 2010 12:32

Hi,

Leider geht der mit dem einschliessen des Filenamens mit ' nicht, dann wird nichts kopiert.

Es ist mir ein Rätsel ....

UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2421
Registriert: Fr, 10. Feb 2006 10:51
Wohnort: Aachen
Kontaktdaten:

Re: Filecopy XbTools

Beitrag von UliTs » Di, 30. Nov 2010 13:06

Vielleicht ist es auch umgekehrt: Vertausch mal ' mit ".
Klappt es dann?

Uli
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 10381
Registriert: Do, 16. Mär 2006 8:55
Wohnort: Hamburg

Re: Filecopy XbTools

Beitrag von AUGE_OHR » Di, 30. Nov 2010 18:21

ramses hat geschrieben:das Problem liegt in der Funktion Filecopy der Tools.
ok mal was "ganz anderes" : warum die Tools Function ?
wenn du die Win-API ShFile
ShFile.zip
ShFile API :
Copy, Move, Rename, Delete
Need Alaska BAP or ot4XB
(4.11 KiB) 92-mal heruntergeladen
benutzt hast du auch gleich die "richtige" optische Darstellung je nach OS()
gruss by OHR
Jimmy

ramses
1000 working lines a day
1000 working lines a day
Beiträge: 588
Registriert: Mi, 28. Jul 2010 17:16

Re: Filecopy XbTools

Beitrag von ramses » Do, 02. Dez 2010 19:55

Hallo

eine nachvollziebare Erklährung fehlt mir zwar, aber nach einer Neuistallation von Xbase und den Tools und anschliessendem neu Compilieren und Linken ist das Problem beseitigt. FileCopy() kopiert wieder einwandferei auch Dateinamen mit Leerzeichen.

Danke für eure Tips.

@Auge_Ohr
Ich nutze die Tools seit Jahren, habe mir auch schon überlegt auf Sie zu verzichten und einige Versuche gemacht, jedoch ist es nicht ganz einfach diese zu ersetzten ohne für die vielen benutzten Funktionen Ersatzfunktionen zu schreiben und diese dann noch mit allen Projekten zu testen. Ich habe es dann aufgegeben und beschlossen bei den Tools zu bleiben. Neue Zusatz Tools / DLLS usw. nutzte ich nur sehr sehr zurückhaltend, zum einen wegen restriktiven Auflagen meiner Hauptkunden zum andern ist es einfacher mit bekanntem zu Arbeiten wo die Tücken/Probleme/Verhalten bekannt / erarbeitet ist. ...

Gruss Carlo

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 13601
Registriert: Mo, 23. Jan 2006 21:54
Wohnort: Germersheim
Kontaktdaten:

Re: Filecopy XbTools

Beitrag von brandelh » Fr, 03. Dez 2010 0:43

Nur so zur Info,

Code: Alles auswählen

COPY FILE (cSourceFile) TO (cTargetFile)
funktioniert bei mir einwandfrei, die Fehlende Rückmeldung kann man mit FEXISTS( , ??? ) erledigen.
Hierbei sind die Attributparameter wichtig (???), das steht in der Onlinehilfe.
Gruß
Hubert

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 10381
Registriert: Do, 16. Mär 2006 8:55
Wohnort: Hamburg

Re: Filecopy XbTools

Beitrag von AUGE_OHR » Fr, 03. Dez 2010 8:25

ramses hat geschrieben:eine nachvollziebare Erklährung fehlt mir zwar, aber nach einer Neuistallation von Xbase und den Tools und anschliessendem neu Compilieren und Linken ist das Problem beseitigt. FileCopy() kopiert wieder einwandferei auch Dateinamen mit Leerzeichen.
dann ist ja alles gut \:D/

komisch, auch ich habe es in der letzten Zeit öfter gehabt das ich die DLL komplett "ersetzen" musste weil "ganz komische" Fehlermeldungen auftauchten ... :-k
ramses hat geschrieben: Ich nutze die Tools seit Jahren, habe mir auch schon überlegt auf Sie zu verzichten und einige Versuche gemacht, jedoch ist es nicht ganz einfach diese zu ersetzten ohne für die vielen benutzten Funktionen Ersatzfunktionen zu schreiben und diese dann noch mit allen Projekten zu testen. Ich habe es dann aufgegeben und beschlossen bei den Tools zu bleiben. Neue Zusatz Tools / DLLS usw. nutzte ich nur sehr sehr zurückhaltend, zum einen wegen restriktiven Auflagen meiner Hauptkunden zum andern ist es einfacher mit bekanntem zu Arbeiten wo die Tücken/Probleme/Verhalten bekannt / erarbeitet ist. ...
ich versuche die "Tools" loszuwerden. viele Sachen sind ja für DOS / Novell und nicht unbedingt für eine Windows Umgebung.

Windows selbst bringt nun ja einige API´s mit die schon seit v3.x "gelten"
siehe dir doch mal die ShFile API an (benötigt BAP siehe Alaska).
Das ist "die" Schnittstelle die Windows OS() benutzt zu kopieren, moven, löschen etc.

es sieht doch "viel schöner" aus wenn du die Windows Animation wie "gewohnt" beim Kopieren hast.
gruss by OHR
Jimmy

ramses
1000 working lines a day
1000 working lines a day
Beiträge: 588
Registriert: Mi, 28. Jul 2010 17:16

Re: Filecopy XbTools

Beitrag von ramses » Fr, 03. Dez 2010 9:57

@Jimmy

teilweise hast du recht. Ich arbeite bei vielen Kunden noch mit Novell-Server. Leider funktionieren die Novell Funktionen der Tools mit Win7 nicht mehr. Schade eigentlich. Netware-Server ist Windows-Server noch immer um Meilen überlegen. Das die Netware Funktionen nicht mehr liefen war bei mir der Hauptgrund für die Enscheidung die Tools rauszuschreiben. Die Novell-Funktionen hab ich zwangsmässig durch Programmänderungen bereits ersetzt. Daneben benutze ich jedoch noch einige Datums-Funktionen, File-Funktionen und viele der String + Bit Funktionen. Da wurde es mir dann zu aufwendig die ganzen Funktionen die ich für String Bearbeitung verwende neu zu schreiben und zu testen. Beim Test meiner "Ersatz" Token-Funktionen musste ich dann feststellen das meine Ersatz-Token-Funktionen langsamer waren. Dann hab ich aufgegeben. Aus Sicht der Auflagen meiner Kunden könnte ich noch einige Zeit verwenden um die Tools loszuwerden, muss aber nicht. Vielleicht bin auch zu faul um das Rad neu zu erfinden.....

Gruss Carlo

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 10381
Registriert: Do, 16. Mär 2006 8:55
Wohnort: Hamburg

Re: Filecopy XbTools

Beitrag von AUGE_OHR » Fr, 03. Dez 2010 10:02

ramses hat geschrieben:Leider funktionieren die Novell Funktionen der Tools mit Win7 nicht mehr.
welchen Client ( Version ? )benutzt du ?
ramses hat geschrieben:Schade eigentlich. Netware-Server ist Windows-Server noch immer um Meilen überlegen.
=D>
gruss by OHR
Jimmy

ramses
1000 working lines a day
1000 working lines a day
Beiträge: 588
Registriert: Mi, 28. Jul 2010 17:16

Re: Filecopy XbTools

Beitrag von ramses » Fr, 03. Dez 2010 11:06

Hallo Jimmy

das war letzten Herbst der erste der rauskam. Die Tools versuchten auf eine DLL des Novell-Clients zuzugreifen die nicht vorhanden war, ich glaube das war prtwin32.dll.

Ich habe dann alle Funktionen der Tools auf die über XBTNETW.LIB zugegriffen wird aus meinen Programm entfernt und damit das Problem gelöst. Leider ging damit auch mein sehr wirkungsvoller "Kopierschutz", Abfrage der Server-Serial Nummer verloren.

Arbeitest du auch noch mit Novell-Server?

Gruss Carlo

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 10381
Registriert: Do, 16. Mär 2006 8:55
Wohnort: Hamburg

Re: Filecopy XbTools

Beitrag von AUGE_OHR » Fr, 03. Dez 2010 18:23

ramses hat geschrieben:das war letzten Herbst der erste der rauskam.
hm ... Herbst ist schon richtig, aber ich meine den NW-Client 2 für Windows 7.
da kam dieses Jahr 2010/10 der SP1 Client (IR4) raus siehe http://download.novell.com/Download?bui ... cQqWnz4kI~
ramses hat geschrieben:Die Tools versuchten auf eine DLL des Novell-Clients zuzugreifen die nicht vorhanden war, ich glaube das war prtwin32.dll.
YUP das ist die Datei die man benötigt.
ramses hat geschrieben:Ich habe dann alle Funktionen der Tools auf die über XBTNETW.LIB zugegriffen wird aus meinen Programm entfernt und damit das Problem gelöst.
Leider ging damit auch mein sehr wirkungsvoller "Kopierschutz", Abfrage der Server-Serial Nummer verloren.
ich habe meinen eigenen Novell "Wrapper" wo ich so was (zentral) abfangen kann

Code: Alles auswählen

#INCLUDE "OS.CH"
STATIC lIsNovell, nDLL
INIT PROCEDURE InitNovFunc
   LOCAL cDir
   lIsNovell := .F.
   // Je nach OS-Familie andere Einstellungen verwenden
   IF OS(OS_FAMILY) == "WINNT"
      cDir := TRIM(GetEnv("systemroot")) + "\system32"
   ELSE
      cDir := TRIM(GetEnv("winbootdir")) + "\system"
   ENDIF
   IF FEXISTS(cDir + "\prtwin32.dll")
      nDll := DLLLoad("xbtnetw.dll")
      lIsNovell := .T.
   ENDIF
RETURN

FUNCTION CnetSDate( cFileServer )
LOCAL dRet := DATE()
   IF lIsNovell
      // dRet := &("NnetSDate")( cFileServer )
      dRet := DllCall( nDll,, "NNETSDATE", cFileServer )
   ENDIF
RETURN dRet

FUNCTION CnetStime()
LOCAL cRet := TIME()
   IF lIsNovell
      // cRet := &("NnetStime")()
      cRet := DllCall( nDll,, "NNETSTIME")
   ENDIF
RETURN cRet

FUNCTION CnetSerNo( cFileServer )
LOCAL cRet := "08154711"
   IF lIsNovell
      // cRet := &("NnetSerno")( cFileServer )
      cRet := DllCall( nDll,, "NNETSERNO", cFileServer )
   ENDIF
RETURN cRet
...
ramses hat geschrieben:Arbeitest du auch noch mit Novell-Server?
YUP, auch noch "alte" v3.2x "aufgebohrt" auf 2.8Ghz, 768MB RAM, Promise UDMA100, 7200 RPM und zwei 3-Com 1Gbit (v4.x Treiber...) mit IPX/SPX.

Die NW-Server hängen zwischen den Windows Netzwerken und "trennen" diese (weil kein TCP/IP), aber mit dem NW-Client und IPX/SPX kommt jeder Workstation aus beiden Netzwerken (W2K3 / W2K8) an den "DBF Server".
gruss by OHR
Jimmy

ramses
1000 working lines a day
1000 working lines a day
Beiträge: 588
Registriert: Mi, 28. Jul 2010 17:16

Re: Filecopy XbTools

Beitrag von ramses » So, 05. Dez 2010 14:46

@Jimmy
mit "letzten Herbst" habe ich natürlich gemeint der erste Client der für Win7 rauskam. Ich habe jetzt noch den SP1 (IR1) bis zu diesem war die PrtWin32.DLL nicht enthalten. Auch der Import dieser von einem XP/Vista Client hat leider nicht funktioniert. Daher musste ich auf die XBTNETW.LIB verzichten.

Ist beim aktuellen (IR4) die PrtWin32.DLL enthalten oder wie hast du deinen Wrapper zum laufen gebracht?

Hofftentlich sind künfig weitere Clients für die Netware verfügbar, dass würde uns Netware noch eine weile erhalten. Ich habe ab Netware 2.0 alle Versionen durch. Viele viele Installiert und gewartet, leider war Netware immer so gut dass es sich von der Wartung nicht leben liess. Ich habe fast alle Netware Server bei Kunden nur 2 mal gesehen, bei der Installation und beim Austausch der Hardware... Leider war Novels Marketing Scheisse.... Selbst habe ich einen mit Netware 6.5 .

Ach ja, was war deine längste Up-Time die du gesehen hast? Meine war 735 Tage.


Gruss Carlo

Antworten

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot] und 1 Gast