Hej! Det beror på tycker jag. Tackar tackar! :) Håller med Tobbe så när som på att jag oftast förespråkar Systemregistret före ini-filer. I alla fall så länge det inte handlar om inställningar som behöver flyttas. > <b>Bör man spara inställningar för sitt program i filer eller i en databas?</b> Känner bara att jag måste kommentera. :-) Va kul det skulle vara om alla mails var sparade i registret... ;) <b>* C:\Program Files\Programmet. > <b>Skrivfel, användaren har bara läs och exekverrättigheter här.</b> Det är ett satans djä.. otyg att alla amatörnissar skall försöka spara saker "> Helt klart är att jag inte skulle lägga mer än några kB högst i registret eftersom (delar av) registret läses till minnet i uppstarten av windows. Större mängde passar bättre i en ini-fil."Bör man spara inställningar för sitt program i filer eller i en d
Bör man spara inställningar för sitt program i filer eller i en databas?
Jag misstänker att det hela beror på hur mycket data som ska sparas. Men jag vet inte vad "mycket data" är när det gäller inställningar.
Sedan hade jag tänkt att ha en databas i vilket fall, ska jag då använda samma databas för att spara inställningarna för programmet?....
Men om ni föreslår fil för inställningarna...Vilken filtyp bör det vara (.txt || .ini). Spelar det någon roll.
Tacksam för svar
MVH
/JockeSv: Bör man spara inställningar för sitt program i filer eller i
Är det inställningar som är för personen så är db bra för då får personen samma inställningar även om denne går till en annan dator och jobbar.
Är det dator beroende inställningar så tycker jag en ini fill funkar bra.
//TobbeSv: Bör man spara inställningar för sitt program i filer eller i
Intressant "synvinkel". Jag hade inte tänkt så lång.
/JockeSv: Bör man spara inställningar för sitt program i filer eller i
Ex. Storleken på ett formulär kanske ska sparas så att nästa gång programmet startas så kommer programmet att öppnas i samma position som förra gången. Många program fungerar så, t ex utforskaren. Detta är lämpligare att spara i registret tycker jag.
Ex 2. Defaultinställningar för ett program som gäller första gången användaren startar ett program. Här är det mer öppet var man ska lägga det, några alternativ :
* Skapa defaultinställningarna i systemregistret med hjälp av ditt installationsprogram
* Låt default-inställningarna ligga i koden och skriv till registret eller ini-filen vid första uppstarten (kolla efter först om det redan finns registernycklar eller ini-fil)
* Skicka med ini-fil i installationen.
Helt klart är att jag inte skulle lägga mer än några kB högst i registret eftersom (delar av) registret läses till minnet i uppstarten av windows. Större mängde passar bättre i en ini-fil. Blir det ännu större mängder så föredrar jag något binärformat och då döper jag filen till *.dat eller liknande.
Om det ändå är en databasapplikation så tycker jag nog att det är lämpligast att lagra de flesta inställningar där. Undantag finns dock alltid.Sv: Bör man spara inställningar för sitt program i filer eller i
Kan bara instämma med tidigare talare. Min synvinkel på det hela är från en adminístratörs öga. Ta ett enkelt exempel ett mailprogram, ex Outlook Express. Det som sparas består i princip av två delar, inställingar och data. Det är viktigt att man skilljer på de två delarna. Alla inställingar som en användare kan konfigurera i Outlook Express sparas i registret, under respektive användares nyckel. Exempel på inställingar kan ju vara hur stort fönstret är, vilka mailkonton man har konfigurerat osv. Alla mail man sedan plockar ner räknas som data, och dessa sparas i filsystemet i binärfiler under varje användares profil. På så vis så har man allt som är knutet till användaren i hans profil och det går alldeles utmärkt att flytta en användare från dator A till dator B och alla inställingar följer med (om man nu använder sig av Roaming Profiles).
Kort och gott, 4 ställen att spara saker för ett program på:
* C:\Program Files\Programmet.
Här ska allt sparas som är av typen programfiler. Normal så har en användare bara läs och exekverbara rättigheter här. Inga konfigurations eller datafiler här.
* C:\Document and Settings\Användarnamn\Application Data\Programmet.
Här ska allt sparas som är av typen datafiler. Här har aktuell inloggad användare fulla rättigheter. I exemplet med Outlook Express så hamnar binärfilerna med emailen här.
* HKEY_Local_Machine\Software\Programmet
Här ska allt sparas som är av typen inställingar för applikationen. Normalt så har en användare bara läsrättigheter här. Exempel kan vara programversion, sökväg osv.
* HKEY_Current_User\Software\Programmet
Här ska allt sparas som är av typen inställningar för användaren . Här har aktuell inloggad användare fulla rättigheter. Exempel kan vara inställingar för olika mailkonton, regler, hur stort fönstret är, var fönstret är, vilka ikoner som visas osv.
EDIT
Ett dokument från Microsoft som beskriver det jag försöker förklara!
User Data and Settings Management
<URL:http://www.microsoft.com/windows2000/techinfo/administration/management/settings.asp>Sv: Bör man spara inställningar för sitt program i filer eller i
> <b>* Skapa defaultinställningarna i systemregistret med hjälp av ditt installationsprogram</b>
> <b>* Låt default-inställningarna ligga i koden och skriv till registret eller ini-filen vid första uppstarten (kolla efter först om det redan finns registernycklar eller ini-fil)</b>
> <b>* Skicka med ini-fil i installationen.</b>
Du glömde den, i mina ögon, bästa metoden. Om man använder sig av MSI-paket för att installera mjukvaran, så finns möjligheten att sätta defaultinställingarna via MSP-filer. Tyvärr ganska okänt, men ett underbart verktyg. Titta tex på Adobe Reader 6 och dess nya MSP-skapare.
> <b>Helt klart är att jag inte skulle lägga mer än några kB högst i registret eftersom (delar av) registret läses till minnet i uppstarten av windows. Större mängde passar bättre i en ini-fil.</b>
Håller med. En klocka ringer i bakhuvudet om att Microsoft rekomenderar max 2 MByte av data i Registry, något du känner till?Sv: Bör man spara inställningar för sitt program i filer eller i
Sv: Bör man spara inställningar för sitt program i filer eller i
Här ska allt sparas som är av typen programfiler. Normal så har en användare bara skriv och exekverbara rättigheter här. Inga konfigurations eller datafiler här.</b>
Skrivfel, användaren har bara läs och exekverrättigheter här.
/JohanSv: Bör man spara inställningar för sitt program i filer eller i
Naturligtvis! Jag ändrar genast. Tack!Sv: Bör man spara inställningar för sitt program i filer eller i
i mitt Register. Registret är heligt . Skaffa RegCleaner och plocka bort allt "shit"
som knäppgökar har lärt sig att lägga där.
VBA delen är väl ok för den har man lite koll på.Som Ni vet så wurmar jag för bifogad .ini
som man lägger i den lokala användarens .exe mapp.Sv: Bör man spara inställningar för sitt program i filer eller i
"Håller med. En klocka ringer i bakhuvudet om att Microsoft rekomenderar max 2 MByte av data i Registry, något du känner till?"
2 Mbyte??? Det är alldeles för mycket i mina ögon...säkert att du inte menar 2 KByte? Hur som helst, känner inte till några rekommendationer från MS i detta fall.