2013-10-01 43 views
1

如何通過在VC++中使用WMI查詢獲取VisualSVN服務器用戶訪問權限。在vC++中獲取VisualSVN服務器用戶訪問權限的WMI查詢

我正在寫一個vC++應用程序以通過使用WMI查詢來設置用戶訪問權限的VisualSVN服務器的&。

我們能夠通過使用

VARIANT vtProp; 
hres = pclsObj->Get(L"AssociatedObject", 0, &vtProp, 0, 0); 
wcout <<L"Values : " << vtProp.bstrVal << endl; 

,但沒有得到Permission對象值獲得的AssociatedObject並獲得存儲庫名稱和路徑,該許可包含集合對象。

hres = pclsObj->Get(L"Permissions", 0, &vtProp, 0, 0); 
SAFEARRAY *pSafeArray = vtProp.parray; 
LONG uBound = -1, lBound = 0; 
SafeArrayGetUBound(pSafeArray,1,&uBound); 
SafeArrayGetLBound(pSafeArray,1,&lBound); 
int nCount = uBound - lBound + 1; 
for(int i = 0; i<nCount; ++i) 
{ 
    wcout << ((BSTR*)(pSafeArray->pvData))[i] << endl; 
} 

但沒有得到對象值。如何從SafeArray中獲取未知對象值。

謝謝..

回答

0

使用WMI是選項來獲得或3.4版本之前,管理VisualSVN服務器Subversion的訪問規則之一。從VisualSVN Server 3.4開始,服務器隨附了爲這些任務開發的多個PowerShell cmdlet。例如,要獲取所有用戶和存儲庫的所有訪問規則,請運行PowerShell cmdlet Get-SvnAccessRule

有關其他VisualSVN Server PowerShell cmdlet和用法示例的信息,請閱讀文章KB88: VisualSVN Server PowerShell Cmdlet Reference