Voici une solution pour régler ce grmblbl de problème de dates et autres ***ries liées aux paramètres internationaux, elle fonctionne sous IIS5, windows 2000 SP2+ :
a) créer les entrées de registre suivants :
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLEAUT\VarConversionLocaleSetting = 0,1,2 (DWORD)
- HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\SetVarConversionLocaleSetting = 0,1,2 (DWORD)
b) assigner la même valeur aux deux clés ci-dessus selon les indication suivantes :
- 0 = Paramètres par défaut, le système se comporte comme si ces clés n'existaient pas (comportement "aléatoire" sous IIS)
- 1 = Le format est forcé sur la définition qui existe dans l'arborescence HKEY_USERS\.default\Control Panel\International
- 2 = Le format est forcé sur la définition "par défaut du système", pour la modifier, utilisez le Control Panel -> International -> Set Default. Avec cette option le contenu de la registry est ignoré et la valeur choisie est forcée dans tous le cas.
c) n'oubliez pas de rebooter la machine pour valider tout ça (redémarer IISAdmin est insuffisant!)
Une note, si vous utilisez le code ASP ou ASPX "Session.LCID=nnnn", le LCID DOIT AVOIR ETE INSTALLE SUR LA MACHINE au moyen du Control Panel -> International !!!.
Quelques LCID :
- English / United State = 1033
- Français / France = 1036
- Français / Suisse = 4108
Si vous voulez modifier le LCID pour tout un site, placez dans un fichier "global.asa" (ou global.asax pour ASP.NET), dans l'évènement.
Exemple :
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
Sub Session_OnStart
'Global session config's
Session.LCID=4108
End Sub
</SCRIPT>
Voici autre une solution - assez astucieuse - pour les autres systèmes :.
a) lancer le
ce script dans une fenêtre CMD (si votre environnement vous empêche de télécharger un fichier .vbs, vous le trouverez ici
compressé en .zip) :
cscript iusr.vbs
b) noter les username/password IUSR_xxx et IWAM_xxx
c) se loger interactivement sous ces comptes (les profiles vont être créés) - si on y arrive pas, vérifier la local security policy "LogOn locally"
e) modifier les paramètres internationaux (control panel) de manière à ce que ce soit cohérent.
f) NE PAS effacer les profiles !!!
g) vérifier que l'appli WEB tourne sous IIS dans le contexte "Medium" ou "High Isolated" (dans le contexte "Low", l'appli tourne avec le compte SYSTEM, alors là, aucune chance !!!)
h) pour des raisons de sécurité, effacez immédiatement le fichier iusr.vbs !!!
Et ça devrait aller beaucoup mieux !!!