Microsoft Forms 2.0 Object Library [iOS]

While often overlooked, the library has powerful automation interfaces accessible via VBA or any COM-aware language (C#, VB6, PowerShell). : Even in 64-bit Office, FM20.DLL is typically a 32-bit library (due to legacy constraints). This affects cross-bitness COM calls. 2. Core Object Model The main programmatic entry point is the Forms object, created via:

Set txt = frm.Controls.Add("Forms.TextBox.1", "MyTextBox", Visible:=True) txt.Text = "Hello Forms 2.0" microsoft forms 2.0 object library

Example – handling a button click dynamically: While often overlooked, the library has powerful automation

However, fully dynamic event hooking (addressing arbitrary controls created at runtime) requires maintaining a collection of WithEvents variables or using CallByName . The DataObject provides a clean way to read/write clipboard text without Win32 APIs: Deep Dive: Microsoft Forms 2

Here’s a technical deep-dive write-up on the , aimed at developers, security researchers, and IT pros working with VBA, VBScript, or legacy Office automation. Deep Dive: Microsoft Forms 2.0 Object Library – Capabilities, Quirks, and Security Considerations 1. Overview Microsoft Forms 2.0 Object Library ( FM20.DLL ) is a component shipped with Microsoft Office (starting from Office 97 through Office 2019 and Microsoft 365). It provides the underlying engine for UserForms in VBA (Excel, Word, Outlook, etc.) and controls like TextBox , ComboBox , ListBox , CheckBox , OptionButton , CommandButton , MultiPage , and Image .

Dim frm As Object Set frm = CreateObject("Forms.Form.1") Or using the built-in New keyword with a reference set to Microsoft Forms 2.0 Object Library . | Object | Description | |--------|-------------| | Form | Container for controls; supports properties like Caption , Width , Height , BackColor . | | Control | Base class for all form controls. | | Controls | Collection of controls on a form. | | TextBox , ComboBox , etc. | Individual UI elements with events ( Click , Change , Enter , Exit ). | | DataObject | Handles clipboard operations (GetText, SetText, PutInClipboard). | | Font / Picture | Typography and image handling. | Sample instantiation (VBA): Dim frm As Object Dim txt As Object Set frm = CreateObject("Forms.Form.1") frm.Caption = "Dynamic Form" frm.Width = 300 frm.Height = 200

Dim WithEvents btn As MSForms.CommandButton Private Sub btn_Click() MsgBox "Button clicked!" End Sub