Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/*************************************************************\
* File name: INIT.C * * Description: Initialization code for Console control panel * applet * * * Microsoft Confidential * Copyright (c) Microsoft Corporation 1992-1994 * All rights reserved * \*************************************************************/ #include "precomp.h"
#include <cpl.h>
HINSTANCE ghInstance;
/*************************************************************\
* * DllInitialize() * * Purpose: Main entry point * * * Parameters: HINSTANCE hInstDLL - Instance handle of DLL * DWORD dwReason - Reason DLL was called * LPVOID lpvReserved - NULL * * * Return: BOOL * \*************************************************************/
BOOL DllInitialize(HINSTANCE hInstDLL, DWORD dwReason, LPVOID lpvReserved) { if (dwReason != DLL_PROCESS_ATTACH) { return TRUE; }
ghInstance = hInstDLL;
DisableThreadLibraryCalls(hInstDLL);
return TRUE; }
/*************************************************************\
* * CPlApplet() * * Purpose: Control Panel entry point * * * Parameters: HWND hwnd - Window handle * WORD wMsg - Control Panel message * LPARAM lParam1 - Long parameter * LPARAM lParam2 - Long parameter * * * Return: LONG * \*************************************************************/
LONG CPlApplet( HWND hwnd, WORD wMsg, LPARAM lParam1, LPARAM lParam2) { LPCPLINFO lpOldCPlInfo; LPNEWCPLINFO lpCPlInfo; INITCOMMONCONTROLSEX iccex;
switch (wMsg) {
case CPL_INIT:
iccex.dwSize = sizeof(iccex); iccex.dwICC = ICC_WIN95_CLASSES; InitCommonControlsEx( &iccex ); //InitCommonControls();
if (!RegisterClasses(ghInstance)) { return FALSE; } OEMCP = GetOEMCP(); gfFESystem = IsFarEastCP(OEMCP); if (!NT_SUCCESS(InitializeDbcsMisc())) { return FALSE; } return TRUE;
case CPL_GETCOUNT: return 1;
case CPL_INQUIRE:
lpOldCPlInfo = (LPCPLINFO)lParam2;
lpOldCPlInfo->idIcon = IDI_CONSOLE; lpOldCPlInfo->idName = IDS_NAME; lpOldCPlInfo->idInfo = IDS_INFO; lpOldCPlInfo->lData = 0; return TRUE;
case CPL_NEWINQUIRE:
lpCPlInfo = (LPNEWCPLINFO)lParam2;
lpCPlInfo->hIcon = LoadIcon(ghInstance, MAKEINTRESOURCE(IDI_CONSOLE));
if (!LoadString(ghInstance, IDS_NAME, lpCPlInfo->szName, NELEM(lpCPlInfo->szName))) { lpCPlInfo->szName[0] = TEXT('\0'); }
if (!LoadString(ghInstance, IDS_INFO, lpCPlInfo->szInfo, NELEM(lpCPlInfo->szInfo))) { lpCPlInfo->szInfo[0] = TEXT('\0'); }
lpCPlInfo->dwSize = sizeof(NEWCPLINFO); lpCPlInfo->dwHelpContext = 0; lpCPlInfo->szHelpFile[0] = TEXT('\0');
return (LONG)TRUE;
case CPL_DBLCLK: ConsolePropertySheet(hwnd); break;
case CPL_EXIT: DestroyDbcsMisc(); UnregisterClasses(ghInstance); break; } return (LONG)0; }
|