MonkAlex / MangaReader

Help to download updates from online manga readers.
http://monkalex.github.io/MangaReader/
MIT License
51 stars 6 forks source link

Вылет при смене папки закачки #81

Closed ftugit closed 7 years ago

ftugit commented 7 years ago

Изначально я качал на флешку(диск F), но переместил софтину на другой диск и файлы не качаются пока я не вставлю назад флешку. ОК, пошел в настройки менять папку и при сохранении настроек происходит вылет. Сменить папку без флешки я тоже не мог, windows сообщала, что расположение не найдено. Проблему я решил путем редактирования базы данных вручную меняя папку каждой качаемой манги(благо их было всего 10). Отсюда вывод:

  1. Использовать папку загрузки(%USERPROFILE%\Downloads) самой системы
  2. Не закрепляться за полным путем к папки, а ограничится относительным путем пока она совпадает с расположением софтины
  3. Заново запросить у пользователя папку хранения если старая не доступна

Любой из этих пунктов избавит от моей проблемы если я, например, храню софт на флешке и использую на разных ПК. Софтина в текущим виде больше на портабельную смахивает(сама определяет свое местоположение и место куда лучше загружать), следовательно и логикой работы тоже следует этой действовать. Смысл закреплять папку за каждой мангой если у пользователя без редактирования базы нет возможности указать расположение отличное от дефолтного.

MonkAlex commented 7 years ago

По идее, смена папки поддерживается, но я не пробовал менять диск. По возможности - мне нужны логи с этой ошибкой, error.log конкретно.

ftugit commented 7 years ago

Логи я могу дать, но конкретно когда я манипулировал сказать не могу. https://rocld.com/mzab - те же, что и ниже

MonkAlex commented 7 years ago

@ftugit судя по логам, после копирования программы и запуска новой копии, программа пыталась переместить мангу со старого пути (и он был доступен) в новый, а там уже была такая же. Ну и, так делать запрещено, чтобы случайно не потереть чего.

В целом, пытаюсь перевести систему на относительные пути, так что "из коробки" будет видимо работать как раз как портабельная версия, но если руками переопределить папку для скачивания, не в папке программы - будет работать как сейчас, по абсолютному пути.

ftugit commented 7 years ago

Это и есть золотая середина. Только желательно отучить софтину работать с сохранёнными за каждой мангой путями ну или дать возможности редактировать их.

Например таблица:

  1. id
  2. информация о манге
  3. dirname

dirname это и есть та папку куда будет скачиваться. путь до неё будет собираться используя "по умолчанию" + "dirname". Это так же решит и вопрос если я вытащу флешку из ПК 1 и продолжу на ПК2. В идеале софтину можно научить проверять наличие скаченных файлов и перемещать их по запросу в новую папку по умолчанию.

MonkAlex commented 7 years ago

Пока папка, в которую качаешь, находится где то в папке программы - так и будет работать. В процессе всё, кучу всего надо проверить и немножко переписать.

ftugit commented 7 years ago

А если папка за пределами софтины и путь для закачки не доступен? Что будет делать софтина?

  1. Сбросит маршрут на дефолтный
  2. Запросит новый
  3. Будет упорно засыпать ошибками или вылетами

Сейчас софтина в такой ситуации тупо нечего не делает, предположу, что только логи засоряет.

MonkAlex commented 7 years ago

Подумаю, что делать. Пока самым удобным видится второй вариант, чтобы и видно было, что программа не смогла достучаться до старого пути и был способ указать куда качать. Но это, очевидно, займет ещё времени.

MonkAlex commented 7 years ago

default

Чет такое будет на запуске =)

MonkAlex commented 7 years ago

Если форс мажоров никаких не будет - через неделю другую выкачу релиз с этим делом.