The MASM Forum
Projects => Rarely Used Projects => RosAsm => Topic started by: guga on September 09, 2014, 03:28:17 PM
-
Here is a list of 63 common and "not so common" Window Classes that can be used with CreateWindowsEx or other methods that uses their dlls loaded (as in mfc classes)
WC_BUTTON “Button”
WC_COMBOBOX “ComboBox”
WC_COMBOBOXEX32 "ComboBoxEx32"
WC_COMBOLBOX “ComboLBox”
WC_COMMCTRL_DRAGLISTMSG “commctrl_DragListMsg”
WC_CONTROLBAR “AfxControlBar”
WC_DDEMLEVENT “DDEMLEvent”
WC_DESKTOP “#32769”
WC_DIALOGBOX “#32770”
WC_EDIT “Edit”
WC_HTML_INTERNET_EXPLORER “HTML_Internet Explorer”
WC_ICONTITLE “#32772”
WC_IE “Internet Explorer_Server”
WC_LISTBOX “ListBox”
WC_MDICLIENT “MDIClient”
WC_MENU “#32768”
WC_MESSAGE “Message”
WC_MFCDIALOGBAR “MfcDialogBar”
WC_MFCFRAME “MfcFrame”
WC_MFCMDICHILD “MfcFrameMDIChild”
WC_MFCMDIFRAME “MfcFrameMDI”
WC_MFCMINIDOCKFRAME “MfcFrameMiniDock”
WC_MFCMINIFRAME “MfcFrameMini”
WC_MFCSPLITTER “MfcSplitter”
WC_MFCVIEW “MfcView”
WC_MFCWND “MfcWnd”
WC_MSCTLS_HOTKEY32 "msctls_hotkey32"
WC_MSCTLS_PROGRESS32 "msctls_progress32"
WC_MSCTLS_STATUSBAR32 "msctls_statusbar32"
WC_MSCTLS_TRACKBAR32 "msctls_trackbar32"
WC_MSCTLS_UPDOWN16 “msctls_updown”
WC_MSCTLS_UPDOWN32 "msctls_updown32"
WC_MSTASKSWWCLASS “MSTaskSwWClass”
WC_NATIVEFONTCTL “NativeFontCtl”
WC_OCHOST "OCHost"
WC_OPENLISTVIEW “OpenListView”
WC_REBARWINDOW32 "ReBarWindow32"
WC_RICHEDIT “Richedit”
WC_RICHEDIT20 “RichEdit20W”
WC_RICHEDIT20A "RichEdit20a"
WC_RICHEDIT50W "RichEdit50W"
WC_SCROLLBAR “Scrollbar”
WC_SHDOCOBJVW “Shell DocObject View”
WC_SHELLDLLDEFVIEW “SHELLDLL_DefView”
WC_SHELLEMBEDDING “Shell Embedding”
WC_STATIC “Static”
WC_SWITCHWND “#32771”
WC_SYSANIMATE32 "SysAnimate32"
WC_SYSDATETIMEPICK32 "SysDateTimePick32"
WC_SYSHEADER32 "SysHeader32"
WC_SYSIPADDRESS32 "SysIPAddress32"
WC_SYSLINK "SysLink"
WC_SYSLISTVIEW32 "SysListView32"
WC_SYSMONTHCAL32 "SysMonthCal32"
WC_SYSPAGER "SysPager"
WC_SYSTABCONTROL32 "SysTabControl32"
WC_SYSTREEVIEW32 "SysTreeView32"
WC_THUMBNAILVIEW “ThumbnailVwExtWnd32”
WC_TOOLBARWINDOW32 "ToolbarWindow32"
WC_TOOLTIPS_CLASS16 “tooltips_class”
WC_TOOLTIPS_CLASS32 "tooltips_class32"
WC_TRAYCLOCKWCLASS “TrayClockWClass”
WC_TRAYNOTIFYWND “TrayNotifyWnd”
Plus, to avoid that a info of one specifc control is gone forever i´m posting here the 3 major articles i found about "commctrl_DragListMsg"
Btw. Some of their Labels are not the same as in Windows C sources i have. I labeled all as "WC_" to make easier to understand what it is
If someone find more, please post here to we fill the list :)
-
some of the classes have "official" constant names that do not have a WC_ prefix
of course, the constant names are of little use in assembler :P
we need a zero-terminated string to use them (except for the class atoms)
http://msdn.microsoft.com/en-us/library/windows/desktop/bb775491%28v=vs.85%29.aspx (http://msdn.microsoft.com/en-us/library/windows/desktop/bb775491%28v=vs.85%29.aspx)
notice the Community Additions section
it mentions that they are defined in commctrl.h
i am using XP, and an older PSDK, so it wouldn't do much good for me to look it up
but, you may find more if you look in the newer (win7/8) PSDK's
that brings up an interesting "flaw" in windows constants
the WC_ prefix is used for some of the Window Classes, but not most of them
the same WC_ prefix is also used for a few specific "WideChar" defines (WideCharToMultiByte flag constants)
a little confusing - and something MS doesn't usually do (use the same prefix for different things)
the one you have listed as WC_DIALOGBOX “#32770” is officially named WC_DIALOG
#define WC_DIALOG (MAKEINTATOM(0x8002)) ;make integer class atom C macro
on a related note....
http://masm32.com/board/index.php?topic=3586.0 (http://masm32.com/board/index.php?topic=3586.0)
-
Hi dave
Tks
THis link is one from where i retrieved the information. I also saw in my sources from win2k, winNT and winXP research kernel, but i don´t have from win7/8. Where to dl the newer psdk files ? I mean, is there some place where i can dl them without installing ? For example, a rar file containing the headers and sources etc ?
About the names, yes...All are null terminated strings. Even WC_DIALOG have a equivalent string name "#32770" and not only an atom.
Here i didn´t created the Unicode Form. I only searched for their names while i was testing a ColorPicker example that Steve uploaded, but i´ll try later put the Unicode Counterpart.
For the colorpicker example, i´m trying to create a few functions to subclass the windows forms allowing the usage of colors, fonts, images on them. This would be good for the next updatesi plan to RosAsm that will convert a dialog resources in Windows Forms, but allowing colors, images etc, as we see in VB or Delphi.
-
THis link is one from where i retrieved the information. I also saw in my sources from win2k, winNT and winXP research kernel, but i don´t have from win7/8. Where to dl the newer psdk files ? I mean, is there some place where i can dl them without installing ? For example, a rar file containing the headers and sources etc ?
MS don't seem to want to offer an SDK iso anymore (at least I couldn't find one), and the small exe downloader they give will insist on installing .Net 4.5 before telling you it wont install the headers/libs if you're not on Win 8. Anyway, I mined the component URLs and made my own ISO (http://blog.airesoft.co.uk/2014/05/windows-sdk-8-1-iso/). The links to the individual components are there too so you don't have to d/l 565MB for just two things. It contains everything the installer can download though, not a dump of the headers/libs.
I'm kind of in awe as how they've made what are essentially a bunch of text files and a few libs require a total of 29 installers, 19 installer patches, and 110 cabs.
-
Amazing. TKS TKS TKS :t :t :t
-
Since I guess most will just want the h/lib's, I ripped just the bare installed SDK directory I've put it here (http://www72.zippyshare.com/d/54224267/18/nativebits.7z) (22 MB 7z expanding to 280 MB) since I've forgotten my mega password.
-
you can get the ISO's for windows 7
http://msdn.microsoft.com/en-US/windows/desktop/ff851942.aspx (http://msdn.microsoft.com/en-US/windows/desktop/ff851942.aspx)
it's probably not required to create the UNICODE versions
in assembler, we have to create a string, anyways
so, if a programmer wants a UNICODE class name string, he'll probably use a macro
-
these are from the win7-32 bit (dotnet 4) PSDK
there are 2 versions - one is international, i think
-
Many tks guys
I´ll try to organize them to search for more classes
Btw. The exe files from win8 (The 22Mb file) also works on winXP :icon_mrgreen:
-
i have visual studio 2005 installed
if you install one of the newer PSDK's (win7+), VS2005 won't work properly
at least, that's what i've read in the installation notes
i have a 2003 PSDK installed, and i don't want it messed up :P
-
Hi guys. Could someone type down the actual class names for the common-controls, like : ToolbarWindow32",0 - or point to a thread where it's written.
thanks.
-
Hi guys. Could someone type down the actual class names for the common-controls, like : ToolbarWindow32",0 - or point to a thread where it's written.
thanks.
ToolbarWindow32 is an actual class name. Are you looking for a #define of it?
-
I type with 2 fingers and keep glancing at them and at the monitor. :sad:
But i met really impressive typists ablte to talk with you while typing. None of them was a programmer. :biggrin:
Oops, wrong thread. Sorry, daydreamer.