OemProcXXX (Compact 7)
3/12/2014
This callback function is a dialog handle routine for each property page in Windows Embedded Compact Terminal Services Client (CETSC) user interface (UI).
Syntax
BOOL CALLBACK OemProcXXX(
HWND hwnd,
UINT msg,
WPARAM wParam,
LPARAM lParam
);
Parameters
- hwnd
[in] Handle to the CETSC dialog box.
- uMsg
[in] Specifies the message.
- wParam
[in] Specifies additional message-specific information.
- lParam
[in] Specifies additional message-specific information.
Return Value
Returns TRUE if it processed the message. Otherwise, returns FALSE.
Remarks
If an OEM wants to customize an existing property page, the OEM must implement this function. For existing property pages, the XXX
is replaced with the property page name. For each property page, OemProcXXX is defined in the source code for the property page. The following chart shows the function name and its corresponding header file:
Function | Header file |
---|---|
OemProcDisplay |
Propdisplay.h |
OemProcLocalRes |
Proplocalres.h |
OemProcProg |
Proprun.h |
OemProcExp |
Propperf.h |
OemProcAdv |
Propadv.h |
For custom property pages, the OEM must define OemProcXXX in cetscoem.cpp and implement it in the custom property page source code. Template code for a custom property page is available in propaux1.h and propaux1.cpp. The OEM should replace XXX
with the OEM custom name for the new property page. The function signature of OemProcXXX must match the following:
BOOL CALLBACK OemProcAux1(HWND hwnd, UINT msg, WPARAM wParam,
LPARAM lParam);
The OEM may add a maximum of 16 additional custom property pages. Each custom property page requires its own OemProcXXX function.
Example
The following example code shows a starting point for implementing OemProcXXX for a property page called Aux1.
Important
For readability, the following code example does not contain security checking or error handling. Do not use the following code in a production environment.
INT_PTR CALLBACK CPropAux1::PropPgAux1DialogProc (HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
{
TS_ENTERFN();
switch(uMsg)
{
case WM_INITDIALOG:
{
//
// Position the dialog within the tab
//
SetWindowPos( hwndDlg, HWND_TOP,
_rcTabDispayArea.left, _rcTabDispayArea.top,
_rcTabDispayArea.right - _rcTabDispayArea.left,
_rcTabDispayArea.bottom - _rcTabDispayArea.top,
0);
return TRUE;
}
break; //WM_INITDIALOG
case WM_TSC_ENABLECONTROLS:
break;
case WM_SAVEPROPSHEET:
break;
case WM_COMMAND:
break;
}
TS_LEAVEFN();
return 0;
}
BOOL CALLBACK OemProcAux1(HWND hwnd, UINT msg, WPARAM wParam,
LPARAM lParam)
{
return (BOOL)CPropAux1::StaticPropPgAux1DialogProc(hwnd, msg,
wParam,
msg == WM_INITDIALOG ? (LPARAM)(g_CetscOEM->_pAux1Pg) :
lParam);
}