This project is read-only.
Project Description
The program is a utility to help you to perform the edit of the window path variable and auto shorten it .

The project has moved to github at : https://github.com/moh-hassan/winpathmanger

The window path environment is a text separated by semicolon.
You can edit it from the control panel as one single string in a text box with limited length. The path may have duplicated entries and may contain entries for uninstalled programs. As you install more programs, the path length exceed 1023 char, which lead to trouble for some programs to be not installed until you have to reduce the size of the path environment. Editing the path variable is error prone and may lead to problems.
The project WinPath manager is a utility to help you to perform the edits of the windows path environment variable safely and reduce the errors of program path typing.
Errors of typos in the path can cause fail of running programs.

The program help you to:
-Resolve the errors such as "the value of the environment variable path is more than 1023" when installing new programs.
-Review path environment and get rid of unnecessary entries.
- Remove(delete) the path of programs that no longer exist and the duplicates.
- Arrange existing entries up/down.
- know the length of the path and be warned if path length is more than 1023 char.
- Auto shorten the entries by using 8.3 naming in case that the path exceed 1023 char.
- Add new path from within folder browser to avoid error.

System Implementation
  • WinPathManager is a WinForm application which is based on MVVM (Model-View-ViewModel) using the open source MVVM Fx Framework.
  • Tabs with user controls is used.
  • The Command pattern is used heavily to fire all click events of the buttons, menus and the toolbar.
  • It is Event driven to synchronize all lists over all tabs and commands that is shared between toolbar and the menu.
  • Extension methods are used to build the commands that register the event click with the action needed.
  • Commands is loaded in a Dictionary of objects ad actions to centralize the commands in the form
  • The Singleton pattern is used.
  • Manipulating lists with LINQ.
  • Icons is used to enhance toolbar and tabs.
Give it a try and feedback with your comments.

How to use
  • Run the application , the main form is composed of set of Tabs with icons describing its function.
in the Tab titled "view path list" :
  • A label show the length of the path and number of entries.
  • The List contain all entries of the path.
  • If the path length is longer than 1023 char, a red label is displayed.
    • The button Repair is enabled when there are duplication of entries, entries not exist or path exceed 1023 char.
  • The radio button list:
    • All: show all entries
    • Duplicated: show the duplicated paths (if there are ones)
    • Not Exist: show the entries which are no longer exist on the machine (if there are ones).
  • If you press Repair button , the application will remove the duplicated and not exist paths and backup the path to a file in backup folder.
  • It may shorten the name of some entries to be the total length is less than 1024 char.

The other tabs provide the following services:
  • Add new entry : add new entry from browse folder or list of installed programs.
  • Remove entry: remove selected entries (single/multi selection).
  • Export path to a file in the disk as a backup.
  • Re-order the entries of the path with up/down/top/bottom and save the result.
All actions is logged in a log file in the application folder.

Screenshots
Main Form
form1.png
Note:
you should have administrative right and run program as Administrator to modify the path.

Last edited Sep 8 at 1:55 PM by mohamed_hassan, version 20