0
呵呵我得到了一個小概率,實際上我希望能夠看到我插入設備的列表 我想在MessageBox() 的第一個地方看到它們,但是這種變體讓我感到厭煩^ _ ^),我試過很多方法,但無果而終顯示消息框中的變體類型值
IMoniker *tmpMonk=NULL;
ULONG done;
VARIANT varName;
while(this->deviceClassEnum->Next(1,&tmpMonk,&done)==S_OK)
{
IPropertyBag *tmpBag=NULL;
tmpMonk->BindToStorage(0,0,IID_IPropertyBag,(void **)&tmpBag);
VariantInit(&varName);
checkIt(tmpBag->Read(L"FriendlyName",&varName,0));
// this i wana see what is inside but huuuuuuuuuuuuuh
MessageBox(this->app,TEXT((LPCSTR)varName.bstrVal),"",NULL);
VariantClear(&varName);
tmpBag->Release();
}
其次如何能夠從設備切換到另一個。從 無論菜單或列表
thx tenfour它的工作原理我從來不知道MessageBoxW存在,我應該把這些名稱放在集合中以便能夠從設備切換到另一個? –
每個/大多數(?)Windows-API函數存在兩種變體,* A和* W。根據您是否在項目設置中定義了UNICODE,Windows頭文件將「MessageBox」定義爲MessageBoxW或MessageBoxA。這是爲了您的方便,但您始終可以明確地調用適當的版本。 –