PDA

Visualizza la versione completa : [DELPHI] Selezionare file condiviso in rete


123delphi321
26-11-2010, 09:58
Ciao a tutti,

ho fatto un programma dove in una scheda anagrafica l'utente è libero di associare un file inserendo opportunamente path+nomefile, a dire il vero il file glielo faccio associare usando il componente OpenDialog di windows.

quindi l'utente seleziona il file e nella tabella viene memorizzato path + nome.

fin qui tutto bene,...pero:

l'applicazione funziona in rete quindi anche altri utenti, da altri pc, aprono la stessa scheda anagrafica trovando path e nome file es.: c:\miacartella\miodocumento.doc

ovviamente non possono aprire questo file perche' il path fa riferimento al pc dell'utente che ha inserito il file.

a questo punto vorrei fare in modo che venga memorizzaro il percorso del file in rete: es.:
\\pcAntonio\c:\miacartella\miodocumento.doc

o altrimenti come potrei verificare che il file associato dall'utente e' in una cartella condivisa in rete?

come posso risolvere?
grazie

MdE2005
26-11-2010, 14:58
Ti sei risposto da solo: una volta ottenuto il percorso del file gli aggiungi la stringa: "\\nomePC\" dove nomePC è il nome del PC dove risiede il file.


Ciao :)

123delphi321
26-11-2010, 18:49
Originariamente inviato da MdE2005
Ti sei risposto da solo: una volta ottenuto il percorso del file gli aggiungi la stringa: "\\nomePC\" dove nomePC è il nome del PC dove risiede il file.


Ciao :)

e come catturo il nome del computer dove risiede il file?

grazie

MdE2005
26-11-2010, 19:02
Originariamente inviato da 123delphi321
e come catturo il nome del computer dove risiede il file?

grazie

Usa l'API GetComputerName e così ricavi il nome del Pc.

123delphi321
26-11-2010, 19:26
Originariamente inviato da MdE2005
Usa l'API GetComputerName e così ricavi il nome del Pc.

??? GetComputerName

non mi sembra che dica il nome del pc dove risiede un file....

http://delphi.about.com/cs/adptips2002/a/bltip0102_3.htm

MdE2005
26-11-2010, 22:25
La tua applicazione verrà installata su tutti i Pc oppure no? Se un utente memorizza un percorso file nella tabella ricavi il nome del Pc e lo aggiungi al percorso stesso. Quindi ti dice quale Pc ha effettuato la scrittura nella tabella.

123delphi321
27-11-2010, 11:11
e' vero. grazie

MdE2005
27-11-2010, 14:15
Originariamente inviato da 123delphi321
e' vero. grazie

Prego


Ciao :)

alka
07-12-2010, 11:04
Originariamente inviato da 123delphi321
a questo punto vorrei fare in modo che venga memorizzaro il percorso del file in rete: es.:
\\pcAntonio\c:\miacartella\miodocumento.doc

o altrimenti come potrei verificare che il file associato dall'utente e' in una cartella condivisa in rete?


A mio avviso, questa implementazione è molto pericolosa e limitativa, anche perché non è detto che il PC di cui ottieni il nome condivida effettivamente la propria unità disco, che deve essere necessariamente creata affinché tutto il meccanismo funzioni.

Già che devi applicare delle forzature, allora ti converrebbe predisporre direttamente una condivisione di rete, comune a tutti con lo stesso nome, in cui memorizzare i file andando a inserire il percorso effettivo su database.

In alternativa, potresti utilizzare lo stesso database per memorizzare il documento attraverso l'impiego di campi BLOB.

Ciao! :ciauz:

Loading