FranceBB Posted July 25, 2018 Posted July 25, 2018 (edited) MKVToolnix announced that they were going to officially drop XP with version 9.x in 2015. Luckily, the next version v.10.0 was working on XP anyway. Today I decided to update it after a while and I found out that it wasn't working anymore. I took a look at the source code and luckily it didn't use anything weird and it was possible to compile every component targeting XP. As to the UI, this one was tricky. The mkvextractgui hasn't really been modified during the latest commits and relies on old calls, so it was easy to compile. As to to the mkvmergegui (mkvtoolnixgui), in the main branch it has been update to use functions available on Windows 7 only (not even Vista!). I was kinda curious to see what they did and they basically broke Vista and XP compatibility with the GUI to implement some "fancy" W7 loading bars and a few totally useless stuff. Anyway, I re-used the code from version 10.0 for the mkvmergegui ('cause it was XP compatible) and made it work with the new components and... guess what? It works. It's gonna complain about a "mismatch" between the GUI version and the components version as soon as you launch mkvtoolnixgui, but just ignore it and use the program 'cause it's working flawlessly. I just muxed a few .ts and .mp4 files into .mkv and it worked. I even extracted subtitles from a few .mkv files and it worked. Let me know if you find bugs and please note that this is an unofficial version, so DO NOT update via the GUI and DO NOT report bugs on the official MKVToolnix site, but only here. v25.0: REMOVED v26.0: REMOVED V27.0: REMOVED V28.0: REMOVED V29.0: https://mega.nz/#!GJcmUS6R!FvWCCGWxStx5_23MSSJ8l_PC0eJOPaGFaMRtN2XTZFM Edited December 30, 2018 by FranceBB 6
FranceBB Posted December 25, 2018 Author Posted December 25, 2018 I'll take a look at the source code for the next version in a few days. Right now, I'm just gonna lay on my couch (and then on my bed), trying to digest the turkey. Merry Christmas. ^^ 3
FranceBB Posted December 30, 2018 Author Posted December 30, 2018 (edited) https://gitlab.com/mbunkus/mkvtoolnix We have quite a few components with calls not available on XP In order, we have IPHLPAPI missing ConvertInterfaceIndexToLuid, ConvertInterfaceLuidToIndex, ConvertInterfaceLuidToNameW, ConvertInterfaceNameToLuidW KERNEL32 missing CancelIoEx, GetFileInformationByHandleEx, GetTickCount64 (For which I'm just gonna use the normal GetTickCount), GetUserPreferredUILanguages, InitializeProcThreadAttributeList, DeleteProcThreadAttributeList SHELL32 missing SHCreateItemFromIDList, SHCreateItemFromParsingName, SHGetKnownFolderIDList, SHGetKnownFolderPath, SHGetStockIconInfo, SetCurrentProcessExplicitAppUserModelID, Shell_NotifyIconGetRect MPR missing WNetRestoreConnectionA (for whatever reason, but it's not important) USER32 missing ChangeWindowMessageFilterEx, CloseTouchInputHandle, GetTouchInputInfo, IsTouchWindow, RegisterTouchWindow, UnregisterTouchWindow, UpdateLayeredWindowIndirect UXTHEME missing GetThemeTransitionDuration Unfortunately, there aren't work-around available for all of them, mostly because the GUI uses the QT cross-platform interface which is not XP compatible as it dropped support a while ago and it gets worse day by day, breaking compatibility even for simple things like the fonts in QWindowsFontEngineDirectWrite and disabling DirectWrite doesn't solve the issue; leaving the old GUI and just compiling the new components targeting XP worked, though. I'll make an installer soon. EDIT: There you go: https://mega.nz/#!GJcmUS6R!FvWCCGWxStx5_23MSSJ8l_PC0eJOPaGFaMRtN2XTZFM Edited December 30, 2018 by FranceBB
NojusK Posted January 1, 2019 Posted January 1, 2019 i remember having MKVToolNix on my 7 pc.Never really used it strangly
Mathwiz Posted January 2, 2019 Posted January 2, 2019 (edited) New version doesn't work for me: MKVMerge seems to be looking for "XPVCRT.dll," whatever that is. Should I rename MSVCRT.dll? Edit: That seemed to fix it. On 7/25/2018 at 1:00 AM, FranceBB said: I was kinda curious to see what they did and they basically broke Vista and XP compatibility with the GUI to implement some "fancy" W7 loading bars and a few totally useless stuff. One of my pet peeves: a product drops support for users of an older product like Win XP, but only because they didn't think it looked "cool" enough. Edited January 2, 2019 by Mathwiz 1
FranceBB Posted January 2, 2019 Author Posted January 2, 2019 (edited) 41 minutes ago, Mathwiz said: New version doesn't work for me: MKVMerge seems to be looking for "XPVCRT.dll," whatever that is. Should I rename MSVCRT.dll? Edit: That seemed to fix it. One of my pet peeves: a product drops support for users of an older product like Win XP, but only because they didn't think it looked "cool" enough. Yes, my bad. I'm doing many things at the same time and I didn't rename it. I'm glad you figured it out yourself, though. As to the look, well... I can't blame the MKVToolnix developer, 'cause the fault is to address to the QT development community. MKVToolnix is cross-platform and can be compiled for Linux, so the developer had to use one of the graphic environments available on Linux. The QT community also has a Windows branch and the developer is just following the good practice of using the latest version of the library; too bad the linux community broke XP with the new-ish version of the library. I could potentially link against the old QT and manually change the code that is not compatible in order to compile the last GUI for XP. Doable? Probably yes. Worth my time? Probably not. But if someone wants to, he/she can go back to the pre-2015 version of QT and check what they changed 'till not. Edited January 2, 2019 by FranceBB
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now