View Full Version : Cartella di sistema
Ciao;
Con questo codice in VB6 mi ricavo la cartella di sistema (system/system32) di windows.
Dim sSave As String, Ret As Long
sSave = Space(255)
Ret = GetSystemDirectory(sSave, 255)
sSave = Left$(sSave, Ret)
Percorso = sSave + "\"
Avrei la necessità di fare la stessa cosa in rete lan sul pc su cui mi connetto. :help:
scusa, non riesco a capire cosa esattamente vuoi fare...
vorresti conoscere la cartella di sistema di un pc sulla tua stessa lan eseguendo il programma sul tuo pc?
scusa, non riesco a capire cosa esattamente vuoi fare...
vorresti conoscere la cartella di sistema di un pc sulla tua stessa lan eseguendo il programma sul tuo pc? se è questo quello che Carmen chiede allora la cosa non è universalmente possibile. l'unica è eseguire un'altra istanza del programma sul computer remoto e mettere i due in comunicazione tramite mailslot o named pipe, che sono i due meccanismi più semplici che io conosca per comunicare via LAN tra macchine Windows (è per non farti usare i socket insomma :))
Il mio problema principale è che la mia applicazione lavora già così, leggendo alcuni files che la stessa applicazione posiziona nella cartella di sistema.
L'applicazione client che si connette al server per prelevare i dati dal database deve anche utilizzare i files presenti nella cartella di sistema, che dal client non so come rilevarla, in quanto utilizzando il codice utilizzato mi ritorna la cartella di sistema del client.
embe'? le applicazioni sono entrambe tue, no? il protocollo l'hai progettato tu, no? e allora fai in modo che sia il server ad ottenere il path della cartella e a comunicarlo al client :)
se il problema è la traduzione da path locale a UNC se vuoi posso provare a cercare tra le funzioni WNet, ricordo che ce n'era una fatta allo scopo...
scusa ma ricordavo male: quella che ricordavo si chiama WNetGetUniversalName, ma serve a uno scopo leggermente diverso. ottenere il nome UNC partendo da quello locale non è semplice... parlando in generale sarebbe anzitutto necessario vedere se quel percorso è effettivamente in share, e se si allora trovare il nome della condivisione e a quale cartella corrisponde... e a complicare il tutto, all'interno del percorso potrebbero trovarsi anche più d'una cartella in share... :mc:
qua secondo me devi necessariamente fare delle assunzioni in base alla particolare configurazione su cui gireranno questi due programmi: ne puoi fare?
EDIT - esempio: se sai che il programma server girerà sempre su un computer in cui la cartella C:\Windows\ è condivisa in rete (in sola lettura spero :p) e che il nome della condivisione è "Pippo", allora fai in modo che il server restituisca al client "\\NomeServer\Pippo\System32"
Sembra una cosa alquanto complicata. Direi di lasciar perdere. Cercherò di modificare l'applicazione per baipassare questo problema. Grazie lo stesso di tutto.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.