PrintNumber | ErrorLocation | Error | Correction | DateAdded |
---|---|---|---|---|
1 | p35 | It ran fine but produced pretty bad translations (not that the quality of the translations was in any way the fault of Windows!). |
It ran fine but produced pretty bad translations. (Not that the quality of the translations was in any way the fault of Windows!) |
7/16/2010 |
1 | p36 | Later, the kernel team released their own set of toys, known as the Windows 95 Kernel Toys. Here was the original introductory text: |
Later, the kernel team released their own set of toys, known as the Windows 95 Kernel PowerToys. Here was the original introductory text: | 7/16/2010 |
1 | p37 | In reality, it was I who wrote all the Kernel Toys, except for the Time Zone Editor, which came from the Windows NT Resource Kit. | In reality, it was I who wrote all the Kernel PowerToys, except for the Time Zone Editor, which came from the Windows NT Resource Kit. | 7/16/2010 |
1 | p83 | (The history behind the InitCommonControlsEx function is taken up later in the section If InitCommonControls doesnt do anything, why do you have to call it?) | (The history behind the InitCommonControls function is taken up later in the section If InitCommonControls doesnt do anything, why do you have to call it?) | 7/16/2010 |
1 | p87 | void UsePopupMenu(HWND hwnd, HINSTANCE hinst, LPCTSTR pszMenu) | void UsePopupMenu(HWND hwnd, HINSTANCE hinst, LPCTSTR pszMenu, LPARAM lParam) | 7/16/2010 |
1 | p88 | void Sample(HWND hwnd) end of sample missing closing brace. |
void Sample(HWND hwnd, LPARAM lParam) } |
7/16/2010 |
1 | p91 | This technique of invalidation can be extended to cover the case where only one section of the screen is interesting: Instead of invalidating the entire client area, invalidate only the area that you want to update, and restart the timer only if that rectangle is part of the update region. | This technique of invalidation can be extended to cover the case where only one section of the window is interesting: Instead of invalidating the entire client area, invalidate only the area that you want to update, and restart the timer only if that rectangle is part of the update region. | 7/16/2010 |
1 | p97 | And add the following code to WinMain before the call to CreateWindowEx: |
And add the following code to WinMain before the call to CreateWindow: |
7/16/2010 |
1 | p102 | RECT rcClient; GetClientRect(hwnd, &rcClient); |
RECT rc; GetClientRect(hwnd, &rc); |
7/16/2010 |
1 | p103 | To WinMain, add before the call to CreateWindowEx: | To WinMain, add before the call to CreateWindow: | 7/16/2010 |
1 | p105 | TextOut(hdc, ?, ?, psz, cchActual); | TextOutW(hdc, ?, ?, psz, cchActual); | 7/16/2010 |
1 | p106 | TextOut(hdc, 0, 0, psz, cchActual); in both the top and bottom code segments. |
TextOutW(hdc, 0, 0, psz, cchActual); | 7/16/2010 |
1 | p108 | In Lines 2, 10, 21: TextOut(hdc, 0, 0, psz, cchActual); |
TextOutW(hdc, 0, 0, psz, cchActual); | 7/16/2010 |
1 | p108 | if (FAILED(TextOutFL(hdc, x, y, psz, cch)) { TextOut(hdc, x, y, psz, cch); |
if (FAILED(TextOutFL(hdc, x, y, psz, cch))) { TextOutW(hdc, x, y, psz, cch); |
7/16/2010 |
1 | p123 | If so, move your second window somewhere else so that it doesnt occupy exactly the same coordinates, or just use the CW_USEDEFAULT values to ask the window manager to choose a position for you.) |
If so, move your second window somewhere else so that it doesnt occupy exactly the same coordinates, or just use the CW_USEDEFAULT values to ask the window manager to choose a position for you. | 7/16/2010 |
1 | p158 | DEFPUSHBUTTON "&Bye",IDCANCEL,"Button",WS_TABSTOP,7,4,50,14 | DEFPUSHBUTTON "&Bye",IDCANCEL,7,4,50,14, WS_TABSTOP | 7/16/2010 |
1 | p160 | BOOL InitApp(void) |
BOOL HINSTANCE g_hinst; InitApp(void) |
7/16/2010 |
1 | p163 | { InitApp(); |
{ g_hinst = hinst; InitApp(); |
7/16/2010 |
1 | p182 | This takes the classic item template and adds the following: | This takes the classic item template and adds the following changes: | 7/16/2010 |
1 | p210 | EndManualModeDialog(hdlg, IDOK); break; case IDCANCEL: EndManualModeDialog(hdlg, IDCANCEL); |
EndManualModalDialog(hdlg, IDOK); break; case IDCANCEL: EndManualModalDialog(hdlg, IDCANCEL); |
7/16/2010 |
1 | p223 | AUTOCHECKBOX "&Resize images to fit window",101,14,36,120,10 bad break |
AUTOCHECKBOX "&Resize images to fit window", 101,14,36,120,10 |
7/16/2010 |
1 | p232 | // Change message loop MSG msg; while (GetMessage(&msg, NULL, 0, 0)) { |
// Change message loop while (GetMessage(&msg, NULL, 0, 0)) { |
7/16/2010 |
1 | p241 | Most notable, NTFS records file timestamps in UTC, whereas FAT records them in local time. | Most notably, NTFS records file timestamps in UTC, whereas FAT records them in local time. | 7/16/2010 |
1 | p242 | This can be something as simple as a retd instruction, which is quite abundant. | This can be something as simple as a ret instruction, which is quite abundant. | 7/16/2010 |
1 | p335 | So if you define _UNICODE, _tcslen will map to wcslen rather than strlen, for example. | If you define _UNICODE, _tcslen will map to wcslen rather than strlen, for example. | 7/16/2010 |
1 | p340 | Many Windows information mechanisms are based on message broadcasts, among them DDE, WM_FONTCHANGE, and changes in system settings. | Many Windows notification mechanisms are based on message broadcasts, among them DDE, WM_FONTCHANGE, and changes in system settings. | 7/16/2010 |
1 | p357 | If youve read that discussion or discussion from other authors, you may find the explanation below redundant; but if you find things still somewhat hazy in your mind, you may find that a fresh angle on the subject may help clarify. |
If youve read that discussion or discussion from other authors, you may find the explanation below redundant; but if you find things still somewhat hazy in your mind, you may find that a fresh angle on the subject helps to clarify. |
7/16/2010 |
1 | p370 | ...an outbound SendMessage; neither of these statements apply to posted messages. |
...an outbound SendMessage; neither of these statements applies to posted messages. | 7/16/2010 |
1 | p383 | Because the MessageBox function is a GUI function, it treats 8-bit character strings in the ANSI character set, which means that 0x80 x00 becomes ¤. | Because the MessageBox function is a GUI function, it treats 8-bit character strings in the ANSI character set, which means that 0x80 0x00 becomes ¤. | 7/16/2010 |
1 | p424 | Well, then if you wanted to make your program unkillable, you would just hand in your TerminateProcess handler! | Well, then if you wanted to make your program unkillable, you would just hang in your TerminateProcess handler! | 7/16/2010 |
1 | p443 | As we saw last time, drawing on Remote Desktop Connection is much slower than on a local display, because all the bitmaps need to be transferred over the network to the Remote Desktop client. |
As we saw last time, drawing on a Remote Desktop Connection is much slower than on a local display, because all the bitmaps need to be transferred over the network to the Remote Desktop client. |
7/16/2010 |
1 | p456 | BOOL g_fTimerRunning = FALSE; char g_chBackground = '0'; void CALLBACK OnBackgroundTimer(HWND hwnd, UINT uMsg, UINT_PTR idTimer, DWORD tm) |
BOOL g_fTimerRunning = FALSE; char g_chBackground = '0'; #define IDT_BACKGROUND 1: void CALLBACK OnBackgroundTimer(HWND hwnd, UINT uMsg, UINT_PTR idTimer, DWORD tm) |
7/16/2010 |
1 | p460 | return g_hfAntiAlias && g_hfClearType; | return g_hfAntialias && g_hfClearType; | 7/16/2010 |
1 | p483 | I forget which conference it was, maybe GCDC 1996. | I forget which conference it was, maybe CGDC 1996. | 7/16/2010 |