Datenbankpfad aus Alias auslesen



  • Hallo!

    Gibt es eine Möglichkeit, aus einem vorhandenen Datenbankalias den Pfad, auf den das Alias verweise, auszulesen? Is wichtig!

    Vielen dank



  • ps wäre schön wenn mir auch jemand sagen könnte wie man den pfad in das alias reinschreiben kann

    danke



  • zum 1. (pfad eines alias bestimmen)

    //---------------------------------------------------------------------------
    AnsiString GetAliasPath(AnsiString AliasName)
    {
      TStringList *liste   = new TStringList();
      TSession    *session = new TSession(Application);
      AnsiString   pfad    = "";
    
      session->SessionName = "alias_session";
    
      try
      {
        // alle aliase der bde abfragen
        session->GetAliasNames(liste);
    
        if (liste->IndexOf(AliasName) != -1)
        {
          // parameter des alias abfragen (PATH interessiert uns)
          session->GetAliasParams(AliasName, liste);
          pfad = liste->Values["PATH"];
        }
      }
      __finally
      {
        delete liste;
        delete session;
      }
    
      return pfad;
    }
    //---------------------------------------------------------------------------
    
    // aufruf:
    
    AnsiString alias_pfad = GetAliasPath("aliasname");
    

    zum 2. (pfad eines alias setzen)

    //---------------------------------------------------------------------------
    void SetAliasPath(AnsiString AliasName, AnsiString AliasPath)
    {
      TStringList *liste   = new TStringList();
      TSession    *session = new TSession(Application);
    
      session->SessionName = "alias_session";
    
      try
      {
        liste->Clear();
        liste->Add("PATH=" + AliasPath);
    
        // alias ändern und im configfile (idapi32.cfg) speichern
        session->ModifyAlias(AliasName, liste);
        session->SaveConfigFile();
      }
      __finally
      {
        delete liste;
        delete session;
      }
    }
    //---------------------------------------------------------------------------
    
    // aufruf:
    
    SetAliasPath("aliasname", "c:\\neuer_db_pfad");
    

    [ Dieser Beitrag wurde am 02.03.2003 um 21:10 Uhr von Sunday editiert. ]


Anmelden zum Antworten