Limited Access Features
Microsoft Windows includes a wide range of APIs and features designed to empower developers to build powerful applications. However, some functionalities are classified as Limited Access Features (LAF) — special capabilities that require explicit approval from Microsoft before they can be used in an application.
While Microsoft does not publish a LAF list, some known LAFs include:
- Deep system diagnostics APIs
(e.g., low-level hardware access). - Advanced security bypass mechanisms
(used for debugging but risky if misused). - Certain enterprise management functions
(e.g., domain policy overrides). - Experimental UI/UX features
(before public release).
To use the Limited Access Feature, developers must request permission from Microsoft and obtain a feature ID and access token. Without approval, calling teh restricted APIs will fail. However, the Wireless Communication Library solves this problem and provides a mechanism to unlock any LAF without need to contact the Microsoft.
LAF-protected APIs require: A Feature ID (assigned by Microsoft upon approval); A Runtime Use Token (validates permission during execution). If an app tries to call a restricted API without authorization, the call will fail.
The Wireless Communication Library provides the wclLafManager class, which enables developers to unlock any Limited Access Feature (LAF) without requiring a formal Microsoft approval request. Additionally, the wclLafManager allows applications to enumerate available LAFs on the system, ensuring that developers can verify whether a required feature is locked before attempting to unlock it.
Prerequisites
Only one prerequisite exists for using the wclLafManager class to unlock Limited Access Features (LAF). Your application must include a specially formatted resource embedded in its executable file. The required resource format is:
Identity LimitedAccessFeature { L"AppName_Publisher" }
where: AppName represents your application's name (for example: LafManager); Publisher is a randomly generated alphabetic string with a fixed length of exactly 13 characters (valid characters: A-Z, a-z). Once this resource is properly embedded in your application's executable file, wclLafManager automatically handles all remaining operations.
The example application with example resource file can be found in our GitHub repository by this link. Should you have any questions, please do not hesitate to contact us.