Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    [Delphi] Percorso di rete

    Problema con la lettura di un file condiviso nella rete e situato in un server.
    Conoscendo il nome del server o il suo indirizzo IP, e il percorso in cui si trova il file all'interno del server(ad esempio: C:\Programmi\.. ) , non riesco a leggere un file contenuto nella directory specificata.

    Il problema é che non trova il percorso.
    L'unità, sul server, interessata alla condivisione in rete, prende il nome dell'etichetta dell'HD.
    Infatti, il "nome" del disco fisso é "DATI" e corrisponde all'unità "C:".
    Nella rete il percorso viene visto come "NomeServer\\Dati(C\..".

    Avendo a disposizione, come precedentemente esposto, il percorso in cui si trova il file( C:\Programmi\.. ), come posso mappare il nome della condivisione in rete della cartella.

    Ciò che mi stupisce é che la connessione al database Interbase, situato nel percorso NomeServer:C:\Programmi\.. funziona perfettamente.

    Facendo diverse prove, utilizzando anche la sintassi per la connessione al DB, viene sempre mostrato il messaggio di errore.

    Ho provato con alcune funzioni API, ma non ho ancora trovato quella giusta per leggere la mappatura delle condivisioni di rete.
    Ho anche guardato nelle LAN Manager Function, ma sembra che non ci sia niente che faccia per me.

    Grazie

  2. #2
    Correzione:
    codice:
    Nella rete il percorso viene visto come "NomeServer\\Dati(C\..".
    con
    Nella rete il percorso viene visto come "\\NomeServer\Dati(C)\.."


  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,296
    Ho capito poco o nulla del problema.

    Se stiamo parlando di un file generico, e non di un database, probabilmente l'incapacità di leggere il file posto su una macchina differente potrebbe essere dovuta ad una limitazione della funzione che utilizzi per accedere a tale file.

    Qual è il codice che usi per aprire il file?

    Il confronto con InterBase non è da fare in quanto non lavora con le condivisioni e il percorso specificato per la connessione al DB segue convenzioni che sono diverse da quelle adottate per l'accesso al file system di Windows.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  4. #4
    Scusate per la poca chiarezza!
    Esempio:
    Io: client ho la necessità di leggere/scrivere un file, che si trova nel Server .
    Conosco :
    - nome del server, quindi IP
    - percorso della cartella sul server, "C:\Programmi\MySoftware\file.txt"

    Nella pratica, ho provato a fare un contollo per verificare, prima di leggere il file sul server, se questo esiste veramente.
    Ho utilizzato la funzione FileExist in questo modo:
    codice:
    if FileExist('\\ '+NOME_DEL_SERVER+ '\ ' +PERCORSO_DEL_FILE) then ...
    Pensavo che fosse corretto ragionare in questo modo, invece mi sono accorto che non riesce a trovare il percorso di rete.

    Ora sono riuscito a rendere meglio la situazione?

    Stavo leggendo un articolo Link nel quale si tratta l'argomento delle risorse di rete; ma non riesco a capire se dopo aver aperto la connessione con il computer remoto posso leggere tranquillamente un file.

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Una domanda, forse banale e stupida: il percorso del file, o il file stesso, è stato reso disponibile? E' stata creata una condivisione di rete?


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,296
    Siamo sicuri che il percorso che utilizzi sia corretto per accedere al file?

    Per poter accedere ad una risorsa, occorre che questa sia condivisa oppure connessa come unità di rete (alla quale è associata una lettera).

    Prova a fermarti con un breakpoint sulla chiamata a FileExists e verificare che il percorso sia corretto e sia identico a quello che utilizzi in Gestione Risorse per accedere analogamente al file.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  7. #7
    Si, tutto il drive C sul server é stato condiviso.


  8. #8
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Beh... a questo punto il percorso di rete dovrebbe essere questo:

    \\nomeserver\nome_condivisione\percorso_relativo_a l_file

    dove percorso_relativo_al_file è il percorso che c'è nel drive C:\ omettendo proprio C:\

    Esempio:
    codice:
    File sul server: C:\MiaCartella\MioFile.txt
    C:\ condiviso con il nome di Share
    
    Via rete:
    \\NomeServer\Share\MiaCartella\MioFile.txt
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  9. #9
    Ecco, hai colto nel segno! :quote:
    Dato
    File sul server: C:\MiaCartella\MioFile.txt
    io voglio sapere qual é il suo nome di condivisione del drive "C:".
    Nel mio caso, il drive "C:" ha nome di condivisione "Sistema(C)"

  10. #10
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,296
    Probabilmente, esisterà qualche funzione API in grado di enumerarti le risorse di rete condivise dalla macchina, ma non credo sia possibile conoscere il nome della condivisione che consente l'accesso ad un file...o forse continuo a non capire il problema.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.