我在XP系统上使用VC6。以下代码运行完美,没有错误,没有错误。但它没有得到正确数量的 Windows 外壳!hr的返回值为0,即S_OK。我很混乱!我只打开了一个 windows shell,但 lCount 得到 5。我打开了 3 个 windows shell,lCount 得到 7。有人可以在这里给我提示吗?
IShellWindows *pisw = NULL;
hr = ::CoCreateInstance(CLSID_ShellWindows, NULL, CLSCTX_ALL, IID_IShellWindows, (void**)&psw);
long lCount = 0;
hr = pisw->get_Count(&lCount);