【问题标题】:How can I embed NetLimiter in my application如何在我的应用程序中嵌入 NetLimiter
【发布时间】:2017-10-12 12:10:34
【问题描述】:

我有一个连接到多个服务器的 C# 客户端应用程序。我注意到有必要使用NetLimiter 激活规则,以便在客户端计算机上有如此多的流量时使我的客户端正确连接具有更高的优先级

我没有找到任何关于如何在此应用程序中以编程方式嵌入和制定规则的文档。但是,我读到 here 有人尝试使用 Netlimiter API 但失败了。

我在某处读到,我可以编写自己的应用程序,该应用程序使用here 中的 Windows TC API 并标记 DSCP 来确定优先级。但是在设置我的 C# 应用程序的流选项之前,我遇到了this 问题。

请指导我解决这个问题。

【问题讨论】:

  • 如果您想以编程方式更改 NetLimiter 处理程序的方式,您需要使用 NetLimiter API。如果 NetLimiter 抛出错误,那么您需要 a) 查阅 NetLimiter 文档,和/r b) 使用 NetLimiter 打开支持电话。
  • @paulsm4 在哪里可以找到 API?在其网站上没有找到任何东西。

标签: winapi qos


【解决方案1】:

Look hereConnect()SetRule() 是唯一可用的 API。

NetLimiter 似乎是一个 COM 对象,因此要从 C# 中使用它,您需要这样的东西:

dynamic myownlimiter = Activator.CreateInstance(Type.GetTypeFromProgID("NetLimiter.VirtualClient"));
myownlimiter.Connect("host", "port");

然后按照第一个链接中的说明使用SetRule()

【讨论】:

  • Type.GetTypeFromProgID("NetLimiter.VirtualClient") 返回 null
  • @MatinLotfaliee 作者似乎更改了类名。 Look here 列出系统中的所有 COM 对象名称并找到合适的名称。
猜你喜欢
  • 2014-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-04
  • 2011-05-22
  • 2013-06-15
相关资源
最近更新 更多