
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[216.73.216.193] |
![]() |
|
Страницы: (2) [1] 2 все ( Перейти к последнему сообщению ) |
Сообщ.
#1
,
|
|
|
Подскажите с таким вопросом!
Как проверит открыт файл или нет и если открыт, то закрыть его. Если нет то далее идет работа с файлом. Самое главное как проверить и закрыть файл. Спасибо!!!! |
Сообщ.
#2
,
|
|
|
Не понял! Ты что, запускаешь свою программу и хочешь знать, открыт ли файл, который она будет использовать?
|
Сообщ.
#3
,
|
|
|
Да просто там идет экспорт данных в ексель.
Запустят программы откроют этот файл, забудут закрыть его просто и снова нажмут экспорт. программа выдаст ошибку типа "Ресурс занят". Хотелось бы чтоб проста закрыла(сама программа) файл и произвела экспорт и открыла этот файл екселя. Программа делает все экспорт, открытие. Хотелось бы добавить и это |
Сообщ.
#4
,
|
|
|
А кнопку "Экспорт" задисаблить религия не позволяет? У вас там что - каждые 5 минут экспортируют?
|
Сообщ.
#5
,
|
|
|
Цитата Сан Иваныч @ А кнопку "Экспорт" задисаблить религия не позволяет? По какой причине она задизаблена? Из-за того, что эксель запущен? Лучше имя файла экспорта поменять. Решить задачу можно только закрыв открытый файл в экселе или сам эксель. |
Сообщ.
#6
,
|
|
|
Имя конечно можно поменять, а если все в один файл надо скидывать????
как тут поступить, потом руками туда добавлять лишняя работа будет только. Лучше варианта чем закрыть файла я не вижу. Помогите плиз хоть на толкните как... Спасибо |
Сообщ.
#7
,
|
|
|
Цитата AlikV @ Как проверит открыт файл или нет и если открыт, то закрыть его. Цитата AlikV @ программа выдаст ошибку типа "Ресурс занят". AlikV наличие ошибки и является признаком, что файл открыт. ![]() ![]() |
Сообщ.
#8
,
|
|
|
Компонент использую QExport3XLS.
Вызываю открытие нажатием кнопки. ![]() ![]() QExport3XLS1.Execute; там сам компонент большее делает за меня, чем я кода описываю |
Сообщ.
#9
,
|
|
|
а если закрыть файл который не открыт? критической же ошибки не будет ? вот ты и закрывай его перед тем как туда что-то дописывать!
|
Сообщ.
#10
,
|
|
|
[б]нащок78[/б]
Извини не понял как это Цитата а если закрыть файл который не открыт? ![]() Добавлено nawok78(тут подвела кнопоска одна СОРРИ) Извини не понял как это Цитата Извини не понял как это ![]() |
Сообщ.
#11
,
|
|
|
Цитата AlikV @ Извини не понял как это а как ты собираешься программно закрывать Ехель? найти Эксель и закрыть! есть CreateOleObject - может и FindOleObject есть? я всего лишь идею подсказал а не пути реализации... 1 раз всего лишь с ним работал... там я создаю Оле-объект затем его уничтожаю... |
Сообщ.
#12
,
|
|
|
Походу эта задача не разрешима.
Так подумал если файл был изменен и не сохранен. То после закрытия может и не спросить сохранить или нет. Просто возьмет и убъет всю инфу. Мда....... ![]() Че делать ![]() |
Сообщ.
#13
,
|
|
|
Перед экспортом проверять открыт файл или нет. Если открыт, то тогда выводить сообщение, тчо типа файл открыт, закройте его...
Только так ... |
Сообщ.
#14
,
|
|
|
Да Marriage тоже идея хорошо.
Подскажи тогда как проверить его открытие. Никогда не сталкивался с таким Спасибо |
Сообщ.
#15
,
|
|
|
Цитата medved_68 @ AlikV наличие ошибки и является признаком, что файл открыт. ![]() ![]() ![]() ![]() procedure TForm1.Button1Click(Sender: TObject); var CurrentFile:integer; begin CurrentFile := FileOpen('J:\ШПОРА ГОТОВАЯ.doc', fmOpenReadWrite); If CurrentFile < 0 then Begin ShowMEssage('Не могу открыть файл'); exit; End; FileClose(CurrentFile); end; |