View previous topic :: View next topic |
Author |
Message |
Andrey_A
Joined: 10 Apr 2009 Posts: 394 Location: Сочи
|
(Separately) Posted: Thu Nov 12, 2009 03:40 Post subject: Ассоциация файлов в Windows |
|
|
Что нужно внести в реестр, чтобы тот или иной файл открывался нужной программой в проводнике?
В тотале я настроил ассоциации, но в проводнике проблема. У некоторых любителей тотала, как и у меня, есть полностью Портабельский, настроеный тотал.
Я, к примеру после установки системы просто копирую тотал и работаю, все файлы запускаются тем чем надо через тотал, но хотелоь, чтобы открыв проводник происходило тоже самое.
Я пытался сделать .reg файл, но у меня не получается... помогите чем можете...
И ещё в эту же тему, хотелось, чтобы значки в проводнике, отображались как мне надо (для этого тоже можно наверное создать .reg файл, один раз запустил и всё), а то получается в тотале привык к одному, открываешь проводник, а там ужас... |
|
Back to top |
|
|
CaptainFlint
Joined: 14 Dec 2004 Posts: 6151 Location: Москва
|
(Separately) Posted: Thu Nov 12, 2009 10:46 Post subject: |
|
|
Andrey_A
Вот самый простой REG-файл:
Code: | Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.ext]
@="extfile"
[HKEY_CLASSES_ROOT\extfile]
[HKEY_CLASSES_ROOT\extfile\DefaultIcon]
@="C:\\Program Files\\TotalCmd\\wcmicons.dll,26"
[HKEY_CLASSES_ROOT\extfile\shell]
[HKEY_CLASSES_ROOT\extfile\shell\open]
[HKEY_CLASSES_ROOT\extfile\shell\open\command]
@="\"C:\\Program Files\\Some Program\\program.exe\" \"%1\"" |
.ext — требуемое расширение;
extfile — имя типа (произвольное, но уникальное для ветки HKCR);
C:\Program Files\TotalCmd\wcmicons.dll,26 — значок файла;
C:\Program Files\Some Program\program.exe — программа, которой надо открывать файл.
PS: Это для WinXP. В Висте и, соответственно, Семёрке MS чего-то дикого наворотила с этими ассоциациями, так что там я не экспериментировал, и вышеприведённый вариант может не сработать. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
|
Andrey_A
Joined: 10 Apr 2009 Posts: 394 Location: Сочи
|
(Separately) Posted: Thu Nov 12, 2009 15:33 Post subject: |
|
|
Спасибо за подсказку, файлы стали открываться, тем чем надо, но значки стали появляться некорректно, ситуация такая
я создал три reg файла inc.reg, ini.reg, txt.reg - по описанному выше сценарию, все эти три расширения открываются в АкелПад, но значки у них разные, что и прописал в .reg... Нажимаю сначала на
inc.reg, потом ini.reg, затем txt.reg, все открываются, но значки у всех от .txt
Сначала не мог понять, но потом понял: какой последний .reg файл запускаешь, те значки и у всех файлов
Вопрос: Может что-то добавить в выше описаный сценарий, потому что расширение в нём прописано только один раз, в начале и всё, может ещё где-то прописать для точности |
|
Back to top |
|
|
Andrey_A
Joined: 10 Apr 2009 Posts: 394 Location: Сочи
|
(Separately) Posted: Thu Nov 12, 2009 16:47 Post subject: |
|
|
... через полчаса
По-моему разобрался, хотя и сомневаюсь, надо ли было менять extfile на (к примеру) txtfile - я везде заменил и получилось,
Code: | Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.txt]
@="txtfile"
[HKEY_CLASSES_ROOT\txtfile]
[HKEY_CLASSES_ROOT\txtfile\DefaultIcon]
@="C:\\Total Commander Image\\Files\\МуTotalIcons.dll,2"
[HKEY_CLASSES_ROOT\txtfile\shell]
[HKEY_CLASSES_ROOT\txtfile\shell\open]
[HKEY_CLASSES_ROOT\txtfile\shell\open\command]
@="\"C:\\Total Commander Image\\Plugins\\exe\\AkelPad\\AkelPad.exe\" \"%1\"" |
и файл открывается, и значок нужный
только вот гложет, корректно ли это, или всё правильно |
|
Back to top |
|
|
CaptainFlint
Joined: 14 Dec 2004 Posts: 6151 Location: Москва
|
(Separately) Posted: Thu Nov 12, 2009 19:42 Post subject: |
|
|
Andrey_A
Совершенно правильно. В реестре должны быть созданы два поддерева, первое из которых (HKCR\.txt) тривиально и состоит лишь из расширения файла и имени типа, а второе поддерево (HKCR\txtfile) полностью определяет этот тип, задавая и значок, и программу обработки. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
|
Andrey_A
Joined: 10 Apr 2009 Posts: 394 Location: Сочи
|
(Separately) Posted: Thu Nov 12, 2009 22:38 Post subject: |
|
|
Спасибо CaptainFlint! |
|
Back to top |
|
|
Andrey_A
Joined: 10 Apr 2009 Posts: 394 Location: Сочи
|
(Separately) Posted: Sun Nov 15, 2009 01:51 Post subject: |
|
|
Кстати, почвился ещё вопросик по теме:
можно ли в реестр посылать переменную %COMMANDER_PATH%
или реестр её не распознает? |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10280 Location: Россия, Саратов
|
(Separately) Posted: Sun Nov 15, 2009 11:36 Post subject: |
|
|
Andrey_A wrote: | или реестр её не распознает? |
Конечно, нет. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
CaptainFlint
Joined: 14 Dec 2004 Posts: 6151 Location: Москва
|
(Separately) Posted: Sun Nov 15, 2009 12:56 Post subject: |
|
|
Andrey_A wrote: | можно ли в реестр посылать переменную %COMMANDER_PATH%
или реестр её не распознает? |
Реестру-то по барабану, чего хранить. Вопрос правильно ставить так, распознает ли эту переменную программа, которая считает этот ключ. Но проблема в том, что переменная %COMMANDER_PATH% определена локально лишь для самого Тотала и порождённых им процессов, а Проводник к таковым не относится, так что этой переменной он попросту не увидит. И даже если явным образом добавить эту переменную глобально в систему, не факт что он вообще станет их разворачивать, это надо экспериментировать. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
|
Andrey_A
Joined: 10 Apr 2009 Posts: 394 Location: Сочи
|
(Separately) Posted: Tue Nov 17, 2009 22:43 Post subject: |
|
|
Quote: | И даже если явным образом добавить эту переменную глобально в систему |
Есть ли способ, чтобы Windows ВСЕГДА ассоциировал переменную
%COMMANDER_PATH%=c:\Total Commander
чтобы в командной строке по команде cmd /k set ВСЕГДА отображалось
COMMANDER_PATH=c:\Total Commander
т.к. я Тотал после установки системы просто копирую (а не устанавливаю), то думаю, что что-то необходимо внести в реестр чтобы переменная где-то в реестре зафиксировалась
При экспериментах в командной строке то появляется эта запись, то исчезает...!? |
|
Back to top |
|
|
CaptainFlint
Joined: 14 Dec 2004 Posts: 6151 Location: Москва
|
(Separately) Posted: Wed Nov 18, 2009 14:57 Post subject: |
|
|
Andrey_A wrote: | Есть ли способ, чтобы Windows ВСЕГДА ассоциировал переменную |
Да. Добавить её явным образом к переменным окружения (Панель управления — Система). С одним исключением: если запустить Тотал из другого каталога, то он переопределит эту переменную в своём окружении и в окружении всех дочерних процессов, и для них, соответственно, значение переменной будет не c:\Total Commander, а другим.
Andrey_A wrote: | При экспериментах в командной строке то появляется эта запись, то исчезает...!? |
Самопроизвольно появляться и исчезать она не может. Просто, как я уже сказал, переменная задаётся самим Тоталом в своём личном окружении. Если запускаешь cmd из Тотала, то переменная отнаследуется, если из винды, то не отнаследуется. Всё просто. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
|
Andrey_A
Joined: 10 Apr 2009 Posts: 394 Location: Сочи
|
(Separately) Posted: Thu Nov 19, 2009 02:05 Post subject: |
|
|
Quote: | Да. Добавить её явным образом к переменным окружения (Панель управления — Система) |
А можно поподробнее об этом, т.е. куда и где добавляют переменные... а может быть через реестр? |
|
Back to top |
|
|
Rodny
Joined: 24 Jan 2007 Posts: 949 Location: Могилёв, Беларусь
|
(Separately) Posted: Thu Nov 19, 2009 02:37 Post subject: |
|
|
Andrey_A
Про реестр не скажу, подробнее вот:
|
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Wed Jun 30, 2010 11:24 Post subject: |
|
|
А если задействовать скрипт, ассоциирующий файлы с программами, расположенными в среде %COMMANDER_PATH%.
Скрипт, имея в наличии конкретные:
- список расширений:
669,aac,aiff,amf,au,avr,caf,cda,far,flac,htk,iff,it,itz,kar,m4a,mat,mdz,mid,
midi,miz,mod,mp1,mp2,mp3,mtm,nst,ogg,okt,paf,ptm,pvf,raw,rf64,rmi,
s3m,s3z,sd2,sds,sf,stm,stz,ult,vlb,voc,w64,wav,wma,wve,xi,xm,xmz
- путь к программе: %COMMANDER_PATH%\SOFT\Winamp\winamp.exe
- значок: %COMMANDER_PATH%\SOFT\Winamp\winamp.exe,0
создает рег-файл, определив, меняет в нем пути с %COMMANDER_PATH% на полные и отправляет с подтверждением в реестр.
Собственно, реквест .
! | Avada: | Список расширений, в реальности занимаюший одну строку, разбил на три. Исключительно для удобства чтения. | _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|