Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [VB.NET] Problema di logica su recupero variabile server

    Non sapevo come titolare questo post, spero sia abbastanza chiaro.
    In pratica il mio problema è questo:
    Vorrei fare in modo che quando si lancia l'applicazione la prima volta sia possibile tramite il menu creato da me nel programma, inserire il nome del server di riferimento dove si trova SQLSERVER. Tale valore sarà quindi una variabile che definirà la mia connessione al database:
    "Data Source: " & MyServer & ";"
    Il punto è:
    come faccio ad evitare di dover scrivere ogni qualvota apro il programma tale variabile?
    non posso inserirla in un DB, perchè questa variabile miserve proprio per collegarmi al DB...
    C'è un modo per conservere da qualche parte questo valore, anche quadno si chiude l'applicazione?
    Spero di essere stato chiaro, e ringrazio tutti per l'aiuto.

  2. #2
    Lo potresti scrivere nel registro di Windows: http://forum.html.it/forum/showthrea...hreadid=834308
    Chi non cerca trova.

  3. #3
    mi ero completamente dimenticato che il tuo aiuto riguardava proprio questo problema...
    quoto quello che hai scritto per capire meglio:
    aggiungi al progetto una finestra delle Opzioni (tipo quella di IE o di Word, tanto per capirci) dove darai all'utente la possibilità di modificare la stringa di connessione. Tale stringa sarà letta e scritta nel registry attraverso queste funzioni:

    m_connstr = GetSetting("MyApplication", "Database", "ConnectionString", "")
    SaveSetting("MyApplication", "Database", "ConnectionString", TextBox1.Text)

    * quando crei la connessione al db, cambia il codice così:

    myConn.ConnectionString() = GetSetting("MyApplication", "Database", "ConnectionString", "")
    Dunque, ho creato il menu che mi apre un input box il cui valore viene recepito da una variabile che ho chiamato MyServer, ma poi onestamente non ci ho capito molto del tuo suggerimento, potresti essere più preciso per favore?
    I nomi che metti tra le virgolette ( "MyApplication", "Database"... ) li devo sostituire con i nomi relativi al mio progetto? E connectionstring?...

    Mi sto incasinando.....

  4. #4
    In quell'esempio veniva salvata l'intera stringa di connessione.
    In generale per salvare una impostazione nel registro puoi scrivere:
    codice:
    SaveSetting("NomeApplicazione", "NomeSezione", "NomeImpostazione", "Valore")
    Questa impostazione verrà salvata nel registro di configurazione di Windows (per accedervi usa regedit.exe) nella posizione:
    HKEY_CURRENT_USER\Software\VB and VBA Program Settings\NomeApplicazione\NomeSezione\NomeImpostaz ione

    Al posto di "NomeApplicazione" metti il nome del tuo programma, che ovviamente deve essere quanto più possibile originale e diverso da quello usato da altre applicazioni. Per evitare qualsiasi problema è meglio se nel nome includi anche il nome della tua ditta, per esempio: "Microsoft Word" e non solamente "Word".

    In "NomeSezione" metti il nome della sezione sotto la quale vuoi inserire la tua variabile (per esempio "database" per tutto quello che riguarda l'accesso ai dati, "window" per memorizzare la dimensione delle finestre, ecc.).

    "NomeImpostazione" è il nome della variabile, nel tuo caso potrebbe essere "ServerName"

    "Valore" è la stringa che vuoi memorizzare.

    Chi non cerca trova.

  5. #5
    Cavolo che bella spiegazione dettagliata!!!
    Grazie mille tas, adesso faccioun pò di prove e ti faccio sapere!!

  6. #6
    Ho fatto così ma mi da errore:
    questo è il codice del click del menu:
    codice:
    Private Sub MnuServer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MnuServer.Click
    
            MyServer = InputBox("Inserire il nome del computer da utilizzare come Server. Questa funzione va utilizzata soltanto la prima volta, oppure nel caso in cui cambi il Server di riferimento.", "Connetti Server")
    
            SaveSetting("Assoluto Lafer", "Database", "ServerName", MyServer)
        End Sub
    e questro è il codice della connessione:
    codice:
    myConn = New SqlClient.SqlConnection
    
                myConn.ConnectionString() = _
                GetSetting("Assoluto Lafer", "Database", "ServerName", MyServer)
    MyStrConn = myConn.ConnectionString
    L'errore che mi da è il seguente:


    Cosa ho sbagliato?

  7. #7
    ah no aspetta, ho fatto una cretinata, non avevo letto che quello di prima era un esempio contutta la stringa di connessione.
    Io qui in pratica mi recupero solo il valore del computer, quindi la stringa di connessione deve rimanere invariata...

  8. #8
    E INFATTI FUNZIONA ALLA GRANDE!!!!!
    Grazie infinite Tas!!!!!

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.