The binary size of NSudo 8.0 Alpha 2 (Not the final Alpha 2) is much smaller than before. I have introduced the new module called NSudoUX.dll to share some implementations and optimize the icon resouce size. What do you think about that? Is it worth to use multiple modules (or dynamic libraries)? Kenji Mouri
I have followed your suggestion. I add NSudoLib as static linking library and make NSudoG.exe and NSudoC.exe single file style again. Also, I use jsmn instead of JSON for Modern C++ to reduce binary size. Kenji Mouri
The relationship between Nit and NSudo Nit is based on the NSudo Shared Library (NSudoAPI). I hope it will be a good example for developers to learn how to use NSudoAPI. NSudo Shared Library has implemented two interfaces called INSudoMemoryManager and INSudoClient. I thought I will add INSudoFileManager and INSudoRegistryManager in the NSudo Shared Library because the following reasons. I think it's useful for developers to operate files and registry keys without the worries about the permission denied issue in the most cases if I have added that. Shared implementations between NSudo and Nit. NSudo will introduce a new component called NSudoX in the future. NSudoX will be single file executable if there is no special reasons. NSudoX is a file and registry manager because I know many users love the MiniFM in the old versions of NSudo. I want to provide a powerful solution for advanced users, lol. Note: The link of Nit is https://forums.mydigitallife.net/threads/80135. Kenji Mouri
The devil mode of NSudo Everyone knows that NSudo will provide shared library and COM-like interfaces for helping third-party application developers who want to solve the problems of privileges. There are many methods exposed by NSudo shared library, and it's difficult for developers to use because it's hard to understand unless you read the developer oriented documents about Windows security in Microsoft Docs. NSudo will provide devil mode for developers via shared library to make it easier. NSudo Devil Mode will enable the Backup and Restore privileges, and hook some NT APIs by the open source Microsoft Detours library to achieve the maximum access. (You can modify system files and system registries even you are only a normal Administrator user.) For example, NSudo Devil Mode will tell NtCreateFile to enable the FILE_OPEN_FOR_BACKUP_INTENT option for the maximum access via Backup and Restore privileges. Here is the interface draft. Code: HRESULT INSudoClient::EnableDevilMode(); HRESULT INSudoClient::DisableDevilMode(); This feature will be added in NSudo 8.0 Alpha 2 or Alpha 3. Kenji Mouri
Some questions. 1. Does the latest alpha stlll not accept spaces in the path to executables in the json file? 2. Can we order the entries in the json file in any order? So far it doesn't seem to make a difference what order the entries are in. Regards, niche99
What do you think about rename the original NSudo to NSudo Run As or NSudo Run? I am not good at naming projects, so I want to share the name between some related projects. (Something like Microsoft Office, a series of productivity tools.) The slogan of NSudo is "A Powerful System Administration Tool" and used for years, so I thought it's OK if I use the "NSudo" for some administration tools. Except the original NSudo and NSudo Devil Mode, I will introduce the NSudo eXplorer (NSudoX) in the future, a file and registry manager.
Good idea, I will follow it. How about the names of binaries? NSudo Launcher (NSudoLG.exe and NSudoLC.exe) or (NSudoLauncherGUI.exe and NSudoLauncherCLI.exe)