#include "netlistmgr.h"
// 通过NLA接口获取网络状态
HRESULT Result = CoInitialize(NULL);
IUnknown *pUnknown = NULL;
Result = CoCreateInstance(CLSID_NetworkListManager, NULL, CLSCTX_ALL, IID_IUnknown, (void **)&pUnknown);
if (SUCCEEDED(Result)) {
INetworkListManager *pNetworkListManager = NULL;
Result = pUnknown->QueryInterface(IID_INetworkListManager, (void **)&pNetworkListManager);
if (SUCCEEDED(Result)) {
VARIANT_BOOL IsConnect = VARIANT_FALSE;
Result = pNetworkListManager->get_IsConnectedToInternet(&IsConnect);
NLM_CONNECTIVITY pConnect = NLM_CONNECTIVITY_DISCONNECTED;
Result = pNetworkListManager->GetConnectivity(&pConnect);
pNetworkListManager->Release();
}
pUnknown->Release();
}
CoUninitialize();