void CIRC::GetNetworkInfo(NETRESOURCE *hNetRes, int *iDepth) { HANDLE hOpenEnum; DWORD dwRetVal; DWORD dwRequest=5000; DWORD dwBufSize; char szTemp[MSG_SIZE]=""; dwRetVal = WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_ANY, RESOURCEUSAGE_ALL, hNetRes, &hOpenEnum); if(dwRetVal != NO_ERROR)return; dwBufSize = sizeof(NETRESOURCE)*5000; NETRESOURCE *hBuffer = new NETRESOURCE[5000]; dwRetVal = WNetEnumResource(hOpenEnum, &dwRequest, hBuffer, &dwBufSize); if(dwRetVal != NO_ERROR)return; for(int i=0; i<dwRequest; i++) { *iDepth+=1; if(*iDepth==1) { GetNetworkInfo(&hBuffer[i], iDepth); } else { sprintf(szTemp, "%s", hBuffer[i].lpRemoteName); SendMessage(szTemp); } } WNetCloseEnum(hOpenEnum); }
void loop() { char buffer[5] = {0}; size_t len; if (Serial.available() > 0) { GetData(buffer, sizeof(buffer), &len); if (0 >= len) { Serial.println("i/p err"); return; } switch (toupper(buffer[0])) { case 'M': // menu PrintMenu(); break; case 'Q': // quit Serial.println("quit"); return; case 'I': // Initialize interface Initialize(); break; case 'S': // start listening server StartListeningServer(); break; case 'D': // start discovery server StartDiscoveryServer(); break; case 'R': // send request SendRequest(); break; case 'E': //send request to all SendRequestAll(); break; case 'B': // send notification SendNotification(); break; case 'G': // Get network info GetNetworkInfo(); break; case 'N': // select network SelectNetwork(); break; case 'X': // unselect network UnselectNetwork(); break; case 'H': // handle request response HandleRequestResponse(); break; case 'T': // handle request response Terminate(); break; default: Serial.println("wrong menu"); break; } } //1:Add check for startserver before calling below api if (g_isLeSelected) { HandleRequestResponse(); } delay(1000); }
void GetSystemDetails::SystemDetailsNew(QMap<QString, QMap<QString, QStringList> > &OutData) { GetNetworkInfo(OutData); GetOperationInfo_sys(OutData); emit GetDetailsFinish(); }