Intermec CV30 Intermec Terminal Emulator (ITE) Programmer's Reference Manual - Page 168
Appendix B - About RPC Implementation, Intermec Terminal Emulator ITE Programmer's Reference Manual
View all Intermec CV30 manuals
Add to My Manuals
Save this manual to your list of manuals |
Page 168 highlights
Appendix B - About RPC Implementation { int y = (int)(params[i]["Row"]); int x = (int)(params[i]["Column"]); screenParams[i]["Row"] = y; screenParams[i]["Column"] = x; std::string& text = params[i]["Field"]; screenParams[i]["Field"] = text; } InvalidateRect(hWnd, NULL, false); } catch(std::exception &stde) { throw XmlRpcException(stde.what()); } result = "OK"; } } GetScreenContents(&xmlRpcClientServer); DWORD WINAPI XMLRpcClientThread(PVOID sockThreadParm) { DWORD dwPort = *(DWORD *)sockThreadParm; dwPort = atoi(requesterPortCh); XmlRpc::setVerbosity(5); // Create the server socket on the specified port xmlRpcClientServer.bindAndListen(dwPort); // Enable introspection xmlRpcClientServer.enableIntrospection(true);// Wait for requests indefinitely xmlRpcClientServer.work(-1.0); return 1; } void MyRegister( void ) { noArgs[0] = "ITC.GetScreenContents"; noArgs[1] = ip; noArgs[2] = atoi(requesterPortCh); if (c->execute("ITC.registerScreenContentsCallback", noArgs, result)) { //Create Server and RegsiterScreenContents function DWORD dwXmlRpcParm, dwXmlRpcThreadID; dwXmlRpcParm = 50023; hXMLRpcThread = CreateThread(NULL, 0, XMLRpcClientThread, &dwXmlRpcParm, 0, &dwXmlRpcThreadID); } } 156 Intermec Terminal Emulator (ITE) Programmer's Reference Manual