Question

J'ai trouvé des problèmes avec un nouveau serveur Web. Nous avons un nouveau serveur Web qui affiche les dates différemment de nos anciens serveurs Web.

Nous utilisons des pages Web ASP Classic sur IIS 6.0 avec Windows Server 2003.

Nous nous sommes connectés en tant qu'administrateur et avons défini les paramètres régionaux de manière appropriée, puis nous les avons appliqués à l'utilisateur actuel et au profil d'utilisateur par défaut.

Nous sommes ensuite entrés dans le registre et avons mis à jour les formats appropriés sous HKEY_USERS / .default / control panel / international.

Mettez à jour la configuration asp.net de nos sites Web avec la page de code et les paramètres régionaux appropriés.

Quelqu'un a-t-il d'autres endroits où l'application pourrait obtenir des formats de date?

Était-ce utile?

La solution

Je sais que ce n'est pas la "bonne" façon de résoudre le problème. Cependant, l'application a été écrite il y a de nombreuses années. Obtenir quelque chose grâce à la planification / au contrôle des modifications serait une tâche ardue. Il s'agit de la seule application exécutée sur le serveur. Ainsi, vous pouvez configurer le serveur pour répondre à cette application unique. En plus, cela me rendait dingue qu'un nouveau serveur qui devait être configuré de la même manière qu'un ancien serveur ne fonctionne pas.

Il s'avère qu'en plus de HKEY_USERS / * / Panneau de configuration / international , il existe un paramètre pour les programmes non-unicode. Vous le trouverez sous HKLM / system / currentcontrolset / control / nls / language / Par défaut . Définissez-le sur la page de code correcte et elle est dorée.

D'autre part, si vous préférez ne pas modifier le registre directement, vous pouvez mettre à jour toutes ces valeurs via les paramètres régionaux du panneau de configuration.

Vous pouvez ajuster les formats via le bouton ' personnaliser '. Vous pouvez modifier la "langue pour les programmes non-Unicode" sous l'onglet Avancé. Assurez-vous simplement de cocher la case "Appliquer au profil par défaut" au bas de l'onglet Avancé.

Autres conseils

Je ne pense pas que la réponse au vote le plus élevé soit correcte, bien que proche.

J'ai dû utiliser regedit pour modifier tous les paramètres d'internationalisation de HKU \ S-1-5-19 \ Panneau de configuration \ International (autorité NT) et de HKU \ S-1-5-20 \ Control Panel \ International (Réseau Service) pour correspondre aux paramètres déjà définis dans HKU \ S-1-5-18 \ Control Panel \ International (Système local).

Cela a parfaitement fonctionné.

J'ai modifié manuellement tous les paramètres que je pouvais voir qui étaient différents.

Je pense que je devais vraiment modifier les paramètres de S-1-5-20 (service réseau).

ASP classique Définit par défaut l'ID de paramètres régionaux configuré lors de l'installation du serveur. Si vous avez accès au serveur d'origine, exécutez le code suivant pour obtenir l'ID de paramètres régionaux dans lequel il fonctionne et vérifier que le nouveau serveur utilise le même.

<%=Session.LCID%>

Si les identifiants de paramètres régionaux sont différents et que vous ne pouvez pas les modifier sur le nouveau serveur, vous pouvez ajouter une ligne au sous-programme Session_OnStart du fichier global.asa pour l'application attribuant le bon identificateur de paramètres régionaux à Session.LCID.

Utilisation d'une page ASP avec le contenu: -

Response.Write GetLocale

Pourrait être informatif, il vous montrera quelle locale VBScript pense utiliser.

J'ai déjà rencontré des problèmes de ce type dans le passé sombre et lointain avec la sécurité intégrée. L'ASP met en cache les détails régionaux de une utilisateur lorsqu'il doit les utiliser pour la première fois, puis continue à utiliser ces paramètres jusqu'à la fin du processus. ASP obtient ces paramètres de la ruche utilisateur associée à l'identité de l'utilisateur sous lequel le code est en cours d'exécution. La plupart du temps, ce serait DEFAULT car l'utilisateur ne possède pas de profil sur le système.

Toutefois, si l'utilisateur s'est connecté de manière interactive au serveur, il aura un profil et ses paramètres sont utilisés. C’est pourquoi j’ai vu des situations dans lesquelles le serveur semble avoir des problèmes intermittents avec les paramètres régionaux.

Je ne me souviens pas si j'ai vu cela sur IIS6, je l'ai certainement vu sur IIS5.

Si vous exécutez votre application ASP sous un autre compte (pas IUSR_Guest) Connectez-vous en tant que compte, définissez le format de date / heure sur votre choix et redémarrez IIS.

Allez au Panneau de configuration - > Options régionales et linguistiques, définissez toutes les options nécessaires, puis sous l'onglet "Avancé", sélectionnez les paramètres des programmes non Unicode et cochez la case "Appliquer tous les paramètres au compte actuel et au profil utilisateur par défaut". Appuyez sur OK et redémarrez le serveur.

Sous Windows Server 2008, les administrateurs ont un onglet "Administratif" supplémentaire. Là, appuyez sur «Copier vers les comptes réservés».

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top