Español
Foro

Copy y UNC-Pfade

 
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...
 
25.10.2006  
 




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>
 
25.10.2006  
 




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
!Proc fcopy
parameters from$,to$
CaseNot FileExists(from$) : Return 0
Var siz& = FileSize(from$)
Case siz& = 0 : return 0
Declare mem#
Dim mem#,siz&
Var bytesRead& = BlockRead(from$, mem#, 0, siz&)
BlockWrite to$, mem#, 0, bytesRead&
Return 1

c

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.
 
25.10.2006  
 




Jörg
Sellmeyer
Hab Yo ahora eigentlich algo verpasst?
KompilierenMarcaSeparación
Var siz& = FileSize(from$)
>

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.
 
25.10.2006  
 




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?
 
25.10.2006  
 




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*
 
25.10.2006  
 




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  
 




Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

7.287 Views

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie