Microsoft has not updated FM20.DLL in years, and it is not supported in .NET or VB.NET directly. However, for VB6 developers who need richer controls without third-party OCXs, Forms 2.0 is an excellent built-in solution. The Microsoft Forms 2.0 Object Library extends VB6’s UI capabilities significantly. From multi-column list boxes to tabbed dialogs and clipboard access, this library is a must-know for any serious VB6 programmer.
In this article, we will dive deep into the —what it is, how to reference it in VB6, how to programmatically use its objects, and common pitfalls to avoid. What is the Microsoft Forms 2.0 Object Library? The Microsoft Forms 2.0 Object Library (FM20.dll) was originally introduced with Microsoft Office 97 and later bundled with subsequent versions of Office, Windows, and Visual Studio 6.0. It provides a set of ActiveX controls and supporting objects used primarily to build custom forms and dialogs. microsoft forms 20 object library vb6
' Add a page at runtime MultiPage1.Pages.Add "NewPage", "Page 2", 1 ' Remove first page MultiPage1.Pages.Remove 0 Microsoft has not updated FM20
From sophisticated list boxes and multi-column combo boxes to advanced button controls with graphical capabilities, the Forms 2.0 library offers a treasure trove of functionality. However, working with this library also comes with its own set of quirks, versioning issues, and best practices. From multi-column list boxes to tabbed dialogs and
Introduction If you have ever developed applications in Visual Basic 6.0 (VB6), you have likely encountered the Microsoft Forms 2.0 Object Library . This library, typically referenced as FM20.DLL , is an integral part of the VB6 ecosystem, providing a rich set of user interface components that go beyond the standard intrinsic controls.
' Retrieve text from clipboard Dim clipboardText As String DataObj.GetFromClipboard clipboardText = DataObj.GetText Dim newFont As stdole.IFontDisp Set newFont = New stdole.StdFont newFont.Name = "Segoe UI" newFont.Size = 10 newFont.Bold = True Set CommandButton1.Font = newFont