Experience Index Returns (Open-source)

Discussion in 'MDL Projects and Applications' started by Muerto, Apr 7, 2016.

  1. Muerto

    Muerto MDL Debugger

    Mar 7, 2012
    1,855
    2,103
    60
    I believe the string fault is in the MUI, which was clearly never updated. So, I think the code produced is sufficient. Thanks for updating! I'm just compiling the new binary.
     
  2. Muerto

    Muerto MDL Debugger

    Mar 7, 2012
    1,855
    2,103
    60
    #542 Muerto, Jan 27, 2020
    Last edited: Jan 19, 2021
    (OP)
    A test version is available (Not stable) v2.1.0 (expires 15.2.2020):
    Removed deprecated beta.

    If anyone willing could run an 'In-Depth' assessment and send me their session log, that would be great. The session log contains your culture name, operating system and strings I can translate to make your language compatible. This will also help me problem solve and compare data.

    Instructions:

    1. Open Xiret. For non Windows 10 users some fonts may be installed for full compatibility.
    2. Click 'Tools > Run In-Depth Assessment' or just use shortcut 'Alt+V' and the assessment will start.
    3. Wait for the assessment to complete, then click 'Export Session' (Enabled after the assessment completed).
    4. Save the text file and upload it whichever way you like.

    A clean virus total report and other details are included with the download.

    Currently implemented:
    Code:
    en-GB, en-US, es-ES, de-DE
    
     
  3. ItielMaN

    ItielMaN MDL Senior Member

    Apr 30, 2011
    367
    59
    10
    #543 ItielMaN, Jan 27, 2020
    Last edited: Jan 27, 2020
    Hmm, in the attached it's reported that the primary monitor size is 1280 X 720, but in fact it's 1920x1080. Same for the resolution set in Windows.
    I'm guessing this is the result you get from WEI, and there's nothing you can do about it?

    You pretty much nailed it with the Metrics window. Focused + hovered + clicked states are looking great, and you are caching open tabs for the window's lifetime. Great work! :)

    I'm probably asking too much here, but can you do something about the colored line not showing up immediately (when clicking a tab that takes time to gather information, like D3DAssessment) in Metrics?

    Edit: Oh, also, in the main UI the letter i in "Disk" in "Primary Hard DIsk" is capitalized.

    Edit #2: The "Last Update" on the main UI may be perceived by some users as "last update to Xiret" and not as "last assessment". WDYT?
     

    Attached Files:

  4. Muerto

    Muerto MDL Debugger

    Mar 7, 2012
    1,855
    2,103
    60
    #544 Muerto, Jan 27, 2020
    Last edited: Jan 19, 2021
    (OP)
    Hey thanks for testing.

    Unfortunately I cannot do anything. You're correct as it's a direct output from the core of WinSAT.exe. Also I doubt I'll fix the UI (this isn't a no), there's only so much I can do with VB.NET and non-XAML components; fixing that would be wasting time. I also find it hard to optimize in VB.NET as opposed to C#. Thanks for the feedback on the previous changes.

    I've corrected the capitalized 'I' in "Primary Hard Disk", and another good mention, I have changed "Last Update" to "Last Assessment". I took a look at your Session Log as 'he-IL', but it seems your system is in English. I think that the detection isn't working properly. I'll look into it.

    Again sorry for the time taken, this application is really at the back of my pile and I find it hard to go back each time now I've permanently switched to C#. VB is hard garbage.
     
  5. ItielMaN

    ItielMaN MDL Senior Member

    Apr 30, 2011
    367
    59
    10
    Hmm? Not sure what you mean. My system is indeed set to he-IL, both in the system language and region settings.
     
  6. Muerto

    Muerto MDL Debugger

    Mar 7, 2012
    1,855
    2,103
    60
    #546 Muerto, Jan 28, 2020
    Last edited: Jan 19, 2021
    (OP)
    In that case he-IL must not be translated for WinSAT. I can leave it as default then. I'm thinking of doing common lang, and leaving it at that. Don't get me wrong, I want this release to be good but precious time is being taken by this application now.
     
  7. Carlos Detweiller

    Carlos Detweiller Emperor of Ice-Cream

    Dec 21, 2012
    6,329
    7,046
    210
    Just let users create an own translation.ini which is read by the program.

    Not having the correct WinSAT language strings provokes errors.
     
  8. Muerto

    Muerto MDL Debugger

    Mar 7, 2012
    1,855
    2,103
    60
    #548 Muerto, Jan 29, 2020
    Last edited: Jan 19, 2021
    (OP)
    Its doesnt really cause an error, more or less its solely to do with the status label updating; whereas when someone is running a normal assessment they don't get proper status updates.
     
  9. Muerto

    Muerto MDL Debugger

    Mar 7, 2012
    1,855
    2,103
    60
    #549 Muerto, Jan 29, 2020
    Last edited: Jan 31, 2020
    (OP)
    Built in languages removed --- > replaced with lang.ini. If lang.ini is missing then default values are set (en-GB/US). See code below. "lang.ini" is expected alongside the application and can be translated per user; then if you want, can share it to a database I will post here.

    If a database is shared please include your culture name, otherwise it will be rejected. Example: ja-JP... This is to ease adding each language to a shared database and testing it.

    Code:
    Private Shared ReadOnly IniFile As String = Path.Combine(Directories.AppPath, "Lang.ini")
    Code:
        Friend Shared Function SetCultureStrings() As Boolean
            If File.Exists(IniFile) Then
                SetIniStrings()
                Return True
            Else
                SetDefaultStrings()
                Return False
            End If
        End Function
    
        Private Shared Sub SetDefaultStrings()
            FeatureEnumStr = "Feature Enumeration"
            MediaFoundationStr = "Media Foundation Playback "
            ExtendedMediaStr = "Extended Media Assessment"
            MediaEncodeStr = "Media Decode/Encode"
            MemoryStr = "System memory performance"
            StorageStr = "Storage Assessment"
        End Sub
    
        Private Shared Sub SetIniStrings()
    
            Try
                FeatureEnumStr = GetIniValue("Keys", "FeatureEnum", IniFile)
                MediaFoundationStr = GetIniValue("Keys", "MediaFound", IniFile)
                ExtendedMediaStr = GetIniValue("Keys", "MediaExtend", IniFile)
                MediaEncodeStr = GetIniValue("Keys", "MediaEncode", IniFile)
                MemoryStr = GetIniValue("Keys", "Memory", IniFile)
                StorageStr = GetIniValue("Keys", "Storage", IniFile)
            Catch
                MessageBox.Show("A fault was found in 'lang.ini', and defaults were set." & vbCrLf & vbCrLf & "Please check the ini key names.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning)
                SetDefaultStrings()
            End Try
    
        End Sub
    
    More instructions to come on how to build a custom file (Easy difficulty).

    Thanks can go to @Carlos Detweiller for the suggestion. Ini should have been used for settings too.
     
  10. Carlos Detweiller

    Carlos Detweiller Emperor of Ice-Cream

    Dec 21, 2012
    6,329
    7,046
    210
    Will lang.ini contain multiple language strings? If Locale/culture matches, the appropriate section will be used. No match = fallback to standard English.
     
  11. Muerto

    Muerto MDL Debugger

    Mar 7, 2012
    1,855
    2,103
    60
    #551 Muerto, Jan 30, 2020
    Last edited: Mar 8, 2021
    (OP)
    BETA information removed so not to cause confusion.
     
  12. Carlos Detweiller

    Carlos Detweiller Emperor of Ice-Cream

    Dec 21, 2012
    6,329
    7,046
    210
    I hate Google's ReCaptcha. I'm not using a mainstream browser, so, I sure know a lot of bridges, cars, buses and fire hydrants. Oh, and stairs. :mad:

    Every Captcha is broken by design, as soon as you use non-mainstream stuff, they break easily.
     
  13. Muerto

    Muerto MDL Debugger

    Mar 7, 2012
    1,855
    2,103
    60
    #553 Muerto, Jan 30, 2020
    Last edited: Jan 19, 2021
    (OP)
    @Carlos Detweiller
    Here is the new process. Check for Lang.INI, if missing defaults are set. If Lang.INI present check for matching culture and set strings, if culture is not present, set defaults. Simple. To combat the translation issue for de-DE on Windows Vista, 7, this is the language string I have selected:

    Code:
    Wird ausgeführt: Bewertung der Systemspeiche
    Cut off text from 'rl', or 'lr'.
    
    Here is Lang.INI so far - 'FeatureEnumStr' is now removed as I've found a better way:
    Code:
    [de-DE] ;German
    MediaFound="Wird ausgeführt: Media Foundation-Wiedergabebewertung"
    MediaExtend="Wird ausgeführt: Erweiterte Medienbewertung"
    MediaEncode="Wird ausgeführt: Bewertung der Mediendecodierung/-codierung"
    Memory="Wird ausgeführt: Bewertung der Systemspeiche" ;Systemspeiche aus Kompatibilitätsgründen.
    Storage="Wird ausgeführt: Speicherbewertung"
    
    [es-ES] ;Spanish
    MediaFound="En ejecución: Evaluación de reproducción de Media Foundation"
    MediaExtend="En ejecución: Evaluación multimedia extendida"
    MediaEncode="En ejecución: Evaluación de codificación/descodificación de medios"
    Memory="En ejecución: Evaluación del rendimiento de la memoria del sistema"
    Storage="En ejecución: Evaluación de almacenamiento"
    
    [fr-FR] ;French
    MediaFound="En cours d?exécution : Évaluation de la lecture de Media Foundation"
    MediaExtend="En cours d?exécution : Évaluation étendue de média"
    MediaEncode="En cours d?exécution : Évaluation étendue de média"
    Memory="En cours d?exécution : Évaluation des performances de la mémoire système"
    Storage="En cours d?exécution : Évaluation du stockage"
    
    [it-IT] ;Italian
    MediaFound="In esecuzione: Valutazione riproduzione di Media Foundation"
    MediaExtend="In esecuzione: Valutazione contenuti multimediali estesa"
    MediaEncode="In esecuzione: Valutazione della codifica/decodifica dei file multimediali"
    Memory="In esecuzione: Valutazione delle prestazioni della memoria di sistema"
    Storage="In esecuzione: Valutazione archiviazione"
    
    [nl-NL] ;Netherlands
    MediaFound="Actief: Afspelen met behulp van Media Foundation bepalen"
    MediaExtend="Actief: Uitgebreide mediabepaling"
    MediaEncode="Actief: Decodering/codering van media bepalen"
    Memory="Actief: Systeemgeheugenprestaties bepalen"
    Storage="Actief: Opslag bepalen"
    
    [nl-BE] ;Belgium
    MediaFound="Actief: Afspelen met behulp van Media Foundation bepalen"
    MediaExtend="Actief: Uitgebreide mediabepaling"
    MediaEncode="Actief: Decodering/codering van media bepalen"
    Memory="Actief: Systeemgeheugenprestaties bepalen"
    Storage="Actief: Opslag bepalen"
    
    [pl-PL] ;Polish
    MediaFound="Dzia?a: Ocena wydajno?ci odtwarzania platformy Media Foundation"
    MediaExtend="Dzia?a: Rozszerzona ocena no?nika"
    MediaEncode="Dzia?a: Ocena wydajno?ci kodowania/dekodowania multimediów"
    Memory="Dzia?a: Ocena wydajno?ci pami?ci systemowej"
    Storage="Dzia?a: Ocena magazynu"
    
    [pt-BR] ;Portuguese Brazil
    MediaFound="Executando: Avaliaç?o de Reproduç?o do Media Foundation"
    MediaExtend="Executando: Avaliaç?o de Mídia Estendida"
    MediaEncode="Executando: Avaliaç?o de Decodificaç?o/Codificaç?o de Mídia"
    Memory="Executando: Avaliaç?o de desempenho da memória do sistema"
    Storage="Executando: Avaliaç?o de Armazenamento"
    
    [pt-PT] ;Portuguese
    MediaFound="Em execuç?o: Avaliaç?o da Reproduç?o de Media Foundation"
    MediaExtend="Em execuç?o: Avaliaç?o de Multimédia Expandida"
    MediaEncode="Em execuç?o: Avaliaç?o de Descodificaç?o/Codificaç?o de Multimédia"
    Memory="Em execuç?o: Avaliaç?o de desempenho da memória do sistema"
    Storage="Em execuç?o: Avaliaç?o de Memória"
    
    [Keys] ;Default
    MediaFound=""
    MediaExtend=""
    MediaEncode=""
    Memory=""
    Storage=""
    
    ;This is not a language file, but a compatility file for the assessment code.
    ;It must carry a filename of 'Lang.INI' and be stored alongside Xiret.
    ;This file is not necessary on english language systems.
    
    Cultures not needed [Russian], ...

    Tested working on all operating systems for de-DE, no workarounds needed. I will release BETA2 later, so don't worry about testing the previous version.
     
  14. Carlos Detweiller

    Carlos Detweiller Emperor of Ice-Cream

    Dec 21, 2012
    6,329
    7,046
    210
    Did it Brexit, already? :)
     
  15. Muerto

    Muerto MDL Debugger

    Mar 7, 2012
    1,855
    2,103
    60
    #555 Muerto, Jan 31, 2020
    Last edited: Jan 19, 2021
    (OP)
    I don't follow all this but last I heard it was today.

    Sorry no BETA2 tonight, time for sleep and my domain is still down. However, I tried 50+ tests on all languages with no issues.
     
  16. Carlos Detweiller

    Carlos Detweiller Emperor of Ice-Cream

    Dec 21, 2012
    6,329
    7,046
    210
    There is no need to rush.
     
  17. Muerto

    Muerto MDL Debugger

    Mar 7, 2012
    1,855
    2,103
    60
    #557 Muerto, Jan 31, 2020
    Last edited: Mar 8, 2021
    (OP)
    BETA information removed so not to cause confusion.
     
  18. Muerto

    Muerto MDL Debugger

    Mar 7, 2012
    1,855
    2,103
    60
    #558 Muerto, Feb 1, 2020
    Last edited: Feb 1, 2020
    (OP)
    Introduced new method for 'Tools > Reset > Configuration':

    Code:
            'Enumerate configs + storage files
            Dim HS As New List(Of String) From {
            Settings.AppdataSettingsPath,   'Settings (Appdata)
            Settings.LocalSettingsPath,     'Settings (Local)
            Settings.LangPath,              'Lang.ini
            Settings.AssessmentLogPath,     'Log file
            Settings.ImgurUrlsPath          'Imgur URL storage
            }
    
            'Delete files in list ^
            For Each Hit As String In HS
                If File.Exists(Hit) Then
                    File.Delete(Hit)
                End If
            Next
    
            'Delete application directory
            If Directory.Exists(Settings.AppdataDir) Then
                Directory.Delete(Settings.AppdataDir)
            End If
    
     
  19. Muerto

    Muerto MDL Debugger

    Mar 7, 2012
    1,855
    2,103
    60
    I am going to change Lang.ini to another name, a few people have asked the same thing 'is it a language file' :p

    I'm getting ready for release, and writing a read-me for the application. Maybe remove troubleshooting and open read-me instead.
     
  20. Carlos Detweiller

    Carlos Detweiller Emperor of Ice-Cream

    Dec 21, 2012
    6,329
    7,046
    210
    Just don't name it "Cultures.ini", would provoke more questions. :p