Skip to content

signin404/yaP_Plus

Repository files navigation

English | 中文

Ask DeepWiki zread

yaP Plus

yaP (yet another Portablizer) Reimplementation

Just copy and paste to create portable software.

Quick Guide

Feature

  • Save directory/file
  • Delete directory/file
  • Restore directory/file
  • Copy or move directory/file
  • Save registry key/value
  • Delete registry key/value
  • Restore registry key/value
  • Create directory/file
  • Create registry key/value
  • Create symbolic link
  • Write INI
  • Text replacement
  • Line text replacement
  • Run file
  • Terminate process
  • Run multiple instances
  • Import registry
  • Register or unregister DLL
  • Set directory/file attributes
  • Set command line
  • Set working directory
  • Set up environment/user variables
  • Environment/user variable string replacement
  • Delayed execution
  • Delayed automatic cleanup
  • Plus
  • Unicode support
  • Wait for process
  • Scheduled backup
  • Create hard links
  • Create firewall rules
  • Hide console program window
  • Detect foreground and suspend background processes
  • File write format encoding detection
  • Exception exit solutions
  • Full directory traversal with hard links
  • Hard/Symbolic Link Single-Level Directory Traversal
  • Check the parent process or path and terminate the process
  • Traverse subdirectories and delete files/directories
  • (Experimental) Hook Redirect File Operations
  • (Experimental) Hook Forged volume serial number
  • (Experimental) Hook to prevent network connection
  • (Experimental) Hook to replace font
  • (Experimental) Injecting a third-party DLL

Unported Features

  • !admin
  • !dotnet
  • !java
  • !online
  • !os
  • clip
  • ->regkey
  • ->regvalue
  • date
  • iniread
  • message
  • nowait
  • quit
  • regexport
  • regmerge
  • systemrefresh

Comparison of Portable Solutions

Hooking

  • Compatibility: Low
  • Performance Overhead: Low
  • Isolation Level: Medium
  • Core Principle: Achieves redirection by hooking (intercepting) API calls.
  • Pros:
    • Negligible performance loss.
  • Cons:
    • The more complex the software or the more hooks are used, the higher the probability of conflicts.
    • Incompatible software or plugins require targeted fixes.
    • The ongoing maintenance workload is high.

Launcher

  • Compatibility: High
  • Performance Overhead: None
  • Isolation Level: None
  • Core Principle: Writes configuration before the application runs and cleans it up after exit.
  • Pros:
    • Almost universally compatible, except for some software that loads drivers.
  • Cons:
    • Not suitable for "badly-behaved" software.
    • Software that requires drivers might not be applicable.
    • If the software doesn't support symbolic links and the configuration file is large, it could result in excessive data writes.
  • Software using this solution:

Virtualization

  • Compatibility: Medium
  • Performance Overhead: High
  • Isolation Level: High
  • Core Principle: Creates a virtual container (sandbox) and runs the software within it.
  • Pros:
    • Suitable for badly-behaved or lightweight software that does not require high performance.
  • Cons:
    • Packaging & Size: Requires packaging all of the application's files, which are then extracted at runtime, potentially leading to a much larger file size.
    • Inconvenient Maintenance: Installing or uninstalling game mods requires repackaging the entire application.
    • Compatibility Issues: Game plugins that rely on hooking may not be compatible with the virtualized environment.
    • Performance Bottleneck: The performance overhead from the translation/virtualization layer is significant, making it unsuitable for gaming or other high-performance software.
  • Software using this solution:

Self-extracting file

  • Compatibility: High
  • Performance Overhead: None
  • Isolation Level: None
  • Core Principle: Run after releasing the software and configuration to the temporary directory (%TEMP%), and delete afterward.
  • Pros:
    • Easy to make—just package the software and configuration directly.
  • Cons:
    • Unable to process the registry.
    • Software configurations changed at runtime cannot be saved.
    • Files need to be released again every time it runs.
  • Software using this solution:

About

Just copy and paste to create portable software.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages