BOOL GetServerVariable (LPTSTR lpszVariableName, LPVOID lpvBuffer, LPDWORD lpdwSize );
Valeur de retour
Différent de zéro en cas de succès, sinon 0. L'appel API Win32 GetLastError peut être utilisée pour déterminer pourquoi l'appel a échoué. Les valeurs d'erreur possibles comprennent
| Valeur | Sens |
| ERROR_INVALID_PARAMETER | Poignée de mauvaise connexion. |
| ERROR_INVALID_INDEX | Identificateur de variable incorrect ou non pris en charge. |
| ERROR_INSUFFICIENT_BUFFER | Tampon trop petit ; la taille requise est retournée dans lpdwSize. |
| ERROR_MORE_DATA | Tampon trop petit, qu'une partie des données retournées. La taille totale des données n'est pas retournée. |
| ERROR_NO_DATA | Les données demandées ne sont pas disponibles. |
Paramètres
lpszVariableName
Chaîne terminée par null indiquant quelle variable est demandée. Consultez la section Remarques ci-dessous pour une sélection de noms possibles. Tous les noms de variables sont définies dans la spécification CGI située à http://hoohoo.ncsa.uiuc.edu/cgi/env.html.
lpvBuffer
Pointeur vers la mémoire tampon pour recevoir les informations demandées.
lpdwSize
Pointeur vers DWORD qui indique le nombre d'octets disponibles dans la mémoire tampon. Sur la réussite la valeur DWORD contenant le nombre d'octets transférés dans la mémoire tampon (y compris l'octet null-terminer).
Remarques
Cette fonction membre est appelée par le framework pour copier les informations relatives à une connexion HTTP, ou sur le serveur lui-même, dans un mémoire tampon fourni par l'appelant. Possible lpszVariableNames comprennent:
| Valeur | Sens |
| ALL_HTTP | Tous les en-têtes HTTP qui n'étaient pas déjà analysés dans l'une des variables ci-dessus. Ces variables sont de la forme HTTP_lt ; nom du champ d'en-tête & gt. |
| AUTH_TYPE | Contient le type d'authentification used.nbsp ; Par exemple, si l'authentification de base est utilisée, la chaîne sera « De base ». Pour Windows &NT Challenge-réponse, il sera « NTLM ». Autres schémas d'authentification auront d'autres chaînes. Parce que les nouveaux types d'authentification peuvent être ajoutés au serveur Internet, il n'est pas possible d'énumérer toutes les chaînes possibles. Si la chaîne est vide, alors aucune authentification n'est utilisée. |
| CONTENT_LENGTH | Le nombre d'octets qui le script peut s'attendre à recevoir du client. |
| CONTENT_TYPE | Le type de contenu de l'information fournie dans le corps d'une requête POST. |
| GATEWAY_INTERFACE | La révision de la spécification CGI auquel ce serveur est conforme. La version actuelle est CGI/1.1. |
| HTTP_ACCEPT | En-tête de cas spécial HTTP. Les valeurs de l'accepter : les champs sont concaténées, séparées par des «, ». Par exemple, si les lignes suivantes font partie de l'en-tête HTTP
alors la variable HTTP_ACCEPT auront une valeur de:
|
| PATH_INFO | Informations supplémentaires de chemin d'accès, tel qu'indiqué par le client. Cela comprend la partie arrière de l'URL après le nom du script, mais avant la chaîne de requête (le cas échéant). |
| PATH_TRANSLATED | C'est la valeur de PATH_INFO, mais avec un nom de chemin d'accès virtuel étendu dans une spécification de répertoire. |
| QUERY_STRING | L'information qui suit le ? dans l'URL qui référence ce script. |
| REMOTE_ADDR | L'adresse IP du client. |
| REMOTE_HOST | Le nom d'hôte du client. |
| REMOTE_USER | Contient le nom d'utilisateur fourni par le client et authentifié par le serveur. |
| REQUEST_METHOD | La méthode de demande HTTP. |
| NOM_DU_SCRIPT | Le nom du programme script en cours d'exécution. |
| SERVER_NAME | Du serveur nom d'hôte (ou adresse IP) tel qu'il devrait apparaître dans autoréférencement URL. |
| SERVER_PORT | Le port TCP/IP sur lequel la demande a été reçue. |
| SERVER_PROTOCOL | Le nom et la version du protocole de recherche d'informations relatives à cette demande. Normalement HTTP/1.0. |
| SERVER_SOFTWARE | Le nom et la version du serveur web sous lequel s'exécute le programme CGI. |
Aperçu CHttpFilterContext |nbsp ; Membres de la classe | Graphique de la hiérarchie