fergonm wrote:Muchas gracias por vuestras contestaciones.
Nunca usé archivos tipo .INI, por lo que no se como utipizarlos. Pueden indicarme donde encontrar ejemplos.
Un saludo.
Fernando, aquí tienes un explicacion más detallada sobre los INI:
Es un fichero de texto corriente. Puedes crearlo con cualquier editor de texto.
Puedes crearlo con el mismo nombre del ejecutable de tu aplicacion.
Esta compuesto por partes que se escriben entre corchetes denominadas entradas ej: [CONFIG], e inmediatamente debajo escribes los datos o variables que utilizaras en tu programa.
Para utilizar los datos en él, desde tu programa debes escribir:
GetPvProfString("Config", "cPath", ".", cIniFile)
Donde: Config es la entrada, cPath el dato a leer o tomar, .\ es el valor por defecto y cIniFile el nombre de la variable donde lo cargas.
Para escribir en un fichero INI:
WritePProString("Config", "cPath", ".", cIniFile)
En la carpeta Samples de FWH encontraras estos ejemplos:
TestIni.prg, TestIni2, TestIni3.
Ejemplo de como yo los uso:
[CONFIG]
DrivDirPadre=.\ //Directorio padre ej: C:\NombreCarpeta
Path=.\ //Sub dir del prog ej: c:\NombreCarpeta\Contabil
En el programa principal:
Static oWnd
Static cPathDef, cDirPadre
Static cIniFile :="NombreFich.Ini"
Function Main()
local.....
//Aqui cargas los valores definidos en el INI a variables Static
cPathDef:= GetPvProfString( "Config", "Path" , "." , cIniFile )
DirPadre:= GetPvProfString( "Config", "DrivDirPadre" , "." , cIniFile )
SET DEFAULT TO (cPathDef) //donde estaran tus ficheros
//Los demas Sets y otros de tu programa
SET......
SET.....
DEFINE WINDOW oWnd....etc
...
...
ACTIVATE WINDOW oWnd
RETURN NIL
Aqui una muestra de un fichero INI:
[CONFIG]
MaxRegDeleted=200
ReordFicheros=N
ProgramaActivo=N
DrivDirPadre=.\
Path=.\
DrivDirUsers=.\
MesCerrado=31/07/2008
ImpModuCks=..\.\WCHEQ\CHEQUES
UltCompact=04/09/2008
UltReindex=04/09/2008
[cDiario]
FormaPredeterm=S
LinNumCD=5.50
ColNumCD=74.00
LinFecha=7.00
ColFecha=74.00
LinConcep=11.00
ColConcep=10.00
LinInicio=14.00
MaxLineas=50.00
LinTotales=51.50
Columna1=4.00
Columna2=20.00
Columna3=0.00
Columna4=66.00
Columna5=77.00
AnchPapel=2100
AltoPapel=2770
AnchFPred=2100
AltoFPred=2790
[Brushes]
BrushWndMain=D:\FAPSOFT\BRUSH5.BMP
BrushChild=13364189
BrushMGet=11976642
BrushDlgGet=10729677
**DirecDegrad=DER
**TipoDegrad=1
[Sonidos]
SiNo=c:\windows\media\CHIMES.WAV
Alto=c:\windows\media\CHORD.WAV
Info=c:\windows\media\NOTIFY.WAV
Espero te ayude esta informacion. Saludos.
Francisco J. Alegría P.