#ifdef UNICODE #define _UNICODE #endif #include <windows.h> // Windows APIs and datatypes #include "cwbsoapi.h" // System Object Access APIs #include "cwbrc.h" // iSeries DPC APIs #include "cwbun.h" // iSeries Navigator APIs int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow) { MSG msg; // Message structure HWND hWnd; // Window handle cwbRC_SysHandle hSystem; // System handle CWBSO_LIST_HANDLE hList = CWBSO_NULL_HANDLE; // List handle CWBSO_ERR_HANDLE hError = CWBSO_NULL_HANDLE; // Error handle CWBSO_OBJ_HANDLE hObject = CWBSO_NULL_HANDLE; // Object handle cwbCO_SysHandle hSystemHandle; // System object handle unsigned long listSize = 0; // List size unsigned short listStatus = 0; // List status unsigned int rc; // System Object Access return codes //******************************************************************* // Start a conversation with iSeries server SYSNAME. Specify // application name APPNAME. //****************************************************************** cwbUN_GetSystemHandle((char *)"SYSNAME", (char *)"APPNAME", &hSystemHandle); cwbRC_StartSysEx(hSystemHandle, &hSystem); //******************************************************************* // Create a list of spooled files. Set desired filter criteria. //******************************************************************* // Create a list of spooled files on system SYSNAME CWBSO_CreateListHandleEx(hSystemHandle, CWBSO_LIST_SFL, &hList); // Only include spooled files on printer P3812 for user TLK CWBSO_SetListFilter(hList, CWBSO_SFLF_DeviceFilter, "P3812"); CWBSO_SetListFilter(hList, CWBSO_SFLF_UserFilter, "TLK"); //******************************************************************* // Open the list. //******************************************************************* // Create an error handle CWBSO_CreateErrorHandle(&hError); // Open the list of spooled files rc = CWBSO_OpenList(hList, hError); // If an error occurred, display a message box if (rc == CWBSO_ERROR_OCCURRED) CWBSO_DisplayErrMsg(hError); else { //***************************************************************** // Display the properties of the first object in the list //***************************************************************** // Get the number of objects in the list CWBSO_GetListSize(hList, &listSize, &listStatus, hError); if (listSize > 0) { // Get the first object in the list CWBSO_GetObjHandle(hList, 0, &hObject, hError); // Display the properties window for this object CWBSO_DisplayObjAttr(hObject, hInstance, nCmdShow, &hWnd, hError); // Dispatch messages for the properties window while(GetMessage(&msg, NULL, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); } // Properties window has been closed - delete object handle CWBSO_DeleteObjHandle(hObject); } } //******************************************************************* // Processing complete - clean up and exit. //******************************************************************* // Close the list CWBSO_CloseList(hList, hError); // Clean up handles CWBSO_DeleteErrorHandle(hError); CWBSO_DeleteListHandle(hList); // End the conversation started by EHNDP_StartSys cwbRC_StopSys(hSystem); //******************************************************************** // Return from WinMain. //******************************************************************** return rc; }