27. juli 2003 - 13:58Der er
9 kommentarer og 2 løsninger
Et dir problem
Jeg har lagt en database i fx C:\sp\temp\test.mdb men det er jo ikke sikkert at filen kommer til at ligge samme sted på en anden PC. Hvordan laver jeg en "find test.mdb lige meget hvor den ligger på denne pc " ? Sådan noget Som FX Dir := ExtractFilePath(Application.ExeName); if Dir[Length(Dir)] <> '\' then Dir := Dir + '\'; som jeg har fundet. Men der mangler en dir var som String ? måske. Har nogle en bid der kan bruges ? VH SpørgerJørgen
Kommunerne har digitaliseret indgangen for borgerne. Men bag skærmen håndteres mange arbejdsgange stadig manuelt mellem systemer, mails og organisatoriske siloer.
Du beder brugeren om at konfigurere ved installation, og skriver svaret i en ini-fil eller i registreringsdatabasen, som dit program så efterfølgende kigger i.
Læg databasen i samme mappe som dit program, og bed alle om at gøre det samme. Så kan du bruge Application.ExeName, som du jo kender.
Hvis databasen skal kunne ligge overalt på harddisken, så skal du søge hele harddisken igennem hver gang programmet startes. Du kan jo prøve at bruge Windows' filsøgefunktion, og søge efter test.mdb i C:\ og alle undermapper, og så prøve at se hvornår den er færdig med at lede. Husk at filen lige så godt kan bive fundet til sidst...
Tak for din tillid, men nej kender ikke Application.Exename eller hvad det er for noget. Jeg sidder og fedter med noget det kommer til at ligne det her : var path :String; filename : string; filename := min.mdb
filename := path + '\filename';
eller sådan noget ligende Der er også noget i bogen : path := PChar(path); det ved jeg ikke hvad er ? VH SpørgerJørgen
koden12-> Den metode, athlon-pascal snakker om, er den du skrev i spørgsmålet. Følgende kode gør, at strengen FileName kommer til at pege på filen c:\sti\til\mitprogram\min.mdb (hvor "c:\sti\til\mitprogram" er stien til dit program)
var Dir, FileName: String; begin Dir := IncludeTrailingBackslash(ExtractFilePath(Application.ExeName)); //Læg stien til mit program i "Dir" FileName := Dir + 'min.mdb'; //Læg stien til mit program plus filnavnet i "FileName"
//... brug FileName til et eller andet...: ShowMessage(FileName); end;
Med denne metode behøver du blot sikre dig, at filen ligger i samme bibliotek som dit program (din exe-fil)
Og tror i måske lige jeg har gemt den eller hva :) Tak SprøgerJørgen
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.