Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Autorun
Goto page Previous  1, 2, 3 ... 19, 20, 21 ... 130, 131, 132  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Mon Jul 04, 2011 21:04    Post subject: Reply with quote

Loopback wrote:
http://forum.wincmd.ru/viewpost.php?p=74978
>>>
Flasher wrote:
С батником что-то не очень, для меня во всяком случае. Подожду добавки ключа. К тому же это будет более мягкий и юзабильный метод.

Loopback wrote:
Достаточно процессу упасть - и в реестре остается мусор.
Но с LoadLibrary при падении таких проблем нет. Значит и тут этот момент как-то предусмотреть можно?
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1274

Post (Separately) Posted: Tue Jul 05, 2011 13:17    Post subject: Reply with quote

Flasher wrote:
Но с LoadLibrary при падении таких проблем нет. Значит и тут этот момент как-то предусмотреть можно?

Вроде помнится, что система должна пытаться выгружать загруженные библиотеки в случае падения основного потока (не проверял). В этом случае, если делать операции разрегистрации при выгрузке библиотеки, то наверно всё должно разрегистрироваться нормально - если, конечно, не возникнет с сбой в самом коде библиотеки.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jul 05, 2011 13:21    Post subject: Reply with quote

Loopback wrote:
В этом случае, если делать операции разрегистрации при выгрузке библиотеки, то наверно всё должно разрегистрироваться нормально
Очень надеюсь, что так оно и будет. Smile

 !  Avada:
Последующий оффтоп отделён сюда.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Aug 11, 2011 14:57    Post subject: Reply with quote

Quote:
Также, плагин имеет несколько предопределенных переменных (констант):
%AUTORUN_OSARCH% - архитектура ОС, где работает тотал. Может быть 32 или 64.
%AUTORUN_OSVERSION% - версия ОС где работает тотал. Может принимать значения:

WIN_UNKNOWN, WIN_95, WIN_98, WIN_ME, WIN_NT, WIN_2000, WIN_XP, WIN_2003, WIN_VISTA, WIN_2008, WIN_7, WIN_2008R2

%AUTORUN_DESKTOPWIDTH% - ширина экрана.
%AUTORUN_DESKTOPHEIGHT% - высота экрана.
%AUTORUN_DESKTOPDEPTH% - глубина цвета экрана.
%AUTORUN_TCHANDLE% - хэндл окна Total Commander (для использования в скриптах).
Создал папку "32". Вызываю cd C:\Тест\%AUTORUN_OSARCH% - ничего не происходит. То же самое с папкой "WIN_7" и %AUTORUN_OSVERSION%. Где, и как эти переменные можно использовать, куда их можно прописывать и т.п.? Как использовать в скриптах, которые сами их распознать не смогут, ибо они - не переменные окружения?

Win 7 x86, версия - 1.4.9.6.
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1274

Post (Separately) Posted: Fri Aug 12, 2011 15:08    Post subject: Reply with quote

Flasher
Просто создать переменную окружения с текстом внутренней переменной, например:

Code:
SetEnv /EV OSARCH %AUTORUN_OSARCH%
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri Aug 12, 2011 15:11    Post subject: Reply with quote

Loopback
Хм. Я вот с такой строкой сперва пробовал:
Code:
SetEnv /A /EV %AUTORUN_OSARCH% %AUTORUN_OSARCH%

Должна по идее создаться переменная %32% со значением 32.

А в чём тогда предопределённость?
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1274

Post (Separately) Posted: Fri Aug 12, 2011 15:29    Post subject: Reply with quote

Ну, переменные же создаются в плагине изначально, без участия пользователя - значит, предопределенные. Более того, это по сути константы, т.е. пользователь их не может изменить. Я специально не стал их делать переменными окружения, так как более интересно их использовать в условиях, а не напрямую. Да и большинство может просто не понадобиться.

И да, при создании переменных использовать проценты в имени не нужно (добавлю в документацию).

Quote:
Должна по идее создаться переменная %32% со значением 32.

Нет, имя переменной должно быть простой строкой, без других переменных.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri Aug 12, 2011 15:37    Post subject: Reply with quote

Loopback wrote:
Я специально не стал их делать переменными окружения, так как более интересно их использовать в условиях, а не напрямую.
Вот тут я бы, конечно, поспорил. Напрямую куда больший КПД на выходе имеем (скрипты, сценарии, переходы в рядом лежащие папки).
Loopback wrote:
И да, при создании переменных использовать проценты в имени не нужно (добавлю в документацию).
Это я уже понял. Хотя ограничение данное действительно в документации не помешает описать.
Loopback wrote:
Нет, имя переменной должно быть простой строкой, без других переменных.
Это системная завязка или чисто плагиновая?
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Fri Aug 12, 2011 16:39    Post subject: Reply with quote

Flasher wrote:
Вот тут я бы, конечно, поспорил. Напрямую куда больший КПД на выходе имеем (скрипты, сценарии, переходы в рядом лежащие папки).

Но ведь можно определить реальную переменную, запихав в неё значение виртуальнойSmile
Flasher wrote:
Это системная завязка или чисто плагиновая?

Система сама вообще не раскрывает переменные окружения без пинка) а объявлять переменную, используя в имени другие переменные - вообще нонсенс.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri Aug 12, 2011 16:43    Post subject: Reply with quote

MVV wrote:
можно определить реальную переменную, запихав в неё значение виртуальной
С этим мы уже разобрались. Не всегда полезно в Autorun прописывать установку кучи переменных, по мне лучше бы переменные были предопределены и как переменные среды.
MVV wrote:
объявлять переменную, используя в имени другие переменные - вообще нонсенс
А конкретней?
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1274

Post (Separately) Posted: Mon Aug 15, 2011 10:28    Post subject: Reply with quote

Flasher wrote:
Это системная завязка или чисто плагиновая?

Плагиновая, но как верно заметил MVV - смысла в этом мало. Зачем делать переменную с неопределенным именем, скажем 32 или 64, и потом из скрипта проверять ее существование, когда можно сделать одну явно заданную переменную и с тем же успехом проверить ее содержимое?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Mon Aug 15, 2011 15:52    Post subject: Reply with quote

Loopback
Для пробы. Я же написал. И всё-таки пожелание включить предопределённые переменные среды остаётся в силе.
Back to top
View user's profile Send private message
HA3APET



Joined: 22 Feb 2010
Posts: 151

Post (Separately) Posted: Fri Sep 09, 2011 03:18    Post subject: Reply with quote

Есть
\Prog\RBTray\32\RBTray.exe
\Prog\RBTray\64\RBTray.exe
Как прописать ShellExec в зависимости от разрядности ОС?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri Sep 09, 2011 04:16    Post subject: Reply with quote

HA3APET
А есть проблема при указании %AUTORUN_OSARCH% вместо 32/64 ?
Back to top
View user's profile Send private message
HA3APET



Joined: 22 Feb 2010
Posts: 151

Post (Separately) Posted: Fri Sep 09, 2011 04:39    Post subject: Reply with quote

Flasher
Так и пробовал - не заработало, но оказывается просто ошибся в пути, всё работает. Вопрос снят.

Добавлено спустя 13 минут:

Очень бы хотелось ключик для ShellExec, что бы если программа уже запущена (висит в процессах), она не запускалась.
Можно конечно это решить батником, но средствами программы было бы намного удобнее.
По идеи такую возможность должны поддерживать сами программы, но далеко не у всех это есть.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3 ... 19, 20, 21 ... 130, 131, 132  Next
Page 20 of 132

 
Jump to:  
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