![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
||||
|
||||
|
Задача не совсем для Дельфи, но все-же.
Необходимо записать файл на диск, так что-бы в его имени было видимо ударение, т.е. наклонная черточка над буквой. Решение однозначно есть, ибо сам такой файл видел и переименовывал, но вот какими путем сие достигнуто неясно. Например сохраните файл с именем ”Странно́е имя файла.txt” Последний раз редактировалось Страдалецъ, 31.01.2013 в 20:53. |
|
#2
|
||||
|
||||
|
str := 'выапв'#$3f+'sdg'
так получается? |
|
#3
|
||||
|
||||
|
Цитата:
![]() Ошибку ввода/вывода 123 будем иметь. |
|
#4
|
||||
|
||||
|
Что конкретно интересует-то? Ввод ударе́ния с клавиатуры -- зажать Alt и набрать 769 на цифровой клаве. Переименовать файл -- в любой программе, поддерживающей Unicode, -- в том же "Проводнике", не к ночи будет помянут.
Программно -- аналогично, только использовать WideString (UnicodeString или просто string в модных версиях Delphi) и W-версии системных функций: Код:
var
W: WideString;
begin
W := Application.ExeName;
if not MoveFileW(Pointer(W), Pointer(W + WideChar(769))) then
RaiseLastOSError;
end; |
|
#5
|
||||
|
||||
|
Цитата:
2. Пока проверить не могу. Проверьте у кого есть Дельфа с поддержкой юникода и отпишитесть о результатах. |
|
#6
|
||||
|
||||
|
Цитата:
Тогда то же самое можно проделать через командный файл? Гм. Тоже не получается. "Блокнот" ударения сохраняет, но только в формате Unicode, а оболочка такие bat-файлы не выполняет. Если кто-то сможет проделать это через установочный inf-файл и rundll32 advapi32, впору будет писать на "Хабр" в "Ненормальное программирование". ![]() Цитата:
|