Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    137

    [Delphi 5] BDE + WIN2K

    Ciao,

    situazione:
    1. applicazione che usa il BDE su un server win2k e client (con winxp, win9x) che si interfacciano al server con specificato nella NETDIR del loro BDE la cartella del server in cui ci sono le tabelle paradox.
    2. esecuzione automatica di un applicazione delphi che necessita degli archivi sul server win2k

    problema:
    alcune volte, all'avvio della macchina, dà un errore di "network initialization failed" perchè non vede subito la cartella degli archivi, perchè? perchè lo dà solo se nel server c'è installato win2k e con win2003 non lo dà?
    per risolverlo vado ad aprire le risorse del computer e faccio aprire l'unità di rete corrispondente alla mappatura della cartella degli archivi sul server.

    Grazie.


  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,465
    Qual è il percorso di rete che specifichi?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

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

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    137
    non utilizzo un percorso UNC ma <unità>:\<cartella app>\<rete>

    dove <rete> è la cartella dove ci vanno a finire i file .NET

    scusa per il titolo poco significativo: ho visto che me l'hai modificato.


  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,465
    Originariamente inviato da zephyr
    non utilizzo un percorso UNC ma <unità>:\<cartella app>\<rete>
    dove <rete> è la cartella dove ci vanno a finire i file .NET
    Ciao, purtroppo oggi non ho molto tempo da dedicare a ricerche tecniche, ma siccome non voglio lasciarti senza aiuto ho pensato di segnalarti questo articolo, se non l'hai già letto, che fornisce alcune informazioni utili per la condivisione di database in rete con il BDE.

    Per la verità, il mio suggerimento "massimo" è quello di abbandonare il BDE, in quanto deprecato già dal 2001 (e quindi passibile di scomparsa nelle prossime versioni di Delphi o comunque non supportato con garanzie nei sistemi operativi di recente introduzione).

    Originariamente inviato da zephyr
    scusa per il titolo poco significativo: ho visto che me l'hai modificato.
    Non preoccuparti: lo faccio d'abitudine, solo per facilitare le ricerche nel forum da parte di chi affronta lo stesso problema in futuro.

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

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

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    137
    grazie mille per l'articolo ma purtroppo faccio già quello che consiglia...
    non ti preoccupare se non hai tempo sufficiente è che questo problema si presenta puntualmente ad ogni installazione che prevede un server win2k ma per il momento non ce ne sono di nuove ...

    sul fatto di abbandonare il bde concordo perfettamente con te ma non sono io che decido cosa fare nella mia ditta ... altrimenti passerei a SQL Server o Firebird. DBExpress non so come utilizzarlo (ho trovato solo dei componenti a pagamento) ma ho sentito (penso da te in una risposta a qualche utente del forum) che il passagio dal BDE è più indolore rispetto ai precedenti.

    a presto.

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    137
    Risolto.

    Ho applicato uno Sleep(10000) prima che il programma inizi ad aprire le connessioni col database sul server.
    Per adesso nessun problema...

    Ciao.

  7. #7
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,465
    Originariamente inviato da zephyr
    sul fatto di abbandonare il bde concordo perfettamente con te ma non sono io che decido cosa fare nella mia ditta ...
    Ma puoi portare all'attenzione questa cosa.
    Se serve, ti cito anche il documento Borland relativo.

    Originariamente inviato da zephyr
    altrimenti passerei a SQL Server o Firebird. DBExpress non so come utilizzarlo (ho trovato solo dei componenti a pagamento)
    La libreria dbExpress fa parte del set di componenti inclusi in Delphi, ma dalla versione 6 in poi.
    Ciò che probabilmente hai trovato a pagamento sono alcuni driver di terze parti.

    Originariamente inviato da zephyr
    ma ho sentito (penso da te in una risposta a qualche utente del forum) che il passagio dal BDE è più indolore rispetto ai precedenti.
    Diciamo che - come ogni cosa in Delphi - il porting è facilitato; il fatto che sia "indolore" dipende da come hai usato i componenti BDE e dalla presenza o meno di "pratiche arcane".
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

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

  8. #8
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,465
    Originariamente inviato da zephyr
    Ho applicato uno Sleep(10000) prima che il programma inizi ad aprire le connessioni col database sul server.
    Per adesso nessun problema...
    Allora temo che il problema vero e proprio fosse dovuto al fatto che l'applicazione, essendo eseguita automaticamente, venga lanciata prima che siano attivi tutti i servizi, soprattutto quelli che collegano le unità di rete, oppure prima che le unità di rete siano effettivamente reperite e collegate correttamente, generando l'errore denunciato.

    Piuttosto che utilizzare uno Sleep "nudo e crudo", proverei ad incorporare nell'applicazione un tentativo reiterato di connessione, per un numero limitato di volte (ad esempio, 3) lasciando un breve lasso di tempo di qualche secondo (2 o 3) tra un tentativo e l'altro, fino a quando la connessione non va a buon fine oppure ad esaurimento del numero di tentativi previsto.

    In questo modo, se lanci normalmente l'applicazione, essa si collega all'istante senza generare ritardi; nel caso in cui vi sia una difficoltà dovuta al problema esaminato, si attende qualche istante e si ritenta di nuovo.

    Misurando più o meno il tempo impiegato a connettersi (ad esempio, quello specificato nella funzione Sleep che hai usato) dovresti rimanere sufficientemente sul sicuro che la connessione venga stabilita sempre correttamente (salvo problemi contingenti e imprevisti).

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

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

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    137
    posso provare a fare come mi hai detto riguardo al numero di tentativi per la connessione poi vedrò. Così com'è ho messo lo sleep è parametrizzato e mi offre abbastanza elasticità quando sono da un cliente se i 10 secondi non fossero sufficienti infatti vado a cambiare il valore in un file .ini di configurazione dell'applicazione e basta ossia non devo ricompilare il programma ... cmq proverò la soluzione da te consigliatami e spererei di farlo in tempi brevi.


    per quanto riguarda il porting: io uso delphi 5 quindi non ho i componenti per il dbexpress ma solo gli ado (con licenza) ed i zeos. Passare ad una versione successiva dovrei poi cercarmi tutti i componenti che utilizzo tuttora quindi non so se mi conviene. Inoltre quì da me si usano molto gli accessi diretti alle tabelle senza usare le query (che io adoro ) quindi se intendi questo per "pratiche arcane" il porting risulterebbe ancor'più negativo per la mia azienda in termini di fatturato finale.
    Comunque grazie per l'help.


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 © 2025 vBulletin Solutions, Inc. All rights reserved.