Невозможно удалить файл в Windows CE 6.0

965
AlainD

Недавно я играл с файлами шрифтов в Windows CE 6.0 (разработка с использованием C # Compact-Framework v2.0 и AddFontResource). После добавления «Angsana New» (для тайского языка) я обнаружил, что загруженный файл Angsana.ttf не может быть удален! Я перепробовал все, что могу придумать, в том числе:

* Re-running my program and using RemoveFontResource * Changing to another language that uses an in-built font or another I supply * Renamed the file (which is allowed, why? * Manually checking the registry to see if "Angsana" is referenced anywhere * Power down the mobile device and back up again * Loaded the Windows CE command prompt and used the command: del /f Angsana.ttf 

Любопытно, что я могу свободно переименовать файл шрифта из «Angsana.ttf» в «Angsana_2.ttf» ... но все равно не удалить его. Еще интереснее то, что если я скопирую Angsana.ttf (чтобы создать «копию Angsana.ttf»), то копия также не может быть удалена! Это сильный намек на то, что какой-то атрибут или системный процесс блокирует файл (и его копии) ... но что?

Сообщение об ошибке от Explorer:

"Cannot delete 'Angsana.ttf': There has been a sharing violation. The source or destination may be in use." 

Из командной строки ошибка просто:

"Cannot remove Angsana.ttf" 

Что, черт возьми, происходит??

ОБНОВЛЕНИЕ: Файл «Angsana.ttf» находится в папке «Шрифты». Если я создаю новую папку с именем «Fred» на том же уровне, что и «Fonts», я могу вырезать и вставить файл TTF в новую папку. Теперь новую папку «Fred» можно удалить, включая содержащийся в ней файл TTF (или, если это не удастся, цикл питания позволяет удалить всю папку)!

Похоже, мое мобильное устройство при загрузке помещает какую-то «блокировку» (это правильная терминология?) В папку «Шрифты».

1

0 ответов на вопрос