Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Win32_NetWorkAdapterConfiguration 
:(
    Опции темы
coolerMen
Дата 6.5.2009, 09:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 15.2.2006

Репутация: нет
Всего: нет



Есть код:
(проверки на ошибки опустил)

Код


IWbemLocator *pIWbemLocator = NULL;
IWbemServices *pSvc = NULL;
HRESULT hr;

hr = CoInitializeEx(0, COINIT_MULTITHREADED); 
HRESULT hRes = CoCreateInstance (
            CLSID_WbemAdministrativeLocator,
            NULL ,
            CLSCTX_INPROC_SERVER | CLSCTX_LOCAL_SERVER , 
            IID_IUnknown ,
            ( void ** ) &pIWbemLocator
            ) ;


if (SUCCEEDED(hRes))
{
    hRes = pIWbemLocator->ConnectServer(
                L"root\\CIMV2",  // Namespace
                NULL,          // Userid
                NULL,           // PW
                NULL,           // Locale
                0,              // flags
                NULL,           // Authority
                NULL,           // Context
                &pSvc
                );

pIWbemLocator->Release(); 

BSTR MethodName = SysAllocString(L"EnableStatic");
BSTR ClassName = SysAllocString(L"Win32_NetWorkAdapterConfiguration");

IWbemClassObject* pClass = NULL;
hres = pSvc->GetObject(ClassName, 0, NULL, &pClass, NULL);

IWbemClassObject* pInParamsDefinition = NULL;
hres = pClass->GetMethod(MethodName, 0,  &pInParamsDefinition, NULL);

IWbemClassObject* pClassInstance = NULL;
hres = pInParamsDefinition->SpawnInstance(0, &pClassInstance);
BSTR ip = SysAllocString(L"10.0.0.3");
BSTR mask = SysAllocString(L"255.255.0.0");

long index[]={0};

SAFEARRAY *ip_list = SafeArrayCreateVector(VT_BSTR,0,1);
SafeArrayPutElement(ip_list,index,ip);

SAFEARRAY *mask_list = SafeArrayCreateVector(VT_BSTR,0,1);
SafeArrayPutElement(mask_list,index,mask);

VARIANT arg1;
arg1.vt = VT_ARRAY|VT_BSTR; 
arg1.parray = ip_list;
hres = pClassInstance->Put(_T("IPAddress"), 0, &arg1, 0);

VARIANT arg2;
arg2.vt = VT_ARRAY|VT_BSTR; 
arg2.parray = mask_list;
hres = pClassInstance->Put(_T("SubNetMask"), 0, &arg2, 0);

pSvc->Release();
}
}



т.е. через WMI хочу поменять IP, все операции выполняются без ошибок,
тока нихрена ничего не меняется :yes-sad: 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: COM/DCOM/ActiveX/ATL/CORBA | Следующая тема »


 




[ Время генерации скрипта: 0.0390 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.