Bonjour à tous,
J'utilise au sein d'un programme le code suivante:
Malheureusement, j'ai beau changer les settings sur allemand ou anglais, rien n'y fait, le format retourné est toujours le même
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 void ******::Get****FormattedDate(CString& datestring, SYSTEMTIME time) { CString result; datestring.Empty(); DWORD err= 0; LCID lcid = LOCALE_USER_DEFAULT; int length = GetDateFormat(lcid, DATE_SHORTDATE, &time, NULL, NULL, 0); if(length == 0) { /* error */ err = GetLastError(); } /* error */ else { LPTSTR p = result.GetBuffer(length); if(!::GetDateFormat(lcid, DATE_SHORTDATE, &time, NULL, p, length)) { err = GetLastError(); result.ReleaseBuffer(); } else { result.ReleaseBuffer(); } } datestring = result; }.
En faisant quelques recherches, je suis tombé sur le site suivant http://www.flounder.com/localeexplorer.htm , il permet de tester la fonctionnalité ainsi que de récupérer le code source utilisé. Lui fonctionne très bien et retourne un résultat différent selon que je suis en anglais/francais/allemand, un copier coller vers mon code par contre ne fonctionne pas.
La seule différence que je vois se trouve au niveau de la compilation, "LocalExplorer" est compilé avec VS6 tandis que je tourne sur VS2008.
Quelqu'un a t il une solution ou un conseil à donner?
D'avance, un grand merci.
Partager