Наше приложение требует, чтобы пользователь выбрал фотографию со своей камеры. Камеры, которые я тестировал при добавлении этой функции, в «Моем компьютере» отображались как буква диска, поэтому загрузка и работа с изображением была простой задачей. Сотрудник дал мне свою камеру, которая вместо установки в качестве привода запускает ужасный «Мастер сканера и камеры». Я был рад видеть, что в «Моем компьютере» есть запись для камеры, и я действительно мог просматривать и выбирать файлы из стандартного OpenFileDialog. - БОЛЬШОЙ!
За исключением того, что, когда я пытаюсь получить доступ к файлу, я получаю "UnauthorizedAccessException". После расследования я вижу, что он на самом деле загружает файлы из этого места:
C: \ Documents and Settings \ sk \ Локальные настройки \ Временные интернет-файлы \ Content.IE5 \ AXY0DNE3
Что на свете ?! IE5.5 ??
Отсюда дела идут вниз по склону. Это местоположение, по-видимому, очень хорошо спрятано, к которому я могу перейти, только непосредственно введя путь в панели обозревателя. Затем я решил, что могу просто скопировать файл во временную папку и работать с ним оттуда. Я сделал это, но все еще не могу работать с файлом, выдав то же исключение:
Доступ к пути «C: \ Documents and Settings \ sk \ Local Settings \ Temp \ IMG_0005 [1] .jpg» запрещен.
Похоже, что настройки разрешений были скопированы вместе с файлом (имеет смысл).
В качестве обходного пути я дал указание своим пользователям использовать ужасного маленького волшебника, скопировать файлы во временную папку и затем выбрать их там. Мне это не нравится, но мне нужно было развернуть эту функцию сегодня. Теперь, когда есть обходной путь, я бы хотел, чтобы это работало, если это возможно. В идеале я мог бы просто работать с файлом, не копируя его в другие места и т. Д. Я не понимаю, почему выбрасывается исключение UnauthorizedAccessException.
Я надеюсь, что кто-то там столкнулся с подобной проблемой и может поделиться некоторыми советами о том, как работать с этими файлами. Я бы предпочел не идти по всему маршруту WIA и работать с файлами через интерфейс камеры.