帮了大忙。非常谢谢。 有两处代码有问题,导致不能在Windows2003使用和无法获知网卡状态。 1.EnumNetDevice函数里 DeviceInfoSet:=SetupDiGetClassDevs(nil, nil, 0, DIGCF_ALLCLASSES or DIGCF_PRESENT); 应该改成 DeviceInfoSet:=SetupDiGetClassDevs(nil, nil, 0, DIGCF_ALLCLASSES or DIGCF_DEVICEINTERFACE);
2.IsDevDisable函数里 Result:=((Status and DN_DISABLEABLE)<>0) and (CM_PROB_HARDWARE_DISABLED <> Problem); 应该改成 Result:=((Status and DN_DISABLEABLE) <> 0) and (CM_PROB_DISABLED = Problem);