Вниз
Скачать: CL | DM;

Русские имена каталогов и ParamStr   Найти похожие ветки 

← →
Sergei0   (2006-04-29 01:57) [0]

Подскажите пожалуйста не могу понять почему так выходит:

Зарегистрировал свой тип файла. При нажатии на файл  запускается моя программа. Файл может находиться где у годно в том числе и в русских директориях. И если файл в русской директории то ParamStr(1) возвращает абру-кадабру а мне надо сделать:
AssignFile(file, ParamStr(1));

Заранее благодарю!


← →
Германн ©   (2006-04-29 02:40) [1]

Кавычки не забыл поставить в реестре?


← →
tesseract ©   (2006-04-29 11:46) [2]


> абру-кадабру а мне надо сделать:

в oem кодировку переводить не пробовал?


← →
Sergei0   (2006-04-29 12:49) [3]


> Кавычки не забыл поставить в реестре?


регистрировал тип файла так:
ext: = "atm" ;
FileName: = Application.ExeName;

var
 reg: TRegistry;
begin
 reg:=TRegistry.Create;
 with reg do
 begin
   RootKey:=HKEY_CLASSES_ROOT;
   OpenKey("."+ext,True);
   WriteString("",ext+"file");
   CloseKey;
   CreateKey(ext+"file");
   OpenKey(ext+"file\DefaultIcon",True);
   WriteString("",FileName+",0");
   CloseKey;
   OpenKey(ext+"file\shell\open\command",True);
   WriteString("",FileName+" " %1"");
   CloseKey;
   Free;
 end;

Может что не так?


← →
Sergei0   (2006-04-29 12:50) [4]


> в oem кодировку переводить не пробовал?


Если можно поподробней!


← →
Экспериментатор   (2006-04-29 15:25) [5]

Вместо %1 надо %L
и тогда будет ОК


← →
tesseract ©   (2006-05-01 09:59) [6]


> Если можно поподробней!

По умолчанию в консоли установлен cp866 (для русских версия соотвественно). А ты работаешь в cp1251.
Соответсвенно F1 -> ANSItoOEM


← →
Anatoly Podgoretsky ©   (2006-05-01 12:19) [7]

CharToOEM


← →
Sergei0   (2006-05-02 11:36) [8]


> %L


Поменял в реестре %1 на %L и все стало нормально.
Всем ОГРОМНОЕ СПАСИБО!


← →
Styx_   (2006-05-02 16:39) [9]

А что за переменная %L и где бы найти описание других подобных фокусов? В частности, хотелось бы, чтобы передавалось короткое имя файла - а то приходится использовать .CMD, а в нём писать %~s1



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.026 c
4-1142584324
Turbid
2006-03-17 11:32
2006.06.11
Колесико над иконкой в трее


15-1147593844
Волька
2006-05-14 12:04
2006.06.11
Учёт компьютерной техники


2-1148540767
_RusLAN
2006-05-25 11:06
2006.06.11
Динамическое создание фреймов. Acces Violation;


2-1148210007
Мурзилка
2006-05-21 15:13
2006.06.11
размеры формы


2-1148705317
Urvin
2006-05-27 08:48
2006.06.11
Проверка наличия файла




   Наверх