【问题标题】:Network control on WindowsWindows 上的网络控制
【发布时间】:2011-11-10 00:56:24
【问题描述】:

如何控制 Windows 上的网络接口?实际上,这个想法很简单。

  1. 建立连接到计算机上的某个适配器。

  2. 将适配器的全部流量引导至此程序。

  3. 为此程序授予权限,哪些必须传输到适配器,哪些不应该传输。

我认为程序必须实现任何 Windows 网络适配器接口并注册为适配器驱动程序。因此,当程序要向真实的适配器传输数据时,必须调用适配器驱动方法。反过来,这些方法实现了相同的 windows 网络接口(或者以其他方式调用,我不太清楚,希望你明白),不是吗?

因此,我们这里有一种继承。 在使用我们的新驱动程序之前: windows 应用程序和 windows 本身

________________________ windows 网络接口

适配器 1 的驱动程序

________________________ 操作系统边界结束

适配器 1

使用我们的新驱动程序: windows 应用程序和 windows 本身

________________________ windows 网络接口

我们的司机

________________________ windows 网络接口

适配器 1 的驱动程序

________________________ 操作系统边界结束

适配器 1

我相信这种接口是存在的,我希望它很容易实现。

【问题讨论】:

    标签: windows winapi networking network-traffic


    【解决方案1】:

    您可能需要挂钩 Windows API 调用才能真正做到这一点。有可能...从谷歌搜索钩子 API 和 Winternals 开始 - 看看你是否能找到他们的示例代码。

    在 Winternals 被微软收购之前,他们发布了他们的代码。 http://technet.microsoft.com/en-us/sysinternals/bb545021

    想法是这样的:

    • 您编写了一个用户模式程序来控制您的挂钩设备 司机。
    • 您的挂钩设备驱动程序确定网络流量是否在 给定的 API 调用没问题。
    • 驱动程序允许正常的 API 调用成功。

    【讨论】:

    • 是的......很好。但是还有其他更纪实或更具体的方式。
    猜你喜欢
    • 1970-01-01
    • 2010-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多