Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.11.2016, 14:14   #11
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
А 11.cr не открыт во время копирования? И Opendialog ни чего не копирует, копирует copyfile
Точно так.
Ну, или выбранный для копирования файл может быть кем то захвачен эксклюзивно!
Вы в программе нигде больше файлы не открываете?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 08.11.2016, 14:48   #12
cw82
Пользователь
 
Аватар для cw82
 
Регистрация: 14.10.2010
Сообщений: 52
По умолчанию

Блиинн, Ребята большое Вам спасибо. Заработало. Да, я после копирования в 11.cr начинал считывать его циклом и естественно по простоте душевной не закрывал... После Вашего совета, сделал CloseFile и теперь все четко!!! Еще раз спасибо.
Пользуясь случаем хочу спросить, нужно ли везде и при кажом случае указывать полный путь? Например в моей проге Bill.mdb будет лежать в папке с .exe , так как DataSource везде указан именно на папку с программой. Стоит ли мне прописать в процедуре сжатия полный путь к базе?
Код:
//Src:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source= ExtractFilePath(Application.ExeName)+"Bill.mdb"';
  //Dest:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=~$.mdb';
  Src:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Bill.mdb';
  Dest:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=~$.mdb';
Стоит ли заменить две строчки с комментариями на две нижние строчки?
cw82 вне форума Ответить с цитированием
Старый 08.11.2016, 15:01   #13
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Я бы рекомендовал полные пути для любых файлов. Относительный путь - нужно быть внимательным с рабочим каталогом, при старте проги принудительно установить, что бы не зависеть от способа вызова, при работе с диалогами правильно настраивать их опции, сторонние компоненты могут изменить, да и родные делфийские не исключено. Кто знает где собака зарыта. ExtractFilePath(Application.ExeName ) можно один раз засунуть в строковую переменную при старте и использовать ее при необходимости. Засунуть эту переменную например в private формы для проги с одной формой
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 08.11.2016 в 15:05.
Аватар вне форума Ответить с цитированием
Старый 08.11.2016, 17:09   #14
cw82
Пользователь
 
Аватар для cw82
 
Регистрация: 14.10.2010
Сообщений: 52
По умолчанию

Спасибо, так и сделаю.
cw82 вне форума Ответить с цитированием
Старый 09.11.2016, 02:45   #15
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,872
По умолчанию

Ну а я бы ещё посоветовал бы избавляться от файлов в каталоге с программой!
Ну ей-богу пора! Есть же "пользовательские папки" для хранения всего что угодно конкретному пользователю данного компьютера.
northener вне форума Ответить с цитированием
Старый 09.11.2016, 06:01   #16
cw82
Пользователь
 
Аватар для cw82
 
Регистрация: 14.10.2010
Сообщений: 52
По умолчанию

Цитата:
Сообщение от northener Посмотреть сообщение
Ну а я бы ещё посоветовал бы избавляться от файлов в каталоге с программой!
Ну ей-богу пора! Есть же "пользовательские папки" для хранения всего что угодно конкретному пользователю данного компьютера.
У меня стояла цель сделать программу максимально простую для пользователя. И в установке и в использовании. Программа аналогичная моей уже используется у нас на работе. Для ее функционирования необходим сервер + Oracle сервер + Oracle клиент. Человек, который написал эту прогу уже не работает... Вот и представьте, какого нам,простым пользователям, приходилось после переустановки Винды... А "серверу" уже очень много лет, вот - вот ему трындец придет... + У нас на работе постоянный мандраж по поводу информационной безопасности... Постоянные комиссии на предмет постороннего ПО и всяких левых файлов. Теперь услышал что комиссия идет - скинул прогу на флешку - удобно же.
Да, и самое главное - были большие сомнения в скорости обработки моей Access по сравнению с Oracle, но как показала практика- разница составляет доли секунды, что очень меня радует.
Всем спасибо, очень хороший форум здесь.

Последний раз редактировалось cw82; 09.11.2016 в 06:04. Причина: Дополнение
cw82 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кое какие не понятки с БД KenesK БД в Delphi 3 06.09.2016 11:24
не выполняется opendialog1.Execute virtuhay266 Общие вопросы Delphi 2 09.01.2011 00:06
не выполняется opendialog1.Execute virtuhay266 Помощь студентам 9 08.01.2011 22:12
OpenDialog1.Execute=true (error) zotox Помощь студентам 2 13.07.2009 16:30
КОМПОНЕНТ OpenDialog1 Anna_fors Компоненты Delphi 3 05.06.2009 22:00