The standard Windows edit control accepts whatever the user types. That's fine, until your application needs a phone number with the parentheses in the right place, a date that is actually a date, an amount that stays inside its range, and a field that tells the user what's wrong before they press OK. SftMask/DLL is that edit control. It's a DLL-based masked edit control for the Windows™ operating system that takes you from a simple edit control replacement all the way to fully validated, formatted data entry with popup windows and visual error feedback.
Telephone numbers, Social Security numbers, dates and times, currency, percentages, IP addresses, file and folder names, passwords — SftMask/DLL handles them all from one control. Built for C and C++ (MFC) developers, version 7.0 combines a dropdown calendar and calculator, autocomplete, modern Windows integration, and support for today's development workflows.
An edit mask combines literal characters with input field tokens for digits, letters, character sets, numeric fields, and date and time fields. Literals stay put, unfilled positions show a prompt character, and the user simply types. Numeric fields support digit limits, fractional digits, minimum and maximum values, group formatting, and leading zeros. Date and time fields follow the user's locale formats and adjust 2-digit years automatically. Password positions display a substitute character, and automatic advance moves the user to the next input field — and the next control — as data is entered.
When the control doesn't have the input focus, it can show formatted text instead of the raw entry, so an amount reads like an amount and a date reads like a date. An empty control can fill itself with default text, including special values such as =Today and =Now.
Date fields drop down a calendar, with a configurable first day of the week, date range, week numbers, and bold dates. Numeric fields drop down a calculator the moment the user types an operator (+, -, * or /) — no extra buttons, no separate dialog. Up-down buttons step numeric, date and time fields, and an ellipse button ("...") triggers whatever action your application defines.
Autocomplete offers suggest and append modes, drawing on previously entered text or on real file and folder names. Its history can be saved to a persistent file and seeded programmatically, so users get useful suggestions from the very first keystroke.
Bad data is best caught where it's typed. SftMask/DLL provides input validation with your own custom rules and error messages, and an automatic error image next to the edit area flags fields that are empty, invalid, or required. Users see what needs attention at a glance, and your code receives clean, well-formed values.
A built-in caption can sit to the left, top, right, or below the edit area, with its own font, colors, alignment, and transparency — no separate static control to keep aligned. A label inside the edit area shows a currency symbol or unit, with locale-based currency placement handled automatically. Choose insert or overtype mode per control, per entry, or application-wide, decide how the entry is selected when the control receives the input focus, and rely on clipboard support with or without literal characters, plus undo. Themes support lets your controls look native whenever you want them to.
The SftMask/DLL Wizard lets you design and test a masked edit control without any programming at all. Set the edit mask, edit styles, caption, label, validation, calendar, calculator, autocomplete, colors, and more, watch the result take shape, and — once it behaves exactly right — let the Wizard generate the run-time code for C or C++ with MFC. The path from idea to working control is measured in clicks, and your programming effort is kept to a minimum.
Version 7.0 is built for how Windows looks and works today. It automatically tracks the system "Choose your mode" setting for seamless dark mode — including every popup window: calendar, calculator, and autocomplete. It supports Windows High Contrast for accessibility, and is Per-Monitor v2 DPI aware, scaling images and pixel dimensions automatically so controls stay crisp on every display. A built-in UI Automation provider delivers screen-reader support for Narrator, NVDA, and JAWS right out of the box.
SftMask/DLL is a complete, ground-up implementation — not a sub- or superclassed Windows edit control — so its behavior is consistent and free of inherited quirks. Develop in C or C++ (MFC) with Visual Studio, or call the DLL from other languages using the standard SendMessage Windows API and the definitions in the supplied header file. Class definitions for the Microsoft Foundation Class Library ship in the box, and so does the source code for the MFC classes that provide masked edit control access.
SftMask/DLL ships with documentation formatted for AI coding assistants — an offline, full-text API reference built for large-language-model grounding, plus an AGENTS.md pointer file — so assistants such as Claude, GitHub Copilot, and Cursor can answer questions and generate code against the complete API.
SftMask/DLL supports Windows 10 and above, covering 64-bit and 32-bit applications on Intel processors, plus ARM64 applications on Windows 11 and above. UNICODE support is available on every platform, and the same easy-to-use API works identically across all of them — write once, deploy everywhere your users are.
Ship with confidence. Any application you develop can use SftMask/DLL royalty-free in run-time mode — you simply distribute the DLL with your application (some restrictions apply). Design-time features live with each developer: every developer who needs access to any part of the product licenses their own copy, with no per-user or per-copy fees on the software you deliver to your customers.
SftMask/DLL 7.0 — because good data starts at the keyboard.