Cartelle

di il
11 risposte

Cartelle

Salve ragazzi,vorrei qualche vostra dritta,nn
come faccio ad elencare i file e le cartella contenuta in una cartella remota del server?
o anche in generale se ho una cartella come faccio ad elencare i file e le cartelle contenute in essa

nn ho completamente idea


grazie

11 Risposte

  • Re: Cartelle

    Stiamo parlando di due programmi, uno sul server e uno sul cliente che comunicano?

    Se è così sarà il codice sul server a fare l'elenco delle cartelle/file e inviarle al client a richiesta.

    Non mi chiedere "il codice" per farlo perché non posso scrivertelo ma se lo realizzi da una parte (lato server) in locale, poi si tratta solamente di inviare le informazioni al client.
  • Re: Cartelle

    Nn ho chiesto il codice,vorrei solo sapere se esiste qualche funzione da utilizzare???
  • Re: Cartelle

    No, non esistono funzioni che elencano cartelle remote.
  • Re: Cartelle

    Non esattamente:

    parlare di cartelle remote non ha nessun senso nel momento in cui non si specifica il tipo di connessione che si ha con il file system del computer remoto.

    Le possibilita' sono:

    FTP: classico File Transfer Protocol
    WebDav: una specie di FTP ma basato su protocollo HTTP
    SMB: il protocolo usato da Windows per accedere al file system di un'altra macchina in rete. In Unix va sotto il nome di Samba
    NFS: Network File System, generalmente usato in Unix

    Ora, per ogn'uno di questi protocolli esistono le API per poter creare, rinominare, cancellare, muovere file e directory. Oltre a API per conoscere dimensione, data di creazione, ultima modifica, assegnare iritti, creare stream per la lettura, scrittura, ecc.

    Ci sono delle limitazioni, comunque, nell'accessibilita' al file system remoto. Tali limitazioni sono legate ai diritti che il computer remoto associa all'utente che si collega.

    Ovviamente esistono librerie per accedere a tutti questi file system. La disponibilita' di queste librerie dipende dalla piattaforma su cui si sta' sviluppando. Per Microsoft ci sono le API di Windows. Altrimenti le librerie di terzeparti che si trovano su Internet.
  • Re: Cartelle

    Non sono d'accordo ... questi sono protocolli, a volte non banali, che contemplano varie regole di comunicazione e scambio dati. Ad esempio, per FTP, deve essere attivo, lato server, un apposito programma che non è affatto "nativo" in molti sistemi (specie client).

    Quindi non esiste un metodo semplice e "di sistema" gestibile con semplici API con cui ottenere le cartelle remote.

    In realtà ci sarebbe WMI ma è sempre disattivabile.


    P.S. Scusa ma "ogn'uno" non si può leggere...
  • Re: Cartelle

    I'll server ftp e' un servizio attivabile su ogni sistema windows e linux. Gia' disponibile con ogni distribuzione.
    Windows ha smb attivo fin dall'installazione. Per Windows basta usare la urn invece del solito file path.
    Essere o non essere d'accordo non e' rilevante.
  • Re: Cartelle

    Dato che ho impiegato un po' di tempo a rispondere, la mia obiezione è rilevante, forse non compresa appieno, forse non spiegata benissimo, ma rilevante.

    Ho risposto ad inf89 che è necessario che tra i due sistemi ci sia un programma che fa la richiesta in rete e l'altro che risponde. Indifferentemente dal tipo di protocollo usato (ftp, http, smb ... e chi più ne ha ...) non basta una API di un sistema che "magicamente" elenchi le cartelle dell'altro.
    Per Windows basta usare la urn invece del solito file path
    Attraverso un router? Tra due client qualsiasi su internet?
  • Re: Cartelle

    Ma smb non è che abbia bisogno di tanto in piu....
    facendo:
    
    FILE f = fopen("\\\\Server\\Share\\C\\SomeFile.txt", "rt");
    
    viene già usato dal c,si può accedere direttamente al server o altro computer nella rete locale se si hanno i diritti senza tanti marchingegni.
    Ovvio che vanno tutte quelle funzioni del c che richiedono il path quali ad esempio la _chdir
  • Re: Cartelle

    In realtà la scrittura

    \\server\share\c

    non ti porta affatto sul disco C del sistema remoto ma sullo "share" che hai indicato e da questo su una cartella che si chiama C ...

    In secondo luogo, questo tipo di operazioni è normalmente limitato dal sistema remoto (non solo tramite permission ma anche negando totalmente il protocollo).
  • Re: Cartelle

    Si vabene oregon,basta condividerli,tasto destro,proprieta e condividi.o giu di li.
    è la via piu semplice senza dover far chissà che cosa,e nemmeno ci si accorge cosa avvenga in realtà.
    Poi naturalmente la domanda è molto vaga,bisognerebbe sapere un pò di piu sul server.
  • Re: Cartelle

    vbextreme ha scritto:


    si vabene oregon
    Sì va bene vbextreme allora non mi capisci ...
    basta condividerli,tasto destro,proprieta e condividi.o giu di li.
    La questione non è se due si mettono d'accordo ma se inf89 può arrivare con una API al tuo PC. Senza un programma "server" (che sia il gestore del protocollo SMB, FTP, HTTP ...) NON ci arriva, soprattutto tra sistemi che stanno su internet.
    la via piu semplice senza dover far chissà che cosa
    Quindi tu condividi una tua cartella, mi dai i permessi e io posso vedere i tuoi file? Fallo adesso ...
    e nemmeno ci si accorge cosa avvenga in realtà.
    Perché NON sai cosa succede in realtà ...
    Poi naturalmente la domanda è molto vaga,bisognerebbe sapere un pò di piu sul server.
    Ecco, adesso comincio ad essere d'accordo ...
Devi accedere o registrarti per scrivere nel forum
11 risposte