﻿id	summary	reporter	owner	description	type	status	milestone	component	version	severity	resolution	keywords	cc
4092	Regression in 3.3.18.0: GuiStatusBar.au3 rejects WinForms StatusBar HWND with class WindowsForms10.msctls_statusbar32.app*	jase.thew+autoit@…		"After upgrading from AutoIt 3.3.16.1 to 3.3.18.0, GuiStatusBar.au3 functions fail against a classic .NET WinForms StatusBar because the control’s window class is reported as a WinForms wrapper string (e.g. WindowsForms10.msctls_statusbar32.app5) instead of exactly msctls_statusbar32. 

GuiStatusBar.au3 uses _WinAPI_IsClassName() for handle validation; this is a direct class-name match check against the class name retrieved from the HWND. 

__Regression window__
Last known good: 3.3.16.1
First known bad: 3.3.18.0

__Environment__
OS: Windows 11/24H2
AutoIt: 3.3.18.0
AutoIt build: x64
Target: legacy .NET WinForms app using classic StatusBar (not StatusStrip)

__Steps to reproduce__
Launch a legacy WinForms application containing a classic StatusBar.
Get the StatusBar control handle (HWND).
Call _GUICtrlStatusBar_GetCount($hStatus)

__Minimal repro script__
{{{
#include <GuiStatusBar.au3>
#include <WinAPI.au3>
Local $hWnd = WinWaitActive(""[TITLE:Your WinForms App Title]"")
Local $hStatus = ControlGetHandle($hWnd, """", ""[CLASS:WindowsForms10.msctls_statusbar32.app5]"") ; adjust selector as needed
ConsoleWrite(""HWND: "" & $hStatus & @CRLF)
ConsoleWrite(""ClassName: "" & _WinAPI_GetClassName($hStatus) & @CRLF)
Local $iCount = _GUICtrlStatusBar_GetCount($hStatus)
ConsoleWrite(""Count='"" & $iCount & ""' @error="" & @error & "" @extended="" & @extended & @CRLF)
}}}

__Pre-regression result (3.3.16.1)__
{{{
HWND: 0x0000000000190B50
ClassName: WindowsForms10.msctls_statusbar32.app5
Count='6' @error=0 @extended=0
}}}

__Expected result__
_GUICtrlStatusBar_GetCount() returns the number of parts in the statusbar. 

__Actual result (3.3.18.0)__
{{{
HWND: 0x0000000000190B50
ClassName: WindowsForms10.msctls_statusbar32.app5
Count='0' @error=2 @extended=0
}}}

__Notes__
WinForms commonly exposes hosted controls using class strings like WindowsForms10.<control>.app..., and the suffix can vary across builds/machines."	Bug	new		Standard UDFs	3.3.18.0	None		winforms statusbar guistatusbar classname	
