Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
HPB
25 / 25 / 4
Регистрация: 20.07.2012
Сообщений: 399
Записей в блоге: 1
1

Проверка файла на его состояние (занят или нет)

14.08.2012, 08:09. Просмотров 2073. Ответов 3
Метки нет (Все метки)

Добрый день прошу не удалять тему ...может здесь мне и в правду помогут

столкнулся с бедой даже и не знаю как теперь решить

вопщем мне нужно заменить (занятый файл) и затем при закрытие формы удалить файл(также занятый)
пробовал писать bat команды cmd ,вся проблема в том что файл имеет разширения *.DLL.. и он подгружается в нужный процесс..

вопрос можно ли удалить файл после подгрузки..?ъ
или его нужно выгружать каким то образом?


если это не возможно предложите способ...

я думал что можно было так ...

качаю файл подгружаю в процесс затем переименовываю и затем проверяю каким то образом занят файл или нет....но таких способ может оказаться что файлов там накопяться огого как много.. т.к файл может не удалиться

может всё дело в моём коде подгрузки *DLL?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.08.2012, 08:09
Ответы с готовыми решениями:

Проверка занят или нет ник в базе данных
private void button1_Click(object sender, EventArgs e) { string name =...

Проверка конец файла или нет
Подскажите пожалуйста если читаю числа типа int и не знаю когда конец файла как это...

Судя по свойствам, диск D почти весь занят, а когда его открываешь, ничего нет (Посоветуйте как разобраться!)
захожу в мой компьютер а диск Д почти весь занят... открываю его ничего нет.... Это как...

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

Как определить состояние формы (загружена или нет)?
Как можно определить загружена форма или нет?

3
freeba
Неадекват
1306 / 1100 / 210
Регистрация: 02.04.2010
Сообщений: 2,544
Записей в блоге: 2
Завершенные тесты: 2
14.08.2012, 09:10 2
Берем Handle, с его помощью закрываем все дискрипторы связанные с файлом на диске. Удаляем файл штатными средствами. Но вообще лучше ручками выгрузить dll'ку и удалить ее как обычный файл.

PS: Грязные хаки такие грязные...
0
HPB
25 / 25 / 4
Регистрация: 20.07.2012
Сообщений: 399
Записей в блоге: 1
14.08.2012, 13:32  [ТС] 3
каким образом можно выгружать? ведь нужно посредством как загрузил так и выгрузил

Handle, работает на x64 XP как быть с 32 биткой!

Добавлено через 1 минуту
Цитата Сообщение от freeba Посмотреть сообщение
Берем Handle, с его помощью закрываем все дискрипторы связанные с файлом на диске. Удаляем файл штатными средствами. Но вообще лучше ручками выгрузить dll'ку и удалить ее как обычный файл.

PS: Грязные хаки такие грязные...
я вас не понимаю на счёт PS

Добавлено через 20 минут
или подскажите как сделать так...качаем опять же DLL делаем копию и помещаем её в "верменную папку" и уже копию используем ...а ту что скачалась удалить ...а та копия что во временной папке ведь удалиться вместе с папкой?

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
private string[] ReadFileAnyway(string fileName)
        {
            string[] fileLines = null;
            try
            {
                fileLines = File.ReadAllLines(fileName);
            }
            catch 
            {
                File.Copy(fileName, "_tempSharingLog.txt", true);
                fileLines = File.ReadAllLines("_tempSharingLog.txt");
                File.Delete("_tempSharingLog.txt");
            }
            return fileLines;
        }
Добавлено через 26 минут
что то лучше этого можете предложить?

Добавлено через 3 часа 27 минут
почему вы не хотите помочь?
0
freeba
Неадекват
1306 / 1100 / 210
Регистрация: 02.04.2010
Сообщений: 2,544
Записей в блоге: 2
Завершенные тесты: 2
14.08.2012, 20:13 4
Цитата Сообщение от HPB Посмотреть сообщение
Handle, работает на x64 XP как быть с 32 биткой!
Хэндл работает на всех x86/64 системах. исключение win7 x64. Если хэндл не нравиться можно воспользоваться сторонними решениями или заюзать WinAPI (CloseHandle - никто не отменял)
Цитата Сообщение от HPB Посмотреть сообщение
почему вы не хотите помочь?
1. В рамках заданного вопроса ответ дан. ("Как удалить занятый кем-то файл")
2. Для более подробного вникания в суть проблемы недостаточно информации.
3. Вы не понимаете PS
0
14.08.2012, 20:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.08.2012, 20:13

Как сохранить состояние (стоит галочка или нет) в CheckBox?
Здравствуйте. Необходимо, чтобы при очередном запуске проги сохранялось состояние CheckBox. т.е....

Проверить наличие файла в директории программы, и, если его нет, создать его
Здравствуйте уважаемые форумчане. Сразу перейду к сути- рядом с основной программой есть файл...

Проверка занят ли домен
Подскажите где можно проверить свободен или занят домен. Что бы сразу по всем зонам, в том числе и...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru