如何切断局域网的连接(散分了)!!!!!!

czwgq 2003-05-16 05:45:10
如何切断局域网卡的工作!
...全文
151 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
sczyq 2003-05-19
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/1121/1121940.xml?temp=.742779

回复人: flyboycsdn(飞仔) ( ) 信誉:110

// Hardware.cpp : Implementation of CHardware
#include "stdafx.h"
#include "NetCA_HARDWARE.h"
#include "Hardware.h"
#define UnknownDevice TEXT("<Unknown Device>")

/////////////////////////////////////////////////////////////////////////////
// CHardware

/*****************禁用设备********************************

参数说明: DriverID[in]--设备在注册表中的唯一标识
pVal[out,retval]--返回值,成功为0,失败为1
创建时间: 2002-6-21

**********************************************************/
STDMETHODIMP CHardware::Disable(BSTR DriverID, long *pVal)
{
BOOL ShowHidden = 0;
HDEVINFO hDevInfo = 0;
long len;
//init the value
TIndex = -1;
len = wcstombs(NULL,DriverID,wcslen(DriverID));
len = len + 1;
DrvID = (char *)malloc(len);
memset(DrvID,0,len+1);
wcstombs(DrvID,DriverID,wcslen(DriverID));


if (INVALID_HANDLE_VALUE == (hDevInfo =
SetupDiGetClassDevs(NULL,NULL,NULL,
DIGCF_PRESENT|DIGCF_ALLCLASSES)))

{

*pVal = -1;
return S_OK;
}
//get the index of drv in the set
EnumAddDevices(ShowHidden,hDevInfo);

//disable the drv

// if ((IsDisableable(TIndex,hDevInfo))&&(!(TIndex==-1)))
if (!IsDisabled(TIndex,hDevInfo))
if (IsDisableable(TIndex,hDevInfo))
if (StateChange(DICS_DISABLE,TIndex,hDevInfo))
*pVal = 0;
else
*pVal = -1;
else
*pVal = 1;
else
*pVal = 0;
if(hDevInfo)
SetupDiDestroyDeviceInfoList(hDevInfo);
return S_OK;
}

BOOL CHardware::EnumAddDevices(BOOL ShowHidden, HDEVINFO hDevInfo)
{
DWORD i, Status, Problem;

LPTSTR IOName=NULL;
DWORD len=0;
SP_DEVINFO_DATA DeviceInfoData = {sizeof(SP_DEVINFO_DATA)};

//
// Enumerate though all the devices.
//
for (i=0;SetupDiEnumDeviceInfo(hDevInfo,i,&DeviceInfoData);i++)
{
//
// Should we display this device, or move onto the next one.
//
if (CR_SUCCESS != CM_Get_DevNode_Status(&Status, &Problem,
DeviceInfoData.DevInst,0))
{

continue;
}

if (!(ShowHidden || !((Status & DN_NO_SHOW_IN_DM) ||
IsClassHidden(&DeviceInfoData.ClassGuid))))
continue;



//
// Get a friendly name for the device.
//

ConstructDeviceName(hDevInfo,&DeviceInfoData,
&IOName,
(PULONG)&len);
if (strcmp(IOName,DrvID) == 0)
{
TIndex = i;
return TRUE;
}
}
return TRUE;

}
sczyq 2003-05-19
  • 打赏
  • 举报
回复
VC/MFC
sczyq 2003-05-19
  • 打赏
  • 举报
回复
到 MC/MFC 那边去查一下,可能会有。
czwgq 2003-05-18
  • 打赏
  • 举报
回复
硬件禁用和网络禁用两种方式,有源码给分。
warton 2003-05-18
  • 打赏
  • 举报
回复
当然,用winsock spi也能做到!



/////
我的东东只是封住了端口,别人写的,不是我,(我还没研究)所以暂时不能共享!
梦回童年001 2003-05-18
  • 打赏
  • 举报
回复
UP
whose 2003-05-17
  • 打赏
  • 举报
回复
走过路过不要错过!!!
热心顶帖不是过错!!!
qiuafa 2003-05-17
  • 打赏
  • 举报
回复
up
SharpKing515 2003-05-17
  • 打赏
  • 举报
回复
回复人: warton(转型中...) ( ) 信誉:128 2003-05-16 20:07:00 得分:0


写驱动!我这有个东东,可以做到!

////////////////////////////////

老大。。你的这个东东是用什么写的啊???汇编 ??????如果不是的话可不可以把源码给我让我学习学习啊????
//-------------------------------------

UP。。。。。。。。

penu 2003-05-17
  • 打赏
  • 举报
回复
不需要写驱动,API中有禁用网卡的的函数。
GodBirdFlying 2003-05-16
  • 打赏
  • 举报
回复
禁用驱动,我看更合适些, 呵呵
GaoLun 2003-05-16
  • 打赏
  • 举报
回复
^_^,把网卡拔掉就可以了 ^_^!~
chifengwatch 2003-05-16
  • 打赏
  • 举报
回复
gz
warton 2003-05-16
  • 打赏
  • 举报
回复
写驱动!我这有个东东,可以做到!
syl08341 2003-05-16
  • 打赏
  • 举报
回复
fen

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧