Re: is this MFC? + Book recommendations?
- From: Joseph M. Newcomer <newcomer@xxxxxxxxxxxx>
- Date: Fri, 07 Dec 2007 14:59:42 -0500
See below...
On Fri, 07 Dec 2007 09:54:29 -0800, David Deley <deleyd@xxxxxxx> wrote:
I program in CMAC, which is a homegrown language invented about****
two decades ago for writing text editors in.
We import and make direct calls to a lot of functions from the
following libraries:
kernel32
user32
advapi32
gdi32
Would these be considered MFC functions, or what category would
these be under?
These are all API functions, and have nothing to do with MFC. However, SOME of them have
MFC methods of the same name
****
****
Also, are there any other books or documentation that would be good
for me to read? (I have Newcomb's book)
I'm biased in favor of the book you have...
****
****
-----
These are the functions we import (we don't use them all):
import Bool MessageBeep *** API
import int MessageBox *** API
import Bool MoveWindow *** API
import Bool PeekMessage *** API
import Bool PostMessage *** API
import Bool RedrawWindow *** API
import int RegisterWindowMessage *** API
import int ReleaseDC *** API
import Bool ScreenToClient *** API
import int SendDlgItemMessage *** API
import int SendDlgItemMessageStr *** not a recognized API
import int SendMessage *** API
import int SendMessageStr *** not a recognized API
import HWnd SetActiveWindow *** API
import DWord SetForegroundWindow *** API
import Bool SetDlgItemInt *** API
import Bool SetDlgItemText *** API
import HWnd SetFocus *** API
import HWnd SetParent *** API (but not a recommended one!)
import Bool ShowWindow *** API
import Bool SetWindowPos *** API
import int BeginDeferWindowPos *** API
import int DeferWindowPos *** API
import Bool EndDeferWindowPos *** API
import Bool SetWindowText *** API
import Bool TranslateMessage *** API
import Bool UpdateWindow *** API
import int AnimateWindow *** API
import int UpdateLayeredWindow *** API
import int SetLayeredWindowAttributes *** API
import DWord GetSystemMetrics *** API
import Bool GetClientRect *** API
import Bool IsWindowVisible *** API
import HWnd GetDesktopWindow *** API
import Bool IsIconic *** API
import Bool SetRect *** API
import Bool IntersectRect *** API
import Bool IsZoomed *** API
import Bool GetCaretPos *** API
import Bool HideCaret *** API
import Bool ShowCaret *** API
import Bool GetTextMetrics *** API
import Bool GetWindowPlacement *** API
import Bool SetWindowPlacement *** API
import HMenu GetSystemMenu *** API
import int GetMenuItemCount *** API
import int GetMenuItemID *** API
import Bool ModifyMenu *** API
import Bool DeleteMenu *** API
import DWord GetDriveType *** API
import Bool GetKeyboardState *** API
import Bool SetKeyboardState *** API
import DWord ToAscii *** API
import DWord MapVirtualKey *** API
import int GetKeyState *** API
import int GetAsyncKeyState *** API
import void Keybd_Event *** API (actually callked keybd_event)
import Bool KillTimer *** API
import DWord SetTimer *** API
import HRsrc FindResource *** API
import HRsrc FindResourceP *** not a recognized API
import Bool FreeResource *** API
import THandle GetModuleHandle *** API
import HGlobal GlobalAlloc *** API (used only for clipboard)
import HGlobal GlobalFree *** API
import Pointer GlobalLock *** API
import Bool GlobalUnlock *** API
import int GetVersion *** API
import HGlobal LoadResource *** API
import DWord GetPrivateProfileInt *** API (very poor choice to use these days)
import DWord GetPrivateProfileString *** API (ditto)
import DWord GetProfileInt *** API (ditto, only far worse than Private)
import DWord GetProfileString *** API (ditto, only far worse)
import Bool WritePrivateProfileString *** API (ditto)
import Bool WritePrivateProfileString1 *** Not a recognized API
import Bool WritePrivateProfileString2 *** Not a recognized API
import Bool WritePrivateProfileString3 *** Not a recognized API
import Bool WriteProfileString *** API (very poor choice, far worse than Private)
I got tired of adding ***API, so all the rest are API functions, and I annotated a few
****
Joseph M. Newcomer [MVP]
import HDC BeginPaint
import Bool BringWindowToTop
import Bool ClientToScreen
import HWnd CreateWindowEx
import int DefWindowProc
import Bool DestroyWindow
import int DispatchMessage
import int DrawText
import Bool EnableWindow
import Bool EndPaint
import DWord FillRect
import HWnd FindWindow
import HWnd FindWindowN *** Not a recognized API
import HWnd FindWindowC *** Not a recognzied API
import HWnd GetActiveWindow
import int GetClassName
import DWord GetWindowThreadProcessId
import HDC GetDC
import HDC GetWindowDC
import HWnd GetDlgItem
import DWord GetDlgCtrlID
import int GetDlgItemText
import int GetDlgItemTextPtr *** Not a recognized API
import int GetDlgItemInt
import HWnd GetFocus
import Bool GetMessage
import int GetMessagePos
import HWnd GetParent
import DWord GetSysColor
import HWnd GetTopWindow
import Bool GetUpdateRect
import HWnd GetWindow
import Bool GetWindowRect
import int GetWindowText
import Bool InvalidateRect
import Bool ValidateRect
import BOOL IsChild
import int IsDlgButtonChecked
import Bool IsDialogMessage
import Bool IsWindow
import Bool IsWindowEnabled
import HBitmap LoadBitmap
import HIcon LoadIcon
import HIcon LoadIconInt *** Not a recognized API
import int ShowCursor
import Bool SetCursorPos
import HCursor SetCursor
import Bool GetCursorPos
import HCursor LoadCursor
import HCursor LoadCursorSystem *** Not a recognized API
import int ShowWindowAsync
import int FlashWindow
import int FlashWindowEx
import int ShowOwnedPopups
import HDC CreateDC
import Bool DeleteDC
import HFont CreateFont
import HFont CreateFontIndirect
import HBrush CreateSolidBrush
import HBrush CreateHatchBrush
import HDC CreateCompatibleDC
import Bool DeleteObject
import Bool ExtTextOut
import int GetObject
import THandle GetStockObject
import int GetTextFace
import Bool Rectangle
import HGDIObj SelectObject
import HPalette SelectPalette
import int SetBkColor
import int SetBkMode
import TColorRef SetTextColor
import DWord SetStretchBltMode
import Bool StretchBlt
import DWord CreateProcess
import DWord CloseHandle
import DWord GetExitCodeProcess
import DWord GetLastError
import Bool TrackPopupMenu
import Bool TrackPopupMenuEx
import Bool InsertMenuItem
import Bool GetMenuItemInfo
import Bool SetMenuItemInfo
import int GetMenuDefaultItem
import Bool SetMenuDefaultItem
import Bool GetMenuItemRect
import int MenuItemFromPoint
import HMenu GetMenu
import int GetMenuString
import HMenu GetSubMenu
import Bool DrawMenuBar
import Bool DestroyMenu
import Bool EnableMenuItem
import Bool CheckMenuItem
import HMenu CreatePopupMenu
import HMenu CreateMenu
import Bool InsertMenu
import Bool AppendMenu
import Bool SetMenuItemBitmaps
import int GetDeviceCaps
import int GetMessageTime
import DWord GetCurrentDirectory
import DWord GetWindowLong
import Dword SetWindowLong
import int GetWindowsDirectory
import Bool WinHelp
import Bool WinHelpStr *** not a recognized API
import Bool DrawEdge
import int WaitForInputIdle *** API, of questionable value
import int WaitForSingleObject
import int GetDialogBaseUnits
import int SetErrorMode
import int GetLogicalDrives
import Bool SetForegroundWindow
import int GetKeyNameText
import Bool GetVersionEx
import DWord GetTickCount
import DWord RegCloseKey
import DWord RegConnectRegistry
import DWord RegCreateKey *** API, obsolete
import DWord RegCreateKeyEx
import DWord RegDeleteKey
import DWord RegDeleteValue
import DWord RegEnumKey *** API, obsolete
import DWord RegEnumKeyEx
import DWord RegEnumValue
import DWord RegFlushKey
import DWord RegGetKeySecurity
import DWord RegLoadKey
import DWord RegNotifyChangeKeyValue
import DWord RegOpenKey *** API, obsolete
import DWord RegOpenKeyEx
import DWord RegQueryInfoKey
import DWord RegQueryValue *** API, obsolete
import DWord RegQueryMultipleValues
import DWord RegQueryValueEx
import DWord RegReplaceKey
import DWord RegRestoreKey
import DWord RegSaveKey
import DWord RegSetKeySecurity
import DWord RegSetValue *** API, obsolete
import DWord RegSetValueEx
import DWord RegUnLoadKey
import Bool LockWindowUpdate
import void OutputDebugString
import int GetEnvironmentVariable
import ATOM GlobalAddAtom
import ATOM GlobalDeleteAtom
import VOID GetSystemTimeAsFileTime
import BOOL FileTimeToLocalFileTime
import BOOL FileTimeToDosDateTime
import void GetSystemTime
import int GetDateFormat
import int GetTimeFormat
import HWnd GetDesktopWindow
import int GetSystemDirectory
import void GetSystemInfo
import void GlobalMemoryStatus
import void DeleteFile
import HWnd SetCapture
import Bool ReleaseCapture
import HWnd GetCapture
import Int IsValidCodePage
import Int GetACP
import Int GetOEMCP
import Int GetCPInfo
import Int GetCPInfoExA
import Int GetCPInfoExW
import Int IsDBCSLeadByte
import Int IsDBCSLeadByteEx
import Int MultiByteToWideChar
import Int WideCharToMultiByte
import Int CompareStringA
import Int CompareStringW
import int LCMapStringA
import int LCMapStringW
import int GetLocaleInfoA
import int GetLocaleInfoW
import Int SetLocaleInfoA
import Int SetLocaleInfoW
import int GetTimeFormatA
import int GetTimeFormatW
import int GetDateFormatA
import int GetDateFormatW
import int GetNumberFormatA
import int GetNumberFormatW
import int GetCurrencyFormatA
import int GetCurrencyFormatW
import Int EnumCalendarInfoA
import Int EnumCalendarInfoW
import Int EnumTimeFormatsA
import Int EnumTimeFormatsW
import Int EnumDateFormatsA
import Int EnumDateFormatsW
import Int IsValidLocale
import int ConvertDefaultLocale
import int GetThreadLocale
import Int SetThreadLocale
import word GetSystemDefaultLangID
import word GetUserDefaultLangID
import int GetSystemDefaultLCID
import int GetUserDefaultLCID
import Int GetStringTypeExA
import Int GetStringTypeExW
import Int GetStringTypeA *** API, not recommended (see documentation)
import Int GetStringTypeW *** API, ditto
import int FoldStringA
import int FoldStringW
import Int EnumSystemLocalesA
import Int EnumSystemLocalesW
import Int EnumSystemCodePagesA
import Int EnumSystemCodePagesW
import void Sleep
email: newcomer@xxxxxxxxxxxx
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm
.
- Follow-Ups:
- Re: is this MFC? + Book recommendations?
- From: Ajay Kalra
- Re: is this MFC? + Book recommendations?
- References:
- is this MFC? + Book recommendations?
- From: David Deley
- is this MFC? + Book recommendations?
- Prev by Date: Re: Maximise from another applications
- Next by Date: Re: CStatusBar
- Previous by thread: Re: is this MFC? + Book recommendations?
- Next by thread: Re: is this MFC? + Book recommendations?
- Index(es):