mirror of
https://github.com/quasar/Quasar.git
synced 2026-04-25 15:25:59 +03:00
[PR #328] [CLOSED] Start of the Registry Editor #1097
Labels
No labels
bug
bug
cant-reproduce
discussion
duplicate
easy
enhancement
help wanted
improvement
invalid
need more info
pull-request
question
wont-add
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/Quasar#1097
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/quasar/Quasar/pull/328
Author: @yankejustin
Created: 8/15/2015
Status: ❌ Closed
Base:
master← Head:RegistryEditorAddition📝 Commits (10+)
b0fd538Added the basic Registry Editor Interface539806eAdded .resx file0162d12Added logic to the Registry Editore2259abImproved Registry Key Traversalc7a31e7Fixed some conflictsd3505e1Merge pull request #31 from yankejustin/Conflicts4f42af2Fixed broken project file...d05edb8Added data to the tags33730dbFirst set of changes75f61adMerge pull request #32 from MaxXor/master📊 Changes
35 files changed (+1992 additions, -39 deletions)
View changed files
📝
Client/Client.csproj(+8 -0)📝
Client/Core/Commands/CommandHandler.cs(+2 -0)➕
Client/Core/Commands/RegistryHandler.cs(+44 -0)📝
Client/Core/Commands/SystemHandler.cs(+18 -18)📝
Client/Core/Extensions/RegistryKeyExtensions.cs(+25 -2)➕
Client/Core/Packets/ClientPackets/GetRegistryKeysResponse.cs(+31 -0)📝
Client/Core/Packets/PacketHandler.cs(+4 -0)➕
Client/Core/Packets/ServerPackets/DoLoadRegistryKey.cs(+23 -0)📝
Client/Core/Recovery/Browsers/Firefox.cs(+2 -2)📝
Client/Core/Recovery/Browsers/InternetExplorer.cs(+2 -2)📝
Client/Core/Recovery/FtpClients/WinSCP.cs(+1 -1)➕
Client/Core/Registry/RegSeekerMatch.cs(+27 -0)➕
Client/Core/Registry/RegistrySeeker.cs(+269 -0)➕
Client/Core/Registry/RegistrySeekerParams.cs(+39 -0)📝
Client/Core/SystemCore.cs(+6 -6)➕
Client/Core/Utilities/RegistryKeyEx.cs(+78 -0)➕
Client/Enums/RegistrySearchAction.cs(+15 -0)📝
Client/Program.cs(+2 -0)➕
Server/Core/Commands/RegistryHandler.cs(+46 -0)📝
Server/Core/Networking/ConnectionHandler.cs(+2 -0)...and 15 more files
📄 Description
Current Progess
- This is just the start of the Registry Editor feature. It needs a bit of work before it functions as intended. It needs a bit more logic to view, as well as all of the logic to add, edit, and delete registry keys. - This addition is a good example of how the feature addition should continue; I merely have provided the building blocks necessary for its continued development.To-Do
1. Correctly add sub-keys to the TreeView. - Order: Correctly maintain the order when making use of the keys sent to the server by the user. I was trying to research the best way to do so, as the collections I normally use to preserve the tree structures are in .NET v4.0 :( - In this situation, it is likely the best idea to use theTagto maintain the order in the TreeView. As much as I would not like to send the related tag to theClient, it would be the easiest way to ensure order of the returned keys. - Root nodes currently work. It is more of a proof-of-concept to show the current logic works, but needs more added to it. 2. Connect the logic to correctly display the value on the ListView. 3. Adding, Editing, or Deleting the RegistryKeys: - This should come after the order is correctly preserved in the TreeView. - This feature addition also means creating moreFormsfor the correspondingRegistryKeydata type. - This feature addition also means implementing a few more events and packet types when theClientdeletes, adds, or edits aRegistryKey. Note: Comments where left in the code to help find more little things that need to be added to the Registry Editor to make it more complete. To find such comments, locate comments that begin with ToDo:.Questions/Answers
1. Why did I make an additionalCommandHandlerjust for the Registry Editor? - The logic for the Registry Editor feature can grow quite significantly as intended features to add in the feature (add, delete, and edit) are added. It is both the actual logic to handle these requests and responses that can be rather extensive and specific; it is likely to be ~300-500 lines or so of code. 2. Why not just finish implementing the Registry Editor? - There is a huge amount of features to add to make it complete. Besides my lack of time (especially with college coming up very soon), I also feel that others would be more suited for specific tasks. An example for a task that will need to be done would be the creation of nice graphics for the Registry Editor (ehm, @MaxXor) ;) 3. Why must we add more events and types of packets? - In Windows' Registry Editor, it is clearly quite a responsive design. Unfortunately, a responsive design often will require many events to be fired. 4. Am I going bye-bye? - Nope! I will very likely not be able to contribute much for a month or two, but I figured I would post my current progress so any others that wish to help implement this can make it happen.MaxXor, please do not merge this into
master!I wish to merge this into a new branch for the Registry Editor addition to be worked on more.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.