Hello everyone,
Lately I was continuing working on my setup_improvements branch: https://github.com/HBelusca/reactos/commits/setup_improvements (whose main purpose, I recall, is to share a maximum of installation code between our working 1st-stage text-mode usetup and our 1st-stage GUI-mode reactos.exe setup that needs to be implemented). The last results of this is that I am now able to install ReactOS files to a user-provided directory using the GUI-mode setup! As Im developing under Windows I tested the file-copying part of the installer (which is, at the time of writing, the latest part of installation code I has been able to share between the two installers) on Windows. You can see the demo here: https://i.imgur.com/xF97hv1.gifv The animated gif also demonstrates the capability of the installer to halt file copying if the user pops the installation-cancel confirmation dialog out; file-copying is resumed when the user does not want to cancel the installation, but it is stopped when the user really cancels the installation. And of course, the file-copying status is displayed with an animated progress-bar. I have worked out a bit the wizard transitions, but some work remains to be done, especially for the partitioning step (currently Im hardcoding in the GUI installer the disk & partition where I want the copy to take place). One can note in the animation that the preparation of the list of files to be copied seems to take a while: indeed, the shared installation code works exclusively with NT paths. However, when this shared code is used in the win32 GUI-mode installer, this code calls inside setupapi.dll functions to manage the installation file queue (in usetup on the contrary, it uses instead a file queue implementation that works directly with NT paths). As a consequence, I need to convert the NT paths back to Win32 ones before feeding them into the setupapi functions, and this is not trivial. I want to improve this conversion by caching some of the computed results. Enjoy! Best regards, Hermès P.S.: Please dont put that on Twitter since this is under heavy work-in-progress and this demo hasnt been done under ReactOS at all.
_______________________________________________ Ros-dev mailing list Ros-dev@reactos.org http://www.reactos.org/mailman/listinfo/ros-dev