A GUI-based password generator written in Object Pascal using Lazarus/Free Pascal. This application allows users to generate one or more strong and customizable passwords, with options for character sets, length, and clipboard integration. User preferences are stored automatically for convenience.
- Customizable Password Generation
- Select inclusion of uppercase, lowercase, numbers, full symbols, or custom symbol sets.
- Specify password length and the number of passwords to generate.
- Option to require the first character to be lowercase.
- Clipboard Integration
- Copy all or selected passwords to the clipboard with a single click.
- User Preferences
- Settings are saved to and loaded from an INI file (
PasswordGen.ini) in the user's home directory.
- Settings are saved to and loaded from an INI file (
- Easy-to-use GUI
- Intuitive controls and real-time generation.
- Choose your desired password options using checkboxes and input fields.
- Click "Generate" to produce your passwords.
- Passwords are displayed in a list and automatically copied to your clipboard.
- Click the "Copy to Clipboard" button to copy selected or all passwords.
- User settings are saved automatically on close and reloaded on startup.
- TForm1: The main form, containing all controls and logic.
- Character Sets: Uppercase, lowercase, numbers, full symbols, or user-defined custom symbols.
- Settings Storage: Uses
TINIFileto persist user preferences. - Password Logic: Ensures selected character types are present and shuffles for randomness.
| Control | Description |
|---|---|
| UpCheck | Include uppercase letters |
| loCheck | Include lowercase letters |
| NumCheck | Include numbers |
| FsCheck | Include full symbol set |
| CSCheck | Use custom symbols (from CustomSymbols edit) |
| loReq | Require first character to be lowercase |
| PasswordLength | Set length of each password |
| NumberToGen | Number of passwords to generate |
| Gen | Generate passwords |
| CopyToClipboard | Copy to clipboard |
| Passwords | List of generated passwords |
Unit1.pas– Main form source code (application logic)Unit1.lfm– Form definition (GUI layout)uaboutbox.pas- Source code for the About box popupuaboutbox.lfm- Form definition for the About box popupPasswordGen.ini– User settings (auto-generated)
- Download the latest relase PasswordGen.exe
- Place the EXE file on your Desktop.
- Double click the file to run.
- No install needed
- Lazarus IDE (tested with Free Pascal Compiler)
- Windows
- Open
PasswordGen.lpiin Lazarus IDE. - Build the project (
Run>Build). - Run the compiled executable.
- Launch the application.
- Set your desired options.
- Click Generate.
- Use the Copy to Clipboard button as needed.
- Edit the source code to add more character types or tweak UI/UX as desired.
- Adjust default values for password length, number to generate, or symbol sets in the
ReadSettingsprocedure.
MIT license
- Thonolanj
This project demonstrates password generation with user-friendly GUI and persistent settings using Lazarus/Free Pascal.