| |
|
|
| Irre Yo mich oder podría Copy tiempos de UNCs ala \serverfolderfile kopieren - qué ahora con X10 no mehr va?! Vlt. ca. el Neuerung seit X9 con el Dateiattributen?
FileExists y assign hingegen haben kein Problema... |
|
|
| |
|
|
|
RGH | Während Yo früher el Copy en Delphi incluso geschrieben hatte, así benutze Yo wegen el Attributgeschichte seit 9.x el Windows-API. Das mag esta Änderung erklären. En Asignar, etc. baue Yo siempre todavía en sólido Handarbeit. ;) Daher solltest Usted con BlockRead/BlockWrite una Zweizeiler hinbekommen, de los Copy con alten Qualitäten (y Unzulänglichkeiten bezüglich el Atributos) hinbekommt.
Saludo Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 25.10.2006 ▲ |
|
|
|
|
| Jupp tener Yo tener me grad esta nen fcopy geschrieben: KompilierenMarcaSeparación
proc fcopy(from$,to$)
casenot fileexists(from$) : return false
var fmode&:=get("FileMode")
set("FileMode",2)
var fh&:=assign(from$)
if fh&
openrw fh&
var siz&:=getfilesize(fh&)
if siz&
declare mem#
dim mem#,siz&
var bytesRead&:=blockread(fh&,mem#,0,siz&)
closerw fh&
fh&:=assign(to$)
openrw fh&
blockwrite fh&,mem#,0,bytesRead&
closerw fh&
dispose mem#
else
closerw fh&
fh&:=assign(to$)
openrw fh&
closerw fh&
endif
assign fh&,""
endif
set("FileMode",fmode&)
return true
ENDPROC
Klappt nun otra vez bestens.
<offtopic> KompilierenMarcaSeparación
proc FCOPY
PARAMETERS FROM$,TO$
IFNOT FILEEXISTS(FROM$)
RETORNO 0
ENDIF
VAR FMODE&=GET("FileMode")
SET("FileMode",2)
VAR FH&=ASSIGN(FROM$)
IF FH&
OPENRW FH&
VAR SIZ&=GETFILESIZE(FH&)
IF SIZ&
DECLARE MEM#
DIM MEM#,SIZ&
VAR BYTESREAD&=BLOCKREAD(FH&,MEM#,0,SIZ&)
CLOSERW FH&
FH&=ASSIGN(TO$)
OPENRW FH&
BLOCKWRITE FH&,MEM#,0,BYTESREAD&
CLOSERW FH&
DISPOSE MEM#
ELSE
CLOSERW FH&
FH&=ASSIGN(TO$)
OPENRW FH&
CLOSERW FH&
ENDIF
ASSIGN FH&,""
ENDIF
SET("FileMode",FMODE&)
RETORNO 1
ENDPROC
</offtopic> |
|
|
| |
|
|
|
RGH | ... y el avanzado Funktionalität de XProfan 10 para BlockWrite/BlockRead es todavía dfeutlich kürzer en exakt gleicher Funktionalität: KompilierenMarcaSeparación Saludo Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 25.10.2006 ▲ |
|
|
|
|
| Dim mem#,0 führt doch aber para Choque... ^ ^
Irgendwie glaube Yo todavía me en cada Línea meiner Programmierungen algo esta pensamiento a haben ^ ^
El Conjunto-Geschickte hast Usted auch salvo Acht gelassen - son el Bemühungen en meiner Proc unnütz?
Su FCopy es dank el neuen XProfan10-Funktionalitäten (welche Yo wohl sólo todos todavía inne haben muß) trotzdem schicker. |
|
|
| |
|
|
|
Jörg Sellmeyer | Hab Yo ahora eigentlich algo verpasst? KompilierenMarcaSeparación David ha el Var auch ya des öfteren benutzt y yo pensamiento, el sei una XPSE-Feature. Aber wenns el Scheff selber ya benutzt El Ayuda sagt jedenfalls nichts dazu... Saludo Jörg |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 25.10.2006 ▲ |
|
|
|
|
| Probieren va encima studieren. |
|
|
| |
|
|
|
RGH | [quote:c5a4b2e81b=iF]Dim mem#,0 führt doch aber para Choque... ^ ^[/quote:c5a4b2e81b] Das debería zwar no para Choque führen, pero yo erweitere media Code oben entsprechend.
[quote:c5a4b2e81b]El Conjunto-Geschickte hast Usted auch salvo Acht gelassen[/quote:c5a4b2e81b] Posesiones Yo no. Relacionado con la Filemode macht aber ya BlockRead incluso.
Saludo Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 25.10.2006 ▲ |
|
|
|
|
| ¿Quieres decir que una Blockwrite schreibt auch si zuvor una sólo Lesen con Conjunto(FileMode... gesetzt es? |
|
|
| |
|
|
|
RGH | [quote:3bb5d4f872=iF]¿Quieres decir que una Blockwrite schreibt auch si zuvor una sólo Lesen con Conjunto(FileMode... gesetzt es?[/quote:3bb5d4f872] Sí, BlockWrite(Expediente) setzt el Filemode temporär en 2 y anschließend otra vez zurück. En BlockRead(Expediente) Puse ihn allerdings en Nur Lesen, en auch schreibgeschützte Archivos lesen a puede!
Apéndice: Das gilt natürlich sólo en el Varianten, wo lo en todo Archivos va! Ansonsten muß el FileMode vom Programmierer gesetzt voluntad, bevor él el Expediente me OpenRW öffnet.
Saludo Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 25.10.2006 ▲ |
|
|
|
|
| Ok verstehe.
Su obiges Ejemplo es aber siempre todavía no bastante korrekt ^ ^ - Archivos con el Größe de 0 Byte voluntad no kopiert... *duck* |
|
|
| |
|
|
|
Jörg Sellmeyer | [quote:1fed0361f8=iF]Probieren va encima studieren. [/quote:1fed0361f8] Ist el qué Geheimes oder qué? |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 25.10.2006 ▲ |
|
|
|