Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович
Новый видеокурс по Git

Новые технологии / Обои рабочего стола

  • Составляем программу - менеджер фоновых рисунков для рабочего стола.
  • Дата отправки отчёта: 25 апреля 2015 г.
  • Задание выполнено: за 3 час. 00 мин.
  • Чему научился: Для меня было много нового на уроке. Но, менять обои рабочего стола я научился.
  • Что было сложным: Подсмотрел в рубрике "Вопросы и ответы" у petro_zzz как нужно правильно удалять файлы картинок:
    pictureBox.Image.Dispose();
  • Комментарии: Остался у меня один невыясненный вопрос:
    В видеокурсе переменной dir присваивалось значение "papers\\" и всё отлично работало. У меня же не работало, т.к. в реестре компьютера прописывалось papers\MyImage.jpg. И лишь когда я переменной dir присвоил значение полного пути к файлу "F:\\MyProjects\\NewTechnologies\\WallPaper\\WallPaper\\bin\\Debug\\papers\\" - всё заработало. Как так?
  • Оценка видео-уроку:
Отчёт от 4591 за Новые технологии / Обои рабочего стола


Отчёт от 4591 за Новые технологии / Обои рабочего стола




Оцени работу

 
Сохранить страницу:

1. Евгений Витольдович
Евгений Витольдович
ответить
→  Aleksandr Zaitcev  # Новые технологии / Обои рабочего стола / 2015-04-25 09:25

Значение "papers\MyImage.jpg" будет работать только из программы - так как программа задаёт текущую папку именно там, откуда она запущенна, и оттуда этот файл находится по указанному пути.
А запись в реестре не привязывается ни к какой корневой папке, поэтому там нужно указывать полный путь.



Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Научился менять обои рабочего стола с помощью программки и закачивать их по ссылке с инета.
Трудности: Я запустил программку меняю картинку и черный экран. Оказывается в реестр не записывался полный путь - пришлось внести строку dir = Assembly.GetExecutingAssembly().Location.ToString().Replace("WallPaper.exe", "") + "papers\\"; Я уж думал на Win10 по другому обои организованы - слава Microsoft - ничего там трогать не стали. А дальше все пошло как по маслу.
Кстати нужно не picture.Image=null; писать, а достаточно picture.Image.Dispose(); и будет счастье. Поэтому я не стал отказываться от превьюшной картинки. Сделал еще мелкую доработку - во время загрузки картинки сделал, чтобы появлялся WaitCursor. С моей точки зрения кнопка загрузить картинку лишняя. Хотя момент философический - мне кажется, что достаточно нажать клавишу Enter на textbox ссылки и после этого происходит загрузка.
Научился: Для меня было много нового на уроке. Но, менять обои рабочего стола я научился.
Трудности: Подсмотрел в рубрике "Вопросы и ответы" у petro_zzz как нужно правильно удалять файлы картинок: pictureBox.Image.Dispose();
Остался у меня один невыясненный вопрос: В видеокурсе переменной dir присваивалось значение "papers\\" и всё отлично работало. У меня же не работало, т.к. в реестре компьютера прописывалось papers\MyImage.jpg. И лишь когда я переменной dir присвоил значение полного пути к файлу "F:\\MyProjects\\NewTechnologies\\WallPaper\\WallPaper\\bin\\Debug\\papers\\" - всё заработало. Как так?