关于禁用本地连接的问题,请各位高手帮帮忙!!!

y792845 2006-04-12 11:29:17
BOOL StateChange(DWORD NewState, DWORD SelectedItem,HDEVINFO hDevInfo)
{
SP_PROPCHANGE_PARAMS PropChangeParams = {sizeof(SP_CLASSINSTALL_HEADER)};
SP_DEVINFO_DATA DeviceInfoData = {sizeof(SP_DEVINFO_DATA)};

// Get a handle to the Selected Item.
if (!SetupDiEnumDeviceInfo(hDevInfo,SelectedItem,&DeviceInfoData))
{
printf("EnumDeviceInfo");
return FALSE;
}
//

// Set the PropChangeParams structure.
PropChangeParams.ClassInstallHeader.InstallFunction = DIF_PROPERTYCHANGE;
PropChangeParams.Scope = DICS_FLAG_GLOBAL;
PropChangeParams.StateChange = NewState;

if (!SetupDiSetClassInstallParams(hDevInfo, &DeviceInfoData,
(SP_CLASSINSTALL_HEADER *)&PropChangeParams, sizeof(PropChangeParams)))
{
printf("SetClassInstallParams");
return FALSE;
}

// Call the ClassInstaller and perform the change.
// This may take a while !
if (!SetupDiCallClassInstaller(DIF_PROPERTYCHANGE,
hDevInfo, &DeviceInfoData))
{
printf("SetClassInstallParams");
return TRUE;
}

return TRUE;
}
BOOL IsClassNet( GUID * ClassGuid )
{
#define MAX_NUM 50

HKEY hKeyClass;
LONG lRet;
char ClassType[MAX_NUM];
char NetClass[MAX_NUM] = "Net";
DWORD dwLength = MAX_NUM,dwType = REG_SZ;

if (hKeyClass = SetupDiOpenClassRegKey(ClassGuid,KEY_READ))
{
lRet = RegQueryValueEx(hKeyClass, TEXT("Class"), NULL,
&dwType, LPBYTE(ClassType), &dwLength);
RegCloseKey(hKeyClass);

if (lRet != ERROR_SUCCESS)
return FALSE;

if (!strcmp(ClassType,NetClass)) // if they are the same;
return TRUE;
}

return FALSE;
}
能不能帮忙解释一下这是什么意思呢 谢谢了
...全文
179 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zyyoung 2006-04-12
  • 打赏
  • 举报
回复
你从那里搞的?你想拿它做什么
netsys2 2006-04-12
  • 打赏
  • 举报
回复
晕,都是些API。直接查在线帮助,啥都有了。

1,317

社区成员

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

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