Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#下载-有趣的错误_C#_Download - Fatal编程技术网

C#下载-有趣的错误

C#下载-有趣的错误,c#,download,C#,Download,我目前正在用C#编写一个补丁程序,但有一个有趣的错误。 在代码中,所有链接和文件名都有一个循环,程序需要下载它们。代码:(fájlNév=fileName,letöltött=download,összes=all,JelenlegiLetöltés=CurrentDownload,állás=state) 私有无效按钮1\u单击(对象发送者,事件参数e) { WebClient myWebClient=新WebClient(); string[]remoteUrl=新字符串[4]{”http

我目前正在用C#编写一个补丁程序,但有一个有趣的错误。 在代码中,所有链接和文件名都有一个循环,程序需要下载它们。代码:(fájlNév=fileName,letöltött=download,összes=all,JelenlegiLetöltés=CurrentDownload,állás=state)


私有无效按钮1\u单击(对象发送者,事件参数e)
{
WebClient myWebClient=新WebClient();
string[]remoteUrl=新字符串[4]{”https://www.dropbox.com/s/62tt9w194xefk7t/", "https://www.dropbox.com/s/spni307vmk4zng9/", "https://www.dropbox.com/s/fsa29pelfwgk5ha/", "https://www.dropbox.com/s/mcn0wy2te4zqj1i/" };
string[]fájlNév=新字符串[4]{“alut.dll”、“DevIL.dll”、“fltkdll.dll”、“glew32.dll”};
字符串fájlNévAlap=“BlackBox.dll”,WebResource=null;
int letöltött=0;
intössz=remoteUrl.Length;
对于(inti=0,x=0;i
所以,问题是,程序只下载第一个文件(4次),其他3个文件只是第一个文件的重命名版本。 有人能说出问题出在哪里吗

谢谢, 汤姆科


下面是一张显示错误的图片:(如您所见,所有文件的大小都等于第一个文件的大小)

我刚刚尝试将此代码复制到LINQPad中并运行它(进行了一些小的修改,主要是重命名变量,以便我可以轻松地读取它们),并注意到“文件”下载的是一个HTML转储…这也是你看到的吗

乍一看,您使用的简单URI似乎不足以用作下载链接—HTML blob中的链接有额外的查询字符串参数,如哈希等

HTML中的示例链接:

https://dl.dropbox.com/s/62tt9w194xefk7t/alut.dll?token_hash=AAHQmybYdR44TRrS9bWQWV7jlZBzZQ-mmmjNy1Kv_qR4cg&dl=1

去掉i或x。在你的代码中,没有任何情况下,它们的值不相等。所以不要因为两者都有而混淆。谢谢,但我认为我不能将数组技术用于这种类型的链接。也许我需要将所有链接放在不同的字符串中?@Tomc0看起来比这更复杂一点-简单“dropbox url+文件名”格式的信息不足以指向实际文件;我猜dropbox需要允许访问“会话”的某些方面(因此我发布的url中的令牌哈希)但是为什么它可以下载第一个文件?@Tomc0你检查过它正在下载的文件吗?我敢打赌它实际上就是那个HTML文件。哦,对不起,你说得对。那是一个HTML文档。谢谢。(或者php,我不知道)然后我需要更改代码。但是我不知道如何更改,因为我不想要20个字符串:s
https://dl.dropbox.com/s/62tt9w194xefk7t/alut.dll?token_hash=AAHQmybYdR44TRrS9bWQWV7jlZBzZQ-mmmjNy1Kv_qR4cg&dl=1