Avatar billede vbghost Nybegynder
14. september 2000 - 22:28 Der er 9 kommentarer og
1 løsning

Brug af .ini filer?

Hvordan bruger jeg ini filer?

Jeg kan jo lave et eller andet med tekt filer, men jeg ser jo, at alle programmer benytter ini filer...
Så er der ikke en smart måde, så jeg kan gemme en værdi i en ini-fil, og derefter hente den igen i genstart af programmet....?
Avatar billede driis Nybegynder
14. september 2000 - 23:11 #1
INI-filer er netop tekstfiler, som bruges til at gemme indstillinger. Så du behandler en INI fil præcis som du ville behandle en tekstfil.

Men at gemme værdier og hente dem igen i tekst (=ini) filer er da ret simpelt; Dú kan bare lave en funktion, der henter alle indstillingensværdierne ind i nogle variable ved opstart; og så har du alle indstillingerne klar til videre brug i programmet.
Avatar billede kaffe Nybegynder
15. september 2000 - 07:33 #2
Brug API-kald.

Til egne .ini filer anvendes:
GetPrivateProfileString
WritePrivateProfileString
...
Til Win.ini anvendes:
GetProfileString
WriteProfileString
...

Avatar billede powell Nybegynder
15. september 2000 - 08:25 #3
Du kan også gemme værdierne i en cfg fil, som regel også et rent ASCII format
Avatar billede vbghost Nybegynder
15. september 2000 - 11:32 #4
... kom nu med et eks.
Avatar billede vbghost Nybegynder
15. september 2000 - 11:33 #5
GetPrivateProfileString = ???
Avatar billede joern Nybegynder
15. september 2000 - 16:08 #6
Jeg ville læse en ini-fil med open file:
Dim data(30)
dim a as integer

a=0
open app.path & \"minfil.ini\" for input as #1
  do while eof(1)=false 
    line input #1, data(a)
    a=a+1
  loop
close #1

M.v.h.  Jørn  15-09-2000  16:08 
Avatar billede vbghost Nybegynder
15. september 2000 - 16:38 #7
findes der ikke en smartere metode?

hvorfor hedder det så .ini, det kan der også hede .skod???
Avatar billede kaffe Nybegynder
15. september 2000 - 18:30 #8
.ini filer følger dette mønster:

[Section]
key=string

GetPrivateProfileString henter den string der står udfor nøglen man specificerer i kaldet.

lValue = GetPrivateProfileString(txtSection, txtKey, sDefault, sReturn, lsize, txtPath)

hvor
txtSection er ovennævnte sektion,
txtkey er nøgle
sDefault er standardværdi der returneres hvis der ingen værdi står udfor nøglen
sReturn er værdien der står ud for nøglen
lsize er max længden på stringen og
txtpath er stien til ini filen.

Med dette kan der laves .ini filer så store man ønsker det, delt op i logiske sektioner, og det er væsentligt hurtigere end at skulle køre det hele igennem med en do-while løkke.

WritePrivateProfileString skriver så til .ini filen i stedet....

API-Kaldet:
Declare Function GetPrivateProfileString Lib \"Kernel32\" Alias \"GetPrivateProfileStringA\" (ByVal sSection As String, ByVal sKey As String, ByVal sDefault As String, ByVal sReturn As String, ByVal lReturnSize As Long, ByVal sFilename As string) As Long

og

Declare Function WritePrivateProfileString Lib \"Kernel32\" Alias \"WritePrivateProfileStringA\" (ByVal sSection As String, ByVal sKey As String, ByVal sSetting As String, ByVal sFilename As String) As Long

God fornøjelse
Avatar billede vbghost Nybegynder
15. september 2000 - 23:18 #9
Kaffe er gud ;)

thx... hold da kæft en god forklaring ;)
Avatar billede vbghost Nybegynder
15. september 2000 - 23:18 #10
se det var lige det jeg havde brug for ....
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

Seneste spørgsmål Seneste aktivitet
I går 21:00 Libre Office Impress Af Frank i Andre styresystemer
I går 11:47 VB script Af Jenshentze i Word
I går 11:21 Popup ved opstart Af mort1 i Windows
04/0918:50 Slet lokal konto Af ErikHg i Windows
04/0916:05 Ændre tal i en celle Af xvid i Excel