我们正在尝试使用winapi widestring函数来检索注册表信息。然后我们需要通过网络传输这些信息。
LPWSTR PerfData = (LPWSTR) malloc(8192);
RegQueryValueEx(hSubKey, TEXT("DisplayName"), NULL, NULL, (LPBYTE) PerfData, &cbData);
现在我们有了宽字符串字符,我们将用单字节字符填充它们。尽可能多地节省带宽是很重要的,因为当我们使用单个字节时,它在数千台计算机上迭代,已经阻塞了我们的网络。
另外,我要如何在另一边分开这些呢?
迄今为止我使用过的最便宜的协议(就带宽而言)是Google的protobuf。我强烈推荐它。至于boost-asio,它不会造成任何开销——asio是一个不错的选择。你也可以考虑压缩它(使用boost iostreams gzip filter和asio)。