Convertion en heures utc vb6

jesusdutd3 Messages postés 3 Date d'inscription samedi 16 février 2008 Statut Membre Dernière intervention 14 janvier 2009 - 14 janv. 2009 à 10:37
jmf0 Messages postés 1566 Date d'inscription mardi 26 décembre 2000 Statut Membre Dernière intervention 5 avril 2013 - 14 janv. 2009 à 20:09
Bonjour à tous,

Je suis à la recherche d'une fonction vb6 permettant de convertir une heure en utc à partir d'une timezone et inversement de recuperer une heure locale en fonction d'une heure utc et d'une timezone.

Cela fait un long moment que je cherche mais sans succes.

D'avance merci à ceux qui me reponderont :)

3 réponses

PCPT Messages postés 13280 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 49
14 janv. 2009 à 10:44
salut,

voici un exemple d'utilisation des API qui devrait correspondre à ta demande :






Private Type 
FILETIME

        dwLowDateTime As Long
        dwHighDateTime As Long
End Type
Private Type SYSTEMTIME
    wYear As Integer
    wMonth As Integer
    wDayOfWeek As Integer
    wDay As Integer
    wHour As Integer
    wMinute As Integer
    wSecond As Integer
    wMilliseconds As Integer
End Type
Private Declare Function GetProcessTimes Lib "kernel32" (ByVal hProcess As Long, lpCreationTime As FILETIME, lpExitTime As FILETIME, lpKernelTime As FILETIME, lpUserTime As FILETIME) As Long
Private Declare Function FileTimeToLocalFileTime Lib
"kernel32" (lpFileTime As FILETIME, lpLocalFileTime As
FILETIME) As
Long
Private Declare Function FileTimeToSystemTime Lib "kernel32" (lpFileTime As FILETIME, lpSystemTime As SYSTEMTIME) As Long
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long
Private Sub Form_Load()
    'KPD-Team
2000
    'URL:
http://www.allapi.net/
    'E-Mail:
KPDTeam@Allapi.net
    Dim FT0 As FILETIME, FT1 As FILETIME, ST As SYSTEMTIME
    GetProcessTimes GetCurrentProcess, FT1, FT0, FT0,
FT0
    FileTimeToLocalFileTime FT1, FT1
    FileTimeToSystemTime FT1, ST
    MsgBox "This program was started at
" + CStr(ST.wHour) + ":" + CStr(ST.wMinute) + "." + CStr(ST.wSecond) + " on " + CStr(ST.wMonth) + "/" + CStr(ST.wDay) + "/" + CStr(ST.wYear)
End Sub






<small>
[../code.aspx?ID=39466 Coloration VB6, VBA,
VBS]
</small>






++

<hr size="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp 
0
jesusdutd3 Messages postés 3 Date d'inscription samedi 16 février 2008 Statut Membre Dernière intervention 14 janvier 2009
14 janv. 2009 à 18:52
Merci beaucoup pour ta réponse,

Si j'ai bien compris , la fonction FileTimeToLocalTime prend une date en utc et retourne la date locale. Mais comment recuperer le FileTime correspond à telle ou telle timezone ? J'ai un type TIME_ZONE_INFORMATION , existe-t-il une methode pour recuperer un FileTime en fonction d'un time_zone_information ?

Pour etre sur d'etre clair voici le detail de ce que je dois faire :

Je dois d'abord convertir la date actuelle (heure et minutes comprises)  en utc.

Puis voir à quelle date (heure et minutes comprises) cela correspond par rapport à la TimeZone qui m'interesse (ça peut etre un peu partout dans le monde)

Je réalise ensuite des calculs qui me retournent une date (heure et minutes comprises) que je dois retraduire en utc pour ensuite recuperer la date française (heure et minutes comprises) à laquelle elle correspond.

Encore merci !
0
jmf0 Messages postés 1566 Date d'inscription mardi 26 décembre 2000 Statut Membre Dernière intervention 5 avril 2013 7
14 janv. 2009 à 20:09
Bonjour,

tu ne peux faire celà, dès lors que même les fuseaux horaires ne sauraient t'aider puisque certains pays ont des heures officielles qui n'y correspondent pas toujours, qu'à laide d'une base de données dans laquelle sont enregistrés, pour chaque zone :
1) les écarts par rapport à GMT
2) les modifications saisonnières (hé oui), en tenant de surcroît compte du fait que chaque pays est libre de modifier, à tout moment, sa politique de modification saisonnière (tables à mettre donc à jour chaque fois que de besoin)

Selon les besoins, certains ont choisi, pour certaines applications "partagées", de faire l'inverse en matière de mise à jour des écarts : ce sont les utilisateurs qui sont alors chargés de renseigner et modifier l'écart, à un instant t, par rapport à GMT.
0