[Delphi 5][Paradox] Fysieke locatie DB

Pagina: 1
Acties:

  • Coltrui
  • Registratie: Maart 2001
  • Niet online
Ik moet op een bepaald moment in mijn applicatiede paradox tablefiles (tabel.db en tabel.px) verwijderen. (Ja, paradox want het betreft een kleine aanpassing van een reeds lang in gebruik genomen project.)

Een DROP is geen optie, want het gaat steeds om corrupte files na een 'delete * from tabel'-statement.

Het probleem is dat de locatie van de tabelbestanden niet als constante in het programma ingebakken mag zitten.
Kan ik in runtime op een of andere manier de fysieke locatie van deze files opvragen?

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 00:21

Creepy

Tactical Espionage Splatterer

Ligt er aan waar de files staan..

met paramstr(0) kan je het complete pad van je applicatie opvragen. Dit kan je dus bijv. gebruiken voor het bepalen van een absuluut pad, als je jet relatieve pad weet van de files t.o.v. van je .exe

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • Coltrui
  • Registratie: Maart 2001
  • Niet online
Op vrijdag 28 juni 2002 12:29 schreef Creepy het volgende:
Ligt er aan waar de files staan..
Dat wil ik nu net weten. :)

Ergens in de applicatie wordt bijgehouden waar de db staat, want als ik een runtime een tabel creëer hoef ik gewoon de alias van m'n DB mee te geven en hij slaat de tabel meteen in de juiste directory op.
Ik denk dat daar ergens de oplossing moet liggen...

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 00:21

Creepy

Tactical Espionage Splatterer

Op vrijdag 28 juni 2002 12:34 schreef Wezen het volgende:

[..]

Dat wil ik nu net weten. :)
Ik bedoelde er mee of ze relatief staan t.o.v. het absolute pad van je .exe. Als dit het geval is kan je dus m.b.v. paramstr(0) het absolute pad van je DB bepalen.

Maak je gebruik van de BDE? Dan is er vast wel op te vragen naar welk pad een bepaalde BDE alias wijst.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • Coltrui
  • Registratie: Maart 2001
  • Niet online
Ik bedoelde er mee of ze relatief staan t.o.v. het absolute pad van je .exe. Als dit het geval is kan je dus m.b.v. paramstr(0) het absolute pad van je DB bepalen.
Dit is niet het geval.
Maak je gebruik van de BDE?
Ja ik maak gebruik van de BDE.
Dan is er vast wel op te vragen naar welk pad een bepaalde BDE alias wijst.
Dit is wat ik wil weten. :P

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 00:21

Creepy

Tactical Espionage Splatterer

Kijk eens in de help bij TSession
GetAliasNames Retrieves the list of BDE aliases for a database.
GetAliasParams Retrieves the list of parameters for a specified BDE alias of a database.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • Coltrui
  • Registratie: Maart 2001
  • Niet online
Got it.
U was meest behulpzaam, dank u :)

Voor de latere zoekers:
code:
1
2
3
4
5
Session.GetAliasParams('JeAlias',MyStringList);
{
De eerste string uit Mystringlist bevat
'PATH=' + het pad. 'PATH=' even wegfilteren.  
}
Pagina: 1