| Um nicht irgend einen Geburtstagstermin zu vergessen,
    hatte ich mir ein kleines Programm geschrieben, daß das aktuelle Datum mit den
    Geburtstagsdaten einer Textdatei verglich und mich erinnerte, wenn ein Geburtstag nahte. Irgendwie kam es später dazu, das auch andere dieses Programm nutzen wollten, und
    plotzlich hatte ich das Problem an einem PC, daß das Programm nichts anzeigte, obwohl ein
    Termin anstand. Was war passiert?
 
 Das Systemdatumsformat entsprach nicht dem deutschen Standardformat TT.MM.JJJJ und so
    konnten die Geburtstagstermine
 (die in diesem Format angegeben waren ) natürlich nicht stimmen.
 Damit Sie zukünftig bei ähnlichen Problemen gleich wissen, wo der Hase läuft,
 gibt es hier den Quellcode für ein kleines Programm,
 das Ihnen das Systemdatumsformat ermittelt und anzeigt.
 Dafür brauchen wir wie immer ein neues Projekt und neben der standardmäßig
    schon enthaltenen Form noch ein Modul (nur 16Bit). ######################################################16Bit
 General/Declarations (Modul)
 Declare Function GetProfileString Lib "Kernel"
    (ByVal Sname$, ByVal Kname$, ByVal Def$, ByVal Ret$, ByVal Size%) As Integer
 Global datemask As Variant
 Global dateformat As Variant
 ######################################################32Bit
 Allgemein/Deklarationen (Form)
 
 Private Declare Function GetProfileString Lib "kernel32" Alias
    "GetProfileStringA" (ByVal lpAppName As String, ByVal lpKeyName As String, ByVal
    lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long) As Long
 
 Public datemask As Variant
 Public dateformat As Variant
 
 ######################################################
 
 Sub DateCheck ()
 
 Dim Strsecname As String
 Dim Strkeyname As String
 Dim Varsuccess As Variant
 Dim Strretdate As String
 Dim strretsep As String
 Dim strchar As String * 1
 
 Strsecname = "Intl"
 Strkeyname = "sShortDate"
 Strretdate = String$(11, 0)
 Varsuccess = GetProfileString(Strsecname, Strkeyname, "", Strretdate,
    Len(Strretdate))
 Strsecname = "Intl"
 Strkeyname = "sDate"
 strretsep = String$(2, 0)
 Varsuccess = GetProfileString(Strsecname, Strkeyname, "", strretsep,
    Len(strretsep))
 strretsep = Left$(strretsep, 1)
 strchar = UCase$(Left$(Strretdate, 1))
 datemask = "##" & strretsep & "##" & strretsep &
    "####"
 
 Select Case strchar
 Case "D": dateformat = "DD" & strretsep &
    "MM" & strretsep & "YYYY"
 Case "M": dateformat = "MM" & strretsep &
    "DD" & strretsep & "YYYY"
 Case "Y": datemask = "####" & strretsep &
    "##" & strretsep & "##"
 dateformat = "YYYY" & strretsep & "MM" &
    strretsep & "DD"
 End Select
 
 End Sub
 Legen Sie zwei Label Objekte an (Label1 u. Label2) und
    tragen Sie in den Abschnitt Form/Load folgendes ein. Call DateCheck
 Label1.Caption = Dateformat
 Label2.Caption = Datemask
 Nun die Form noch etwas grafisch ansprechend aufbereiten,
    der Form einen Namen und ein Icon verpassen und fertig ist Ihr Testprogramm zur
    Systemdatumsformatermittlung. |