QuickChat is a minimalistic LAN messenger, written in pure C with the Win32 API. Does not require installation, leaves no traces, and works on any version starting from Windows 2000 up to 11.
Based on MicroChat Framework.
Active development is now focuses on maintenance, bug fixes and security patches.
No major features are planned.
- Portable - just 1 .exe file
- Unicode Support - any languages, any symbols.
- QC/QCS Protocol
- QC (QuickChat) - plaintext.
- QCS (QuickChat Obfuscated) - XOR obfuscation.
- Logging - save chat history and events. Only for Server, disabled by default.
- Tiny Size - just 150 KB.
- Drag-and-Drop - drag-and-drop any compatible text file and it will extract text instantly.
- OS - Windows 2000 and newer.
- Run QuickChat.
- Click Yes.
- Select protocol.
- Select if you want to enable logs.
- Share displayed IP. Note that user should be in same network.
- Run QuickChat.
- Click No.
- Type the Host IP and click Connect.
- Select protocol.
Full chat log stored only on host side and do not contain sensitive information. It only logs:
- Session start and end.
- User messages with timestamps.
- System messages and events.
- Where server set port binding.
- Who connected (computer name and LAN IP).
For client, added option to save just chat history:
- Connection
- Save Chat
It uses a very simple yet working custom protocol QuickChat/QuickChat Onfuscated (QC/QCS):
- Who starts first: Client. Host never sends anything until it will be QC handshake.
- Client sends handshake in following format: QC:PCNAME\0.
Replace PCNAME with your computer name or what you want remote side to see.
"\0" is required - official backend written on C, meaning you have to follow C rules.
If you are using QCS, you need to XOR everything before.
First 3 bytes should be exactly "QC:" or XORed version of it. Host reject if it is non-QC or at least 1 byte is wrong.\ - Host send its name in same format.
- Chat starts.
It also supports custom ping:
- Send "QCPING" or its XORed version to remote side.
- If you receive "QCPONG" or its XORed version, then remote side is active
- Note that both sides should know both commands. Host and client side can delete logs/history at any time, it is stored only locally.
Read CHANGELOG.md.
- MinGW-w64 compiler
- Windows (7/10/11 recommended for build tools)
- 7z.exe - packaging.
- keygen.py - XOR key generator.
- build.bat - build script.
- resource.rc - resources.
- quickchat.manifest - Common Controls v6 manifest. Mostly for visual styles.
- Clone or download a repository
- Make sure
gcc,windres, andpythonare available in PATH. - Open a command prompt in the project folder.
- Run depending on what you need:
build.bat- Compile QuickChat without changing key and packing.
build.bat /rekey- Compile QuickChat and regenerate key without packing.
build.bat /pack- Compile QuickChat and pack without regenerating key.
build.bat /rekey /pack- Compile QuickChat, regenerate key and pack.
build.bat /minbuild- Compile QuickChat with most minimal configuration.
build.bat /clean- Delete existing compiled files.
-
Adding error code to log write fail breaks themeing.
Adding showing error code in logging start failure breaks Common Controls v6 (disabling themeing).
Fixed: Yes. -
Client and Server show same IP address, when no route but computers connected anyways.
Sometimes IP address displayed incorrectly when routing table is wrong.
Fix: Reset routing table completely. -
Tab inserted as a character instead switching controls.
This is a known limitation of multi-line EDIT control, no known fix exist except subclassing, but it will be handled only for specific control. Default behavior since Windows 3.x.
Fix: Not available.
By default, manifest provide only Common Controls v6. DPI-aware manifest wasn't added because Windows XP compatibility breaks with SxS error.
Steps to activate high DPI (Windows 10/11):
- Open
quickchat.exeproperties. - Select "Compatiblity" tab.
- Click "Change high DPI settings".
- Check "Override high DPI scaling behavior" and select "Application" from list.
- Click OK and then Apply.
Steps to activate high DPI (Windows 7/8):
- Open
quickchat.exeproperties. - Select "Compatiblity" tab.
- Check "Disable display scaling on high DPI settings".
- Click Apply.
Note that only fonts are scaled - controls are fixed in size

QuickChat in 125% scaling on Windows 10
This project uses 7-Zip for archiving.
7z.exe is included for convenience and is used under the terms of the GNU LGPL license.
Enjoy! If you have questions, write me to my Discord - @pcsettings