2013-08-28 7 views
0

Хорошо, поэтому я искал веки, чтобы найти это, но не повезло.Загрузить в корневой каталог

Я использую:

Me.downloader.DownloadFileAsync(New Uri(fileUrl), Path.GetFileName(fileUrl), Stopwatch.StartNew) 

Чтобы скачать файл, но я хочу, чтобы сохранить в корневую директорию моей программы в файле с именем запуска.

Так, например, если моя программа находится на рабочем столе, и я открываю ее и нажимаю «Пуск», я хочу, чтобы она создавала папку запуска, если она отсутствует, тогда загрузите файлы в нее, и если она не просто загрузит файлы в нее ,

Я искал везде, чтобы найти код, который позволил бы мне сделать это, и я пробовал много разных вещей.

В настоящий момент он просто сохраняет в корневом каталоге, где находится программа.

Спасибо.

+0

Необходимо знать, какую операционную систему вы используете, и как была установлена ​​программа. Новые ОС не позволяют записывать в папку программы и вместо этого заставлять вас записывать в папку ProgramData для вашего приложения или в пространство данных пользователя. Это связано прежде всего с тем, что приложения больше не имеют административного доступа, как в XP и предыдущих версиях окон. –

+0

Я делаю программу в vb.net, и я использую Windows 7, программа должна работать на всех операционных системах. –

+0

Windows 7 не позволит приложения записывать в каталог программы, если только он не запускается как администратор. –

ответ

0

попробовать что-то вроде этого:

Dim baseDir As String = AppDomain.CurrentDomain.BaseDirectory 
Dim launcherDir As String = Path.Combine(baseDir, "Launcher") 

If Not Directory.Exists(launcherDir) Then 
    Directory.CreateDirectory(launcherDir) 
End If 

Dim targetFile = Path.Combine(launcherDir, Path.GetFileName(fileUrl)) 

Me.downloader.DownloadFileAsync(New Uri(fileUrl), targetFile, Stopwatch.StartNew) 
+0

Сладкий, он работает. Большое спасибо. Я предполагаю, что вы быстро написали код, поскольку было несколько ошибок. Вы написали «Dim laucherDir», но использовали переменную «launcherDir», которая сначала смутила меня, но потом я увидел, что это опечатка. Также Create не является частью Каталога, и мне пришлось изменить его на Directory.CreateDirectory. Помимо этого, это отлично работает, спасибо за ваше время. –

+0

Да, я написал его непроверенным, извините. Я исправлю опечатки ... –