Einzelnen Beitrag anzeigen

Benutzerbild von Sven Janssen
Sven Janssen

Registriert seit: 22. Jun 2004
Ort: Mayen
187 Beiträge
 
Delphi 4 Professional
 
#1

Alias Pfad aus Session auslesen

  Alt 21. Jun 2006, 10:57
Datenbank: Paradox • Version: ? • Zugriff über: BDE
Guten Morgen,

mit folgendem Code lesen wir den Pfad eines Paradox Alias aus

Delphi-Quellcode:
function getaliaspfad(aliasname:string) : string;
var session1:Tsession;
    mysl:TStringlist;
    i:integer;
begin
     MySL := TStringList.Create;
     Session1 := TSession.create(NIL);
     
     session1.sessionname:=aliasname;
     try
        Session1.GetAliasParams(aliasname,MySL);
     except
        try
            session1.AddstandardAlias(aliasname,'c:\','PARADOX');
        except
        end;
     end;
     result:='c:\';
     for I := 0 to MySL.Count - 1 do
         if pos('PATH',MySL[I]) > 0 then begin
            result:=copy(mysl[i],pos('=',MySL[I])+1,maxint);
            break;
         end;
     session1.free;
     MySL.Free;
end;
Dies funktioniert auch zu 99,99% korrekt. Doch nun haben wir 2 PCs auf denen das nicht,oder unter bestimmten umständen nicht richtig funktioniert.
Der eine ist ein Windows 2000 Rechner auf dem 2 Programm laufen. Das erste Programm liest den Alias Korrekt aus, das zweite liefert einen leeren String zurück. bzw. die ganze Stringliste ist leer. Dieser Rechner steht bei uns in der Firma.

Ein Windows ME Rechner eines Kunden hat das Problem das die zweiten Programm immer ein c: vor dem Pfad liefern.
Normalerweise steht in dem Pfad \\rechnername\freigabe\daten . Bei allen Programmen steht dann aber c:\\rechnername\freigabe\daten . Leider findet dadurch unser Programm die ganzen Einstellungsdateien nicht mehr.
Ich könnte dieses Problem zwar umgehen, aber ich möchte nicht flicken, sondern herausfinden warum dies passiert.

Sven
:wq /dev/null
He who fights with monsters might take care lest he thereby become a monster - Nietzsche
  Mit Zitat antworten Zitat