Vous pouvez déclarer les définitions des propriétés pour un nombre quelconque de navigateurs dans le fichier Browscap.ini. Vous pouvez également définir les valeurs à utiliser par défaut si le navigateur du client ne figure pas dans la liste.
Pour chaque définition d'un navigateur, vous spécifiez un en-tête Agent utilisateur HTTP ainsi que les propriétés et les valeurs que vous souhaitez associer à cet en-tête. Pour plus d'informations sur le format de l'en-tête Agent utilisateur HTTP, reportez-vous à la spécification HTTP disponible à l'adresse http://www.w3.org.
[; commentaires]
[EntêteAgentUtilisateurHTTP]
[parent = DéfinitionNavigateur]
[propriété1 = valeur1]
...
[propriétéN = valeurN]
[Paramètres par défaut de Browser Capabilities]
[PropriétéParDéfaut1 = ValeurParDéfaut1]
...
[PropriétéParDéfautN = ValeurParDéfautN]
Vous pouvez utiliser l'astérisque (*) comme caractère générique dans EntêteAgentUtilisateurHTTP afin de remplacer un nombre quelconque (zéro ou plus) de caractères et le point d'interrogation (?) pour remplacer un caractère unique.
Par exemple, si vous spécifiez la chaîne suivante pour EntêteAgentUtilisateurHTTP :
[Mozilla/4.0 (compatible; MSIE 5.0;* Windows NT)]
Elle correspond à tous les en-têtes Agent utilisateur suivants :
[Mozilla/4.0 (compatible; MSIE 5.0; Windows NT)]
[Mozilla/4.0 (compatible; MSIE 5.0; AK; Windows NT)]
[Mozilla/4.0 (compatible; MSIE 5.0; SK; Windows NT)]
Remarque L'objet BrowserType tente d'abord de trouver une correspondance exacte entre l'en-tête Agent utilisateur HTTP et une valeur de EntêteAgentUtilisateurHTTP. En cas d'échec, il tente de trouver une correspondance utilisant des caractères génériques.
Si plusieurs définitions de navigateurs contenant des caractères génériques correspondent à l'en-tête Agent utilisateur, l'objet BrowserType renvoie les propriétés de la définition correspondant le mieux à l'en-tête. La meilleure correspondance est celle qui remplace le plus petit nombre de caractères.
Le tableau suivant répertorie quelques-unes des propriétés :
| Propriété | Description |
| ActiveXControls | Spécifie si le navigateur prend en charge les contrôles ActiveX®. |
| Backgroundsounds | Spécifie si le navigateur prend en charge les sons en arrière-plan. |
| Beta | Spécifie si le navigateur est une version bêta. |
| Browser | Spécifie le nom du navigateur. |
| Cdf | Spécifie si le navigateur prend en charge le format CDF (Channel Definition Format for Webcasting). |
| Cookies | Spécifie si le navigateur prend en charge les cookies. |
| Frames | Spécifie si le navigateur prend en charge les cadres. |
| Javaapplets | Spécifie si le navigateur prend en charge les applets Java. |
| Javascript | Spécifie si le navigateur prend en charge JScript. |
| Platform | Spécifie la plate-forme sur laquelle s'exécute le navigateur. |
| Tables | Spécifie si le navigateur prend en charge les tableaux. |
| Vbscript | Spécifie si le navigateur prend en charge VBScript. |
| Version | Spécifie la version du navigateur. |
Dans l'exemple suivant, l'indicateur parent permet à la deuxième définition de navigateur d'hériter de la première, de sorte que la définition de Microsoft® Internet Explorer 5.x hérite de toutes les propriétés de Microsoft® Internet Explorer 5.0 (par exemple, frames=TRUE, tables=TRUE et cookies=TRUE). Il ajoute des informations propres à la plate-forme en ajoutant la ligne platform=WinNT.
;;ie 5.0
[IE 5.0]
browser=IE
Version=5.0
majorver=#5
minorver=#0
frames=TRUE
tables=TRUE
cookies=TRUE
backgroundsounds=TRUE
vbscript=TRUE
javascript=TRUE
javaapplets=True
ActiveXControls=TRUE
Win16=False
beta=False
AK=False
SK=False
AOL=False
;;ie 5.x
[Mozilla/4.0 (compatible; MSIE 5.*; Windows NT)]
parent=IE 5.0
version=5.0
minorver=0
platform=WinNT
; Navigateur par défaut
[*]
browser=Default
frames=FALSE
tables=TRUE
cookies=FALSE
backgroundsounds=FALSE
vbscript=FALSE
javascript=FALSE