2010/8/22:本掲示板は閲覧専用です。データが一部破損しておりますがご了承ください。
  新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃過去ログ ┃ホーム  
1872 / 3573 ←次へ | 前へ→

今日のところはこの辺で...
←back ↑menu ↑top forward→
 ひよひよ  - 08/4/6(日) 23:31 -

引用なし
パスワード
   ▼HGST使い?さん:
>>解決法ないかなーと色々調べたらそのものズバリなやり取りが。
http://groups.google.co.jp/group/microsoft.public.【URL短縮沸:C-BOARD】o
>>参考になれば。
>おぉおぉ〜、これはそのものずばりですね。ありがとうございます。

残念ながら WSH -> C++ を簡単に出来ませんでした。WSH と C++ に精通した方々のアドヴァイスお待ちしております。基本的には、置き換えるだけのはずなのですが…。

pIWbemServices->ExecQuery(SysAllocString(L"WQL"),
SysAllocString(L"select * from win32_LogicalDisk where drivetype = 3"), 0, NULL, &pEnumCOMDevs);
while(pEnumCOMDevs && SUCCEEDED(pEnumCOMDevs->Next(2000, 1, &pCOMDev, &uReturned)) && uReturned == 1)
{
CString disk, partition, drive, mapping;
VARIANT pVal;
VariantClear(&pVal);
if(pCOMDev->Get(L"DeviceID", 0L, &pVal, NULL, NULL) == WBEM_S_NO_ERROR && pVal.vt > VT_NULL)
{
disk = pVal.bstrVal;
VariantClear(&pVal);
}

pIWbemServices->ExecQuery(SysAllocString(L"WQL"),
SysAllocString(L"SELECT * FROM Win32_DiskPartition"), 0, NULL, &pEnumCOMDevs2);
while(pEnumCOMDevs2 && SUCCEEDED(pEnumCOMDevs2->Next(2000, 1, &pCOMDev, &uReturned)) && uReturned == 1)
{
VariantClear(&pVal);
if(pCOMDev->Get(L"DeviceID", 0L, &pVal, NULL, NULL) == WBEM_S_NO_ERROR && pVal.vt > VT_NULL)
{
partition = pVal.bstrVal;
VariantClear(&pVal);
}
// ここからが問題... 何かが違う。何かが。
mapping.Format(_T("Win32_LogicalDiskToPartition.Antecedent=\'%s\',Dependent=\'%s\'"),
disk, partition);
pIWbemServices->GetObject((BSTR)mapping.GetString(), 0, NULL, &pCOMDev2, NULL);
VariantClear(&pVal);
if(pCOMDev2 && pCOMDev2->Get(L"DeviceID", 0L, &pVal, NULL, NULL) ==
WBEM_S_NO_ERROR && pVal.vt > VT_NULL)
{
drive = pVal.bstrVal;
VariantClear(&pVal);
}
}
}

109 hits

ERROR:該当するツリーデータを読み込めませんでした。

1872 / 3573 ←次へ | 前へ→
  新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃過去ログ ┃ホーム  
ページ:  ┃  記事番号:   
98287
(SS)C-BOARD v3.8(とほほ改ver2.1) is Free