C#获取无线网络信号强度
大虾们:
我希望用的是C#写的,而且不要用到第三方dll,这样以后有问题,也看得懂
------解决方案--------------------
------解决方案--------------------
研究下这个源码,里面有一个"ConnectionClass.dll"类库,利用这个类库,可以方便的对无线网络进行操作.包括wifi信号强度,质量..
http://www.codeproject.com/KB/gadgets/SignalStrenghth/SignalStrengthIndicator.zip
C# code
public static uint GetSignalQuality(Guid gg)
{
UInt32 dwSize = 0;
IntPtr ppData = IntPtr.Zero;
IntPtr ppChannel = IntPtr.Zero;
WLAN_OPCODE_VALUE_TYPE pOpcodeValueType;
if (WlanQueryInterface(m_pClientHandle, ref gg,
WLAN_INTF_OPCODE.wlan_intf_opcode_current_connection,
IntPtr.Zero, out dwSize, out ppData,
out pOpcodeValueType) != ERROR_SUCCESS)
{
m_errorMessage = "Failed WlanQueryInterface() - " +
"Current Connection Attributes";
return 0;
}
if (ppData != IntPtr.Zero)
{
WLAN_CONNECTION_ATTRIBUTES connectionAttributes =
new WLAN_CONNECTION_ATTRIBUTES(ppData);
return connectionAttributes.wlanAssociationAttributes.wlanSignalQuality;
}
return 0;
}
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
这个得和驱动打交道,不可能单独完成
------解决方案--------------------
用第三方吧。
------解决方案--------------------
同意9楼的
------解决方案--------------------
7楼正解
------解决方案--------------------
------解决方案--------------------
这个只能用第三方的DLL了!