【问题标题】:IDM Prevents downloading a file through a windows application, and catch itIDM 防止通过 Windows 应用程序下载文件,并捕获它
【发布时间】:2018-01-23 13:01:31
【问题描述】:

我有一个 Windows 应用程序,我尝试下载一个文件,代码如下:

using (var client = new WebClient())
{
    client.DownloadFile(myWebUrlFile, myLocalFilePath);
}

但是,当我运行它时,Internet 下载管理器 (IDM) 会运行,并且会自动阻止下载。 image

你有什么想法吗?

【问题讨论】:

  • 卸载 IDM ?
  • :) 我开发并交付给客户的时候怎么样?
  • 告诉他们不要安装无用的工具?抱歉,如果有人安装了劫持你下载的工具,你只能告诉他们卸载这个垃圾。
  • 两个程序都需要
  • 如果用户只是点击“否”怎么办?应该这样做,不是吗?

标签: c# windows-applications webclient


【解决方案1】:

是的sssssss。有用 :) 非常感谢@nvoight。

用于下载到字节数组而不是文件, 我像这样更改我的代码:

using (var client = new WebClient())
{
    byte[] fileBytesBuffer = client.DownloadData(myWebUrlFile)
    File.WriteAllBytes(myLocalFilePath, fileBytesBuffer);       
}

现在 IDM 无法捕捉到它。

【讨论】:

  • 警告:虽然它可以解决这个特殊问题,但不要将其作为一般技术采用——DownloadFile 经过优化,可以有效地将网络数据传输到磁盘上,而无需先填满整个内存用它。当您真正需要专门欺骗下载管理器时,我会保留它。
  • 谢谢。 @Jeroen-Mostert
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-22
  • 2018-11-03
  • 1970-01-01
  • 2015-07-17
  • 2017-10-04
相关资源
最近更新 更多