Convert Figma logo to code with AI

M2TeamArchived logoNSudo

[Deprecated, work in progress alternative: https://github.com/M2Team/NanaRun] Series of System Administration Tools

1,845
212
1,845
21

Top Related Projects

Dism++ Multi-language Support & BUG Report

Windows Driver and XInput Wrapper for Sony DualShock 3/4 Controllers

Quick Overview

NSudo is a powerful system administration tool for Windows that allows users to run programs with full privileges of the TrustedInstaller account. It provides a graphical user interface and command-line interface for executing commands with elevated permissions, making it useful for system administrators and power users.

Pros

  • Enables running programs with TrustedInstaller privileges, which is higher than standard administrator rights
  • Offers both GUI and CLI interfaces for flexibility in usage
  • Supports multiple languages and has a customizable user interface
  • Open-source project with active development and community support

Cons

  • Can be potentially dangerous if misused, as it grants extensive system access
  • May trigger antivirus software due to its elevated privileges
  • Limited documentation for advanced features and customization
  • Requires careful handling to avoid unintended system changes

Getting Started

To use NSudo:

  1. Download the latest release from the GitHub repository.
  2. Extract the files to a desired location on your system.
  3. Run NSudo.exe to launch the graphical interface, or use NSudoLC.exe for command-line operations.
  4. To run a program with TrustedInstaller privileges via CLI:
NSudoLC.exe -U:T -P:E cmd

This command opens a command prompt with TrustedInstaller privileges. Be cautious when using elevated permissions, as it can affect system stability if used incorrectly.

Competitor Comparisons

Dism++ Multi-language Support & BUG Report

Pros of Dism-Multi-language

  • Supports multiple languages, making it accessible to a wider user base
  • Provides a graphical user interface for easier interaction
  • Offers a broader set of system management tools beyond just privilege elevation

Cons of Dism-Multi-language

  • May have a larger footprint and require more system resources
  • Could be more complex to use for simple privilege elevation tasks
  • Potentially slower startup time due to additional features and GUI

Code Comparison

NSudo:

int wmain(int argc, wchar_t* argv[])
{
    return NSudoMain(argc, argv);
}

Dism-Multi-language:

int WINAPI wWinMain(
    _In_ HINSTANCE hInstance,
    _In_opt_ HINSTANCE hPrevInstance,
    _In_ LPWSTR lpCmdLine,
    _In_ int nShowCmd)
{
    return CDismApp::GetInstance().Run(hInstance, lpCmdLine);
}

The code snippets show the main entry points for both projects. NSudo has a simpler command-line interface, while Dism-Multi-language initializes a more complex application with GUI support.

Windows Driver and XInput Wrapper for Sony DualShock 3/4 Controllers

Pros of ScpToolkit

  • Focused on game controller support, specifically for PlayStation controllers
  • Provides a user-friendly GUI for configuration and management
  • Offers extensive customization options for button mapping and sensitivity

Cons of ScpToolkit

  • Limited to specific use case (game controllers), while NSudo is more versatile
  • May require more system resources due to its GUI and background services
  • Less frequently updated compared to NSudo

Code Comparison

NSudo (C++):

BOOL NSudoCreateProcess(
    LPCWSTR lpCommandLine,
    DWORD dwCreationFlags,
    LPCTSTR lpCurrentDirectory,
    LPVOID lpEnvironment,
    HANDLE hToken)
{
    // Process creation code
}

ScpToolkit (C#):

public static bool Start(string devicePath)
{
    using (var device = new HidDevice(devicePath))
    {
        // Device initialization code
    }
}

While NSudo focuses on process creation with elevated privileges, ScpToolkit deals with HID device management for game controllers. The code snippets reflect their different purposes and implementation languages.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

# Logo NSudo - System Administration Toolkit

AppVeyor CI Latest Version Latest Release Downloads Total Downloads License 996.icu FOSSA Status

简体中文 | Русский

This is the source code repository of NSudo. If you wonder to visit the NSudo official website, download NSudo or read the NSudo documents etc, please visit https://nsudo.m2team.org.

This readme file will be the developer oriented document because this it is under the source code repository.

2021 Development Roadmap

  • Add Current User (Elevated) Mode.
    • Implemented in NSudo Shared Library.
    • Implemented in NSudo Launcher.
  • Use wxWidgets to implement the UI.
  • TOML-based environment configuration file.
  • Add more APIs to NSudo Shared Library.
  • Export PDF directly from the offical website.
  • Improve the Gitee mirror experience.
    • Translate the readme in the source tree root.
    • Synchronizing automatically when commits pushed.

Relevant People

Please read People.md.

Code of Conduct

Please read CODE_OF_CONDUCT.md.

Contributing to NSudo

How to become a contributor

  • Direct contributions
  • Feedback suggestions and bugs.
    • We use GitHub issues to track bugs and features.
    • For bugs and general issues please file a new issue.

Code contribution guidelines

Prerequisites

  • Visual Studio 2017 Version 15.9 or later.
    • You also need install ARM64 components (MSVC Toolchain and ATL/MFC) if you want to compile ARM64 version of NSudo.
  • Windows 10 Version 1507 SDK or later.
    • You also need install ARM64 components when you installing the Windows 10 Version 1703 SDK or later and you want to compile ARM64 version of NSudo.

How to build all targets of NSudo

Run BuildAllTargets.bat in Source/Native.

How to modify or debugging NSudo

Open NSudo.sln in Source/Native.

Code style and conventions

For all languages respect the .editorconfig file specified in the source tree. Many IDEs natively support this or can with a plugin.

Copying files from other projects

The following rules must be followed for PRs that include files from another project:

  • The license of the file is permissive.
  • The license of the file is left intact.
  • The contribution is correctly attributed in the License file in the repository, as needed.

How to update documents.

Refer to https://github.com/M2Team/NSudo/pull/29.

To build new docs, you'll need to have Node.js and Yarn installed on your system, and run build.bat in Website.

Docs engine is based on VuePress.