Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Странный глюк при использовании OpenFileDialog 
:(
    Опции темы
peaceduke
Дата 26.9.2007, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 2.4.2007

Репутация: нет
Всего: 2



Привет всем. У меня странный глюк при использовании OpenFileDialog-а. Есть форма, на форме несколько текстбоксов, с них берется инфа и записывается в базу (Access). Так вот, в один из текстбоксов я пишу путь к файлу, который получаю из OpenFileDialog-а. Вот код:

Код

OpenFileDialog myDialog = new OpenFileDialog();
myDialog.Filter = "Image Files(*.JPG)|*.JPG";
myDialog.Title = "Выберите фото";
myDialog.CheckFileExists = true;
if (myDialog.ShowDialog() == DialogResult.OK)
{
    FotoPathtextBox.Text = myDialog.FileName;
    myDialog.Reset();
}


Так вот все работает, я выбираю файл, путь к файлу записывается в текстбокс. Но при нажатии на клавишу сохранить в базе, вылетает ошибка, не может найти файл с базой, причем путь по которому ищется файл - это папка, в которой лежит выбранная фотка, плюс название файла базы. Как бороться даже представить не могу. Пробовал отдебажить, ставлю брейк на первой строчке обработчика нажатия кнопки. До нее не доходит, ошибка вылетает раньше. А если поставить брейк на строчку ниже открытия коннекшена, то эксепш отлавливается, но в чем ошибка непонятно. Помогите пожалуйста разобраться, в чем может быть дело. Может студия криво встала.
PM MAIL   Вверх
peaceduke
Дата 27.9.2007, 07:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 2.4.2007

Репутация: нет
Всего: 2



Привет. Никто так и не ответил. Даже предположений нет? Ну может можно какой-нибудь компонент поставить, для замены стандартного диалога!? Нужно просто чтобы пользователь мог выбрать файл и сохранить путь к нему.
PM MAIL   Вверх
QryStaL
Дата 27.9.2007, 08:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Intellectual feast
**


Профиль
Группа: Участник
Сообщений: 914
Регистрация: 30.11.2005

Репутация: 3
Всего: 32



Какая ошибка хоть возникает? Текст эксепшна в обоих случаях?


--------------------
I don't need a reason being who I am...
PM MAIL ICQ   Вверх
peaceduke
Дата 27.9.2007, 10:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 2.4.2007

Репутация: нет
Всего: 2



Цитата

Какая ошибка хоть возникает? Текст эксепшна в обоих случаях?


Я же писал, не может найти файл базы данных. А не может потому, что ищет в папке из которой выбрана картинка при помощи OpenFileDialog-а. Почему он пытается так искать непонятно. Как будто при использовании OpenFileDialog-а путь, хранящийся в переменной Application.StartupPath, меняется на путь к фалу выбранного файла, то есть он начинает думать что корневой для приложения является папка, из которой было выбрано изображение. К сожалению не могу проверить, может поможет указание полного пути к базе. Буду дома проверю, но все очень странно.
PM MAIL   Вверх
peaceduke
Дата 27.9.2007, 19:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 2.4.2007

Репутация: нет
Всего: 2



В общем, опишу решение проблемы сам.  smile А решение довольно простое. Нужно везде к базе указывать полный путь. Очень удобно делать при помощи Application.StartupPath + файл_базы_данных, для случая если база лежит в папке с исполняемым файлом. Видимо при отработке OpenFileDialog-а в какую то переменную записывается путь к выбранному файлу, который и считается корневым для файлов, не имеющих полного пути. Вот так вот, но очень бы хотелось узнать точную причину! 
PM MAIL   Вверх
iad
Дата 27.9.2007, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 10.9.2007
Где: Москов

Репутация: нет
Всего: -2



А причем здесь OpenFileDialog? Он то как раз отрабатывает нормально..

Добавлено через 1 минуту и 48 секунд
Цитата(peaceduke @  26.9.2007,  18:57 Найти цитируемый пост)
 не может найти файл с базой,
 совсем не причем OpenFileDialog smile 

PM MAIL   Вверх
peaceduke
Дата 28.9.2007, 06:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 2.4.2007

Репутация: нет
Всего: 2



Цитата

А причем здесь OpenFileDialog? Он то как раз отрабатывает нормально..


Если его не использовать, то и с базой тоже все нормально. Просто прописываешь в строке коннекта имя файла базы и все, но это при условии, что база лежит там же, где и исполняемый файл.
PM MAIL   Вверх
archeg
Дата 28.9.2007, 07:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 612
Регистрация: 6.1.2007
Где: Киев

Репутация: 9
Всего: 27



Жжешь smile  После использования openFileDialog`а меняется текущая папка. Указывая НЕ полный путь ты его таким образом делаешь зависимым от текущей папки.

П.С. Сам недавно попался на такое, но сразу исправил  smile 


--------------------
ИМХО задница есть универсальный интерфейс. Ибо через задницу можно сделать абсолютно ВСЕ (bash.org.ru)

Дядька всегда можно спросить в аське, если не задалбывать - не откажет smile
И вообще, на самом деле я студент, и ненавижу обращение на "Вы") Тут все свои  ;)
PM MAIL ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.0915 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.