Chapitre précédentRetour au sommaireChapitre suivant

Documentation VISION (VAPI)

Dernière mise à jour : 04/01/02

Télécharger la doc

INI INTERFACE

 

Résumé
Préfixe de l'interface In
Nombre de fonctions 6
Description Ensemble de fonctions permettant de manipuler des fichiers au format INI. Le nombre de fichiers INI pouvant être gérés sumultanément est de 3.

 

Prototype long cdecl InOpen(char *file)
Paramètres [IN] file : Nom du fichier INI
Retour Si >= 0 : un identifiant de fichier INI
Si < 0, il n'y a plus d'identifiant INI disponible (les 3 sont déjà utilisés)
Description Réserve un identifiant INI en vue d'opérations sur un fichier INI. Si le fichier file n'existe pas, un identifiant est tout de même renvoyé, le fichier devra ensuite être sauvé par la fonction InSaveAndClose.
Remarques  
Version VAPI 1.02 ou supérieure

 

Prototype long cdecl InClose(long hini)
Paramètres [IN] hini : un identifiant de fichier INI précédemment renvoyé par InOpen
Retour 0 : Succès
-1 : Identifiant invalide
Description Libère l'identifiant de fichier INI. Ne sauve pas les modifications, pour cela utiliser InSaveAndClose.
Remarques  
Version VAPI 1.02 ou supérieure

 

Prototype long cdecl InSaveAndClose(long hini, char *new_name)
Paramètres [IN] hini : un identifiant de fichier INI précédemment renvoyé par InOpen
[IN] new_name : nouveau nom de sauvegarde. NULL si inchangé par rapport à l'appel à InOpen
Retour 0 : Succès
-1 : Identifiant invalide ou sauvegarde impossible
Description Génère un fichier INI en validant définitivement toutes les modifications apportées depuis l'appel à InOpen
Remarques  
Version VAPI 1.02 ou supérieure

 

Prototype long cdecl InGetKey(long hini, char *section, char *key, char *val_key)
Paramètres [IN] hini : un identifiant de fichier INI précédemment renvoyé par InOpen
[IN] section : nom de la section
[IN] key : nom de la clé
[OUT] val_key : buffer destiné à recevoir la valeur de la clé en ASCII
Retour 0 : Echec : la clé ou la section n'ont pas été trouvées
1 : Succès, la valeur ASCII de la clé de cette section est présente dans val_key
Description Recherche une clé particulière dans une section particulière
Remarques  
Version VAPI 1.02 ou supérieure

 

Prototype long cdecl InSetKey(long hini, char *section, char *key, char *val_key)
Paramètres [IN] hini : un identifiant de fichier INI précédemment renvoyé par InOpen
[IN] section : nom de la section
[IN] key : nom de la clé
[IN] val_key : buffer contenant la valeur de la clé en ASCII
Retour 0 : Echec : la clé ou la section n'ont pas pu être crées ou modifiées par manque de mémoire
1 : Succès
Description Ajoute ou modifie une section et/ou une clé
Remarques Si la section ou la clé nexiste pas, elle est crée
Version VAPI 1.02 ou supérieure

 

Prototype long cdecl InGetOrSetKey(long hini, char *section, char *key, char *val_key)
Paramètres [IN] hini : un identifiant de fichier INI précédemment renvoyé par InOpen
[IN] section : nom de la section
[IN] key : nom de la clé
[IN/OUT] val_key : buffer contenant la valeur par défaut de la clé en ASCII ([IN]) et/ou la valeur lue de la clé ([OUT])
Retour 0 : La clé a été relue avec succès
1 : La clé a du être créee.
Description Permet de retrouver la valeur d'une clé dans une section et, si cette clé ou cette section n'existe pas de la mettre en place avec une valeur par défaut.
Remarques Très pratique !
Version VAPI 1.02 ou supérieure
Exemple d'utilisation: retrouver une clé propriétaire dans un LDV
long hini, must_save ;
short angle = 90; /* Valeur par défaut */
char buffer[256] ;
char *path_ldv, *language ;

path_ldv = Vapi->CoGetLDVPath() ;  /* Récupère le chemin courant des LDV */
language = Vapi->CoGetCurrentLanguage() ; /* Récupère la langue actuelle */
if ( path_ldv && language )
{
  sprintf( buffer, "%s\\%s\\MYLDV.INI", path_ldv, language ) ;
  hini = Vapi->InOpen( buffer ) ;
  if ( hini >= 0 )
  {
    sprintf( buffer, "%d", angle ) ; /* Mise en place de la valeur par défaut */
    must_save = Vapi->InGetOrSetKey( hini, "Parameters", "Angle", buffer ) ;
    angle = atoi( buffer ) ; /* Soit angle vaudra 90 (valeur par défaut), soit la valeur donnée par le fichier INI */
    if ( must_save ) Vapi->InSaveAndClose( hini ) ; /* Sauvegarde si la clé n'existait pas */
    else             Vapi->InClose( hini ) ;        /* Fermeture normale sinon */
  }
}

Chapitre précédentRetour au sommaireChapitre suivant

Documentation VISION (VAPI)

Dernière mise à jour : 04/01/02

Télécharger la doc

INI INTERFACE