The CPL_NEWINQUIRE message is sent to the CPlApplet function of a Control Panel application to request information about a dialog box that the application supports.
For better performance, most applications should ignore CPL_NEWINQUIRE and process the CPL_INQUIRE message instead. The CPL_NEWINQUIRE message is useful only for applications that need to change their icon or display strings based on the state of the computer.
CPL_NEWINQUIRE uAppNum = (UINT) lParam1; // application number lpncpli = (LPNEWCPLINFO) lParam2; // structure for appl. info.
If the CPlApplet function processes this message successfully, it should return zero.
The Control Panel sends the CPL_NEWINQUIRE message once for each dialog box supported by your application. The Control Panel also sends a CPL_INQUIRE message for each dialog box. These messages are sent immediately after the CPL_GETCOUNT message. However, the system does not guarantee the order in which the CPL_INQUIRE and CPL_NEWINQUIRE messages are sent.
The only applications that should use CPL_NEWINQUIRE are those that need to change their icon or display strings based on the state of the computer. In this case, your CPL_INQUIRE handler should specify the CPL_DYNAMIC_RES value for the idIcon, idName, or idInfo members of the CPLINFO structure, rather than specifying a valid resource identifier. This causes the Control Panel to send the CPL_NEWINQUIRE message each time it needs the icon and display strings, allowing you to specify information based on the current state of the computer. Of course, this is significantly slower than using cached information.
CPL_GETCOUNT, CPL_INIT, CPL_INQUIRE, CPlApplet, CPLINFO, NEWCPLINFO