cplit.cpp

来自「《Windows CE 权威指南》(作者:(美)CHRIS MUENCH」· C++ 代码 · 共 76 行

CPP
76
字号
// CplIt.cpp : Defines the entry point for the DLL application.
//

#include "stdafx.h"
//<BOOK_ADDON Chapter 11.3>
#include "cpl.h"
#include "resource.h"
//</BOOK_ADDON Chapter 11.3>

BOOL APIENTRY DllMain( HANDLE hModule, 
                       DWORD  ul_reason_for_call, 
                       LPVOID lpReserved
					 )
{
    return TRUE;
}

//<BOOK_ADDON Chapter 11.3>
HANDLE  hinst = NULL;

LONG CALLBACK CPlApplet(HWND hwndCPL, UINT uMsg, LPARAM lParam1, LPARAM lParam2) 
{ 
int i; 
LPCPLINFO lpCPlInfo; 
LPNEWCPLINFO lpNewCPlInfo; 
 
    i = (int) lParam1; 
 
    switch (uMsg) { 
        case CPL_INIT:      // first message
			// save hInstance in case you need it
            hinst = GetModuleHandle(TEXT("CplIt.cpl")); 
            return TRUE; 
 
        case CPL_GETCOUNT:  // second message
            return 1; // Number of virtual Applet "Applications"
            break; 
 
        case CPL_INQUIRE: // third message, sent once per application 
						  // Will not be called under Windows CE
            lpCPlInfo = (LPCPLINFO) lParam2; 
            lpCPlInfo->lData = 0; // Semd as lParam2 to CPL_DBLCLK
            lpCPlInfo->idIcon = IDI_ICON1;
            lpCPlInfo->idName = IDS_NAME;
            lpCPlInfo->idInfo = IDS_DESC;
            break; 
        case CPL_NEWINQUIRE: // third message, sent once per application 
            lpNewCPlInfo = (LPNEWCPLINFO) lParam2; 
			lpNewCPlInfo->dwSize = sizeof(NEWCPLINFO); // Important
			lpNewCPlInfo->dwFlags = 0;
			lpNewCPlInfo->dwHelpContext = 0;
			lpNewCPlInfo->lData = 0;
			lpNewCPlInfo->hIcon = LoadIcon((HINSTANCE)hinst,MAKEINTRESOURCE(IDI_ICON1));
			wcscpy(lpNewCPlInfo->szName, TEXT("My First Applet"));
			wcscpy(lpNewCPlInfo->szInfo, TEXT("My First Control Panel Applet"));
			wcscpy(lpNewCPlInfo->szHelpFile, TEXT(""));
    
            break; 

        case CPL_DBLCLK:    // application icon double-clicked 
            MessageBox(NULL,TEXT("My first Control-Panel Applet"),TEXT("CplIt.CPL"),MB_OK);
            break; 
 
        case CPL_STOP:      // sent once per application before CPL_EXIT 
            break; 
 
        case CPL_EXIT:    // sent once before FreeLibrary is called 
            break; 
 
        default: 
            break; 
    } 
    return 0; 
} 
//<BOOK_ADDON Chapter 11.3>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?