Текущий архив: 2007.10.21;
Скачать: CL | DM;
ВнизWMI и сеть Найти похожие ветки
← →
pirks © (2007-08-08 13:41) [0]у меня такакя проблема :
C помощью WMI получил свединия о первой сетевухе
var
Service: ISWbemServices;
ObjectSet: ISWbemObjectSet;
SObject: ISWbemObject;
PropSet: ISWbemPropertySet;
SProp: ISWbemProperty;
PropEnum, Enum: IEnumVariant;
TempObj: OleVariant;
Value: Cardinal;
StrValue: string;
na : integer ;
begin
na := 1 ;
Service:= DM.SWLocator.ConnectServer( Name , "root\CIMV2" , User , Password , "" , "" , 0 , nil);
SObject:= Service.Get("Win32_NetworkAdapter", wbemFlagUseAmendedQualifiers, nil);
ObjectSet:= SObject.Instances_(0, nil);
Enum:= (ObjectSet._NewEnum) as IEnumVariant;
Enum.Next(1, TempObj, Value);
SObject:= IUnknown(TempObj) as SWBemObject;
PropSet := SObject.Properties_;
PropEnum := (PropSet._NewEnum) as IEnumVariant;
// начинаю перебирать свойства
while (PropEnum.Next(1, TempObj, Value) = S_OK) do
begin
SProp:= IUnknown(TempObj) as SWBemProperty;
if (SProp.Get_Value <> null) then
begin
with SProp do
begin
if Name = "SystemName" then
MainInfo.NET.SystemName := Get_Value
else if Name = "Caption" then
MainInfo.NET.Adapter[na].Caption := Get_Value
else if Name = "Name" then
MainInfo.NET.Adapter[na].Name := Get_Value
else if Name = "ServiceName" then
MainInfo.NET.Adapter[na].ServiceName := Get_Value
else if Name = "Description" then
MainInfo.NET.Adapter[na].Description := Get_Value
else if Name = "Manufacturer" then
MainInfo.NET.Adapter[na].Manufacturer := Get_Value
else if Name = "DeviceID" then
MainInfo.NET.Adapter[na].DeviceID := Get_Value
else if Name = "MACAddress" then
MainInfo.NET.Adapter[na].MACAddress := Get_Value
end; { with }
end; { if 1 }
end;
Всё отлично работает но как получить данные остальных карт у меня лично их 2
Кто нибудь знает ?
Заранее спасибо
← →
Сергей М. © (2007-08-08 13:44) [1]
> у меня лично их 2
У тебя-то может их и две, а на удаленном компе вполне может быть и одна)
← →
pirks © (2007-08-08 13:46) [2]нет я проверял и на своём у меня 2 своих + VMWare ещё 1
← →
Сергей М. © (2007-08-08 13:53) [3]Ну так у тебя ж реализован цикл по ВСЕМ "адаптерам" !
В чем проблема-то ?
← →
Lacmus © (2007-08-08 13:56) [4]>pirks © (08.08.07 13:41)
Enum.Next(1, TempObj, Value); ?
← →
pirks © (2007-08-08 14:04) [5]работает !!! Точняк Enum.Next(1, TempObj, Value);
Спасибо всем за внимаеие :)
Страницы: 1 вся ветка
Текущий архив: 2007.10.21;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.053 c