Microsoft Layer for Unicode

Microsoft described it as providing "a layer over the Win32 API on Windows 95/98/Me so that a software developer can write a single Unicode version of their application and have it run properly on all platforms.

"[1] Previously, developers had to either provide two separate versions of an application, or perform complex string translations and API decisions at runtime.

[2] UnicoWS can also be used at link time to compile software in languages that did not exist contemporaneously with Windows 9x and require Unicode support, like Rust.

The MSLU was announced in March 2001, and was first made available as a compatibility layer for Unicode-supporting code written for the then-new Windows XP RC1 in the July 2001 edition of Microsoft's Platform SDK.

A common problem encountered occurs when some update packages or uninstall programs rename or delete either of the OLE libraries (OLEACC.DLL, OLEDLG.DLL), which are dependencies of UNICOWS.DLL.