Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.04.04;
Скачать: CL | DM;

Вниз

Права доступа на запись   Найти похожие ветки 

 
TRSteep ©   (2010-01-30 17:44) [0]

Здравствуйте мастера!

Пытаюсь проверить файл на существование и удалить его.
Все бы хорошо, но есть флешки с физической защитой записи и при попытке удалить множество файлов система каждый раз выдает окошко:
Запись на диск невозможна, так как он защищен от записи. Снимите защиту записи с тома такого то в устройстве таком то.

Как можно определить что запись невозможна без физической записи? (точнее чтобы это окно не появлялось)


 
KilkennyCat ©   (2010-01-30 17:58) [1]

Обратится к контроллеру флэшки, ибо это не виндовая фишка, а чисто ембеддевайсная.


 
TRSteep ©   (2010-01-30 18:27) [2]

ууу :)
к контроллерам мне пока рано лезть.

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

хм. сейчас попробовал удалить то, на что прав не хватает - он просто молчит - это хорошо :)

Спасибо!


 
KilkennyCat ©   (2010-01-30 21:46) [3]

Я неправ, чтение в VDS_DISK_FLAG состояния VDS_DF_READ_ONLY поможет.
http://msdn.microsoft.com/en-us/library/bb986750%28VS.85%29.aspx
Смущает только, что это похоже виста и выше.


 
KilkennyCat ©   (2010-01-30 21:49) [4]

Но я бы все равно сделал также [2], ибо столько этих контроллеров всяких, в том числе и полусамопальных, что надеятся на 100% соблюдение спецификации невозможно.


 
TRSteep ©   (2010-01-31 00:39) [5]


> ибо столько этих контроллеров всяких, в том числе и полусамопальных

У меня эта флешка вообще без названия :)
Зато защита от записи работает - сейчас почему то таких не видно даже.


 
Германн ©   (2010-01-31 01:32) [6]


> Зато защита от записи работает - сейчас почему то таких
> не видно даже.

Для облегчения проникновения на флешку гадов, имхо. :)


 
KilkennyCat ©   (2010-01-31 05:40) [7]

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


 
TRSteep ©   (2010-02-02 09:37) [8]

Что интересно программа для копирования TeraCopy,
при копировании на данную флешку - не копирует, но и ошибок никак не выводит....

Интересно она как копирует....


 
brother ©   (2010-02-02 10:03) [9]

> Интересно она как копирует....

пример молчаливого подавления исключений в действии ;)


 
TRSteep ©   (2010-02-02 10:28) [10]


> пример молчаливого подавления исключений в действии ;)

А можно пример в коде?


 
brother ©   (2010-02-02 10:30) [11]

ты Try ... except не знаешь?


 
TRSteep ©   (2010-02-02 10:40) [12]


> ты Try ... except не знаешь?


Конкретно
try
   for i:=0 to countfiles do
    deletefile(file);
  end;
expect
  exit;
end;

все равно выводит сообщение о том что защищен от записи


 
brother ©   (2010-02-02 11:01) [13]

> try
>   for i:=0 to countfiles do
>    deletefile(file);
>  end;
> expect
>  exit;
> end;

это перебор...


 
brother ©   (2010-02-02 11:25) [14]

видимо я погорячился.
http://www.delphimaster.ru/articles/errors/index.html#a8
не перехватывает эту ошибку, видимо она виндовая...


 
brother ©   (2010-02-02 11:26) [15]

но мое мнение неизменно: тупо скрывать ошибки - низя)


 
12 ©   (2010-02-02 11:40) [16]


> все равно выводит сообщение о том что защищен от записи


кто выводит? Владелец окна кто?


 
TRSteep ©   (2010-02-03 07:25) [17]

>но мое мнение неизменно: тупо скрывать ошибки - низя)
когда дело касается пользователей предприятия - лучше скрывать - иначе у них много вопросов :)

>кто выводит? Владелец окна кто?
Скажите как посмотреть - я скажу.
Но вроде сообщение от Windows


 
Anatoly Podgoretsky ©   (2010-02-03 09:13) [18]


> Интересно она как копирует....

Она не копирует, ты свое сообщение то посмотри.


 
Anatoly Podgoretsky ©   (2010-02-03 09:15) [19]


> когда дело касается пользователей предприятия - лучше скрывать
> - иначе у них много вопросов :)

Много вас скрывателей развелось, так и хочется встретить в темном переулке, что бы скрыто было.


 
brother ©   (2010-02-03 09:22) [20]

> когда дело касается пользователей предприятия - лучше скрывать
> - иначе у них много вопросов :)

Не надо скрывать, иначе вопросов будет еще больше! Простой пример:
Пользователь копирует файлы (твоей супер прогой) на защищенную от записи флешку, твоя прога упорно молчит об ошибке. Пользователь спокойно едет с этим, якобы скопированым файлом (проверять он не будет) в другой конец города, там открывает флешку и.... (далее эротическая фантазия ;) )


 
sniknik ©   (2010-02-03 09:44) [21]

> Много вас скрывателей развелось, так и хочется встретить в темном переулке, что бы скрыто было.
+1
только имхо есть кара получше... на пожизненную поддержку программ от других "скрывальщиков". пусть другу мозг парят, не вовлекая других.


 
Slym ©   (2010-02-03 12:04) [22]

 EMode:=SetErrorMode(SEM_FAILCRITICALERRORS);
 try

 finally
   SetErrorMode(EMode);
 end;


 
brother ©   (2010-02-03 12:09) [23]

блин, как я пропустил этот флаг
> SEM_FAILCRITICALERRORS

ведь смотрел же...


 
TRSteep ©   (2010-02-04 06:46) [24]


> Не надо скрывать, иначе вопросов будет еще больше! Простой
> пример:
>Пользователь копирует файлы....

Да ничего она не копирует, а удаляет...

Задача написать ПО, которое устанавливается как сервис, при вставке флешки  удаляет autorun.inf и производит некоторые действия от дальнейшего заражение автозапуска флешек (ну и еще некоторые служебные функции).

Только не надо разводить демогогию что автозапуск нужно отключать из политик - т.к. это комплекс мер.


> Slym ©

Спасибо!

PS. Написал пока как программу, теперь хочу на сервис переделать.
Пока из того что читал нашел только что сервис запускается делает какие функции (постоянно посылая статус что он жив) и выходит.
А как постоянно держать его включенным и следить за сообщениями: WM_DEVICECHANGE?


 
12 ©   (2010-02-04 08:46) [25]

на Королевстве Делфи поищи статью как программа легко может быть превращена в сервис



Страницы: 1 вся ветка

Текущий архив: 2010.04.04;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.01 c
2-1265185615
oleg1963lora
2010-02-03 11:26
2010.04.04
Поймать OnClick в классе


2-1264742431
Б
2010-01-29 08:20
2010.04.04
AlphaBlend без TransparentColor.


2-1265224360
Pavel
2010-02-03 22:12
2010.04.04
как отправить запросы модему


3-1237815167
victor
2009-03-23 16:32
2010.04.04
PickList


2-1264725996
bobby
2010-01-29 03:46
2010.04.04
Delphi и Com порт