Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3

Удалить файл после закрытия программы

06.12.2011, 18:07. Показов 3922. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!

Ребята подскажите по такому вопросу!

Создаю файл из объекта класса TStingList методом SaveToFile с расширеним csv, потом запускаю этот файл методом ShellExecute этот файл открывается такими программами Microsoft Office или Open Office.

Так вот вопрос такой

Можно ли програмно удалить файл после закрытия Microsoft Office или Open Office., которые его и открывали?


Заранее благодарен за ответ
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.12.2011, 18:07
Ответы с готовыми решениями:

Непонятные ошибки после закрытия программы
Периодически, после закрытия приложения у меня всплывают разные ошибки, к примеру: - class eidclosedsocket with message 'disconnected.'...

Сохранить данные в массиве после закрытия программы
Использую компонент AddFlow ActiveX для рисования графов http://www.lassalle.com/index.htm. Создаю массив узлов INode *node;. Добавляю узлы...

После закрытия программы c TChromium (dcef3) выскакивает AV
Здравствуйте. Вот такая проблема. Ставил TChromium на XE3. Прикол в том, что в аналогичном проекте в Delphi такой проблемы нет. ...

6
Прогер
 Аватар для Programmer.
632 / 263 / 15
Регистрация: 17.11.2010
Сообщений: 1,371
Записей в блоге: 2
06.12.2011, 18:22
Sasha,
Типа того:
C++
1
2
HWND hMain = FindWindow(L"Класс оффиса или программы с которой открываеш",L"Имя");
if(!hMain) DeleteFile(L"Путь к файлу");
Имя оффиса или программы токорый открывает файл, можно разглидеть с помошю WindowScanner или Spy++...
1
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
06.12.2011, 18:38  [ТС]
А если я к примеру не нароком свою программу закрою, которая сгенерировала этот файл, а файл останется открытым, то как тогда?

Добавлено через 2 минуты
Может быть можно как-то создать временный файл кто-нить с таким сталкивался?
0
 Аватар для Питекантроп
251 / 145 / 21
Регистрация: 14.06.2010
Сообщений: 340
06.12.2011, 19:00
1. Временные файлы можно создавать в папке windows/temp
2. Можно в событии закрытия формы прописывать закрытие Microsoft Office или Open Office и удаление файла (но тогда надо думать как не закрыть лишнее)
3. Можно кое-что почитать тут http://blog.f5soft.com/%D1%81%... 2-vista-7/
1
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
06.12.2011, 19:02
В фоновом режиме программу запускай если есть необходимость закрыть через какойто промежуток времени, я бы таймер поставил...
1
872 / 448 / 35
Регистрация: 25.10.2011
Сообщений: 910
06.12.2011, 21:54
Немного не стандартная постановка задачи...
Либо используй OnCloseQuery для блокировки случайных закрытий, установив CanClose = false, пока работает второе окно. Но в этом случае, нужно делать еще множество обработок от других завершений.
Либо, что по имхо логичней, при любой попытке закрыть твое приложение - рубить и убивать второе окно (офис или что у тебя там), а затем спокойно и без угрызений совести удалить файл.
1
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
06.12.2011, 22:02
Цитата Сообщение от Sasha Посмотреть сообщение
А если я к примеру не нароком свою программу закрою, которая сгенерировала этот файл, а файл останется открытым, то как тогда?
Советовали как бы FindWindow , таймер и CanClose = false - таймер тикает - пока находит Офис - программу закрыть нельзя, если офис не нашелся - удаляем файл и самозакрываемся. А в чем отличие "временного" файла от "невременного" ?
Действительно ВРЕМЕННЫЙ файл
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.12.2011, 22:02
Помогаю со студенческими работами здесь

Как настроить будильник, чтобы работал после закрытия программы?
Здравствуйте. Есть такая проблема. Сделал программу-будильник по этому мануалу - http://bcb-games.narod.ru/articles/chas_bud_k_bcb.htm. Там...

Удалить файл Word после закрытия пользователем приложения
Добрый всем день, столкнулся с проблемой. У меня есть отчет, который формируется из БД и после записывается обратно. Если отчет уже...

Нужно создать файл в который будут записываться данные с таймера, а после закрытия программы файл должен удаляться
Нужно создать временный файл, который программа сможет создавать сама на любом другом компьютере, где будет запущен данный exe-файл. В...

Файл полностью очищается после закрытия программы
Код: import json f = open("users.txt", 'rt') d = eval(f.read()) users = dict(d) with open("users.txt", 'w') as f: def...

Процесс программы висит в диспетчере задач даже после закрытия программы
Помогите пожайлуйста с решением этой проблемы. Сдача проекта уже скоро, а тут такое. Вобщем закрываю программу... она закрывается, но...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru