Newsgroup: it.comp.lang.visual-basic
Titolo: Consiglio su applicazione (un po' lunghino)

Premessa (lunghina ma necessaria)
Sto sviluppando un'applicazione che gestisce gli accessi nella palestra in
cui sono socio.
Il software consiste in due programmi che girano su due macchine collegate
in rete.
Sul "Server" [si fa per dire ;-) ] (Pentium III 500 con 64 Mb di Ram - Win
98) gira l'applicazione principale che legge e scrive su un database.
Sul "Terminale" (Pentium 100 con 32 Mb di Ram - Win 95) gira una
miniapplicazione (1 solo form) che legge dallo stesso database
dell'app.princ. e, sulla base di opportuni controlli, apre (o non apre) il
tornello che consente l'accesso e visualizza le info sull'abbonamento.
Domande
E finalmente vengo al dunque
1) Secondo voi, vista la voracità di risorse di window$, è meglio (o è
indifferente?) che la seconda applicazione risieda sul "Server" e venga
quindi eseguita in remoto oppure che risieda sul "Terminale" con accesso in
remoto al db sul Server?
2) nel secondo caso (in realtà non mi serve per la mia esigenza... ma
ammettiamo che voglia dare l'applicativo a qualche amico che voglia
installare l'applicazione in una directory diversa?) come posso fare a
collegare il Database.Name della seconda applicazione senza indicare il
percorso assoluto (tipo: //Server/myapps/xxx.exe) e cioè in maniera
indipendente dalla directory condivisa in cui verrà salvata l'app.principale
?
Grazie e scusate per la lunghezza del post (e, forse, per l'ovvietà della
domanda ma sono un newbie :-P )
Ciao
Marco

 indipendente dalla directory condivisa in cui verrà salvata
l'app.principale
beh.. sto database dove sta?
il programma deve sapere in qualche modo dove risiede
potresti configurare un DSN sul computer client e fare accedere il program-
ma al DSN. tutte le altre idee non mi piacciono e non le propongo neanche.
io personalmente utilizzo un file di configurazione che contiene il percorso
assoluto del database.
volendo volendo.. potresti anche installare un programmino in ascolto sul
server che accetta le connessioni dai client (tutto in winsock) che
restituisce
ai chiamanti il percorso attuale del database, leggendolo quindi dal DSN sul
server oppure da qualche filettino che indichi dove si trova il db.
See ya
--
Fibia "Quando hai la muffa in testa è un cattivo presagio" FBI
E-mail: 
fibi...@hotmail.com
ICQ UIN 63586057
Sito Personale: 
http://www.geocities.com/fibiafbi
VB Simple: 
http://vbsimple.virtualave.net
Membro #26 delle Mitiche Brigate Takahashi sezione Sud

 il programma deve sapere in qualche modo dove risiede
Appunto, altrimenti non avrei postato ;-)


 Appunto, altrimenti non avrei postato ;-)
non sottovalutare che ho un sonno da matti e la prime due cose che mi hanno
detto in ufficio quando sono arrivato sono state:
1- "ma stai ancora dormendo?"
2- "ciao Fabio"
zzz..zzz...
--
Fibia "e togliti i cuscinu da facci" FBI


 ?
direi che potresti creare una directory condivisa, a cui dai sempre lo
stesso nome
il path sarà sempre \\server\directory\prog.mdb, indipendentemente da dov'è
in realtà la directory
PS: attento al verso delle sbarre: non "/" ma "\"  -  usi troppo ASP ;-)

 PS: attento al verso delle sbarre: non "/" ma "\"  -  usi troppo ASP ;-)
;-) mmm ... già ... e anche mooolto Linux!
Grazie !
Marco


Non so se ti puo' interessare, ma io ho appena finito di sviluppare un
programma di controllo accessi alle palestre (che combinazione!!).
Ho gia' 5 installazioni , percui il tutto e' ben testato.
Se volessi proporlo alla tua palestra...
Chiaramente possiamo concordare una percentuale sulla vendita...
Vabbe', io te l'ho buttata li.
Se ti interessa contattami pure.
Ciao
Marco Guglielmi

Altra cosa.
Se vuoi invece continuare lo sviluppo della tua applicazione, per quanto
riguarda il problema con i path, ti consiglio di sfruttare l'oggetto App,
andando a connetterti ad esempio cosi: App.Path\MioDatabase.mdb
Ciao
Marco Guglielmi

 ha scritto nel messaggio
news:9m2uq1$ihj$1...@lacerta.tiscalinet.it...



Hai ragione, non avevo letto bene.
Oltre alle idee che gia ti hanno dato (anch'io uso un file di
configurazione),
potresti far scrivere al programma server una chiave sul registry contenente
il path e, dal client,
leggerti quella.
Spero di esserti stato utile, ciao
Guglielmi Marco

Ti posso fare una domanda???
Dove hai comperato il tornello???
Puoi dirmi anche quanto lo hai pagato?
Grazie, ciao
Marco Guglielmi

 indipendentemente da dov'è in realtà la directory
In quel modo (temo) si deve cercare il PC "server" ogni
volta che accede al DataBase. Io gli suggerirei di connettere
una unità virtuale di rete, usando una subst sul server. L'ho
fatto in una mia applicazione e funziona molto bene.
Spiegazione:
1. sul server creo una directory (esempio) "C:\DataBaseDir"
   e la condivido (e ci metto il database dentro)
2. sempre sul server creo un disco virtuale (ad esempio R:)
   che punta lì, mettendo nell'AUTOEXEC.BAT il comando:
   SUBST R: C:\DataBaseDir
3. sui client faccio "Connetti Unità di rete" alla directory
   (condivisa dal server) \\server\C:\DataBaseDir usando la
   _stessa_ lettera R: (e selezionando "riconnetti all'avvio")
A questo modo tutti i PC indifferentemente (server incluso)
vedono il database come "R:\miodb.mdb".
Nota: se hai paura che i clienti accendano i "client" prima
del server e che siano così furbi da cancellare la connessione
remota NON fai la connessione remota in quel modo ma metti
nell'AUTOEXEC.BAT dei _soli_ client le seguenti due righe:
  NET USE /DELETE R:
  NET USE R: \\server\C:\DataBaseDir
(la prima serve... da protezione alla seconda)
Ciao.
Mauro