Форум: "Прочее";
Текущий архив: 2014.03.23;
Скачать: [xml.tar.bz2];
ВнизВопрос по ассоциациям файлов, etc Найти похожие ветки
← →
брат Птибурдукова (2013-10-04 12:40) [0]Есть ли возможность для определённого ProgID в shell\open\command задать не только «"c:\program files\qwerty\my.exe" "%1"», а и рабочий каталог, в котором будет выполняться "my.exe"? Пока подпёр костылём «cmd /c cd "c:\program files\qwerty" && "c:\program files\qwerty\my.exe" "%1"», но костыль костылём и есть, и не устраивает моргающее консольное окошко.
← →
Dimka Maslov © (2013-10-04 12:43) [1]Если это your.exe, сам себе при запуске установи рабочий каталог. Если это not_your.exe, ты программист или где? Напиши прогу, которая будет породжать процесс с нужной рабочей папкой.
← →
брат Птибурдукова (2013-10-04 12:50) [2]
> Если это your.exe, сам себе при запуске установи рабочий
> каталог
Не могу. Давайте считать, что вопрос чисто по реестру, а не по программингу. Иначе вопрос был бы не в потрепалке.
> Если это not_your.exe, ты программист или где?
нет, не not_your.exe :-)
← →
Inovet © (2013-10-04 13:14) [3]Проверь так
start "Хоть что" /D "c:\program files\qwerty" "c:\program files\qwerty\my.exe"
Но окно консоли будет.
← →
Inovet © (2013-10-04 13:15) [4]параметр с подсунутым файлом надо ещё
← →
брат Птибурдукова (2013-10-04 13:19) [5]
> start
эта фигня работает только изнутри cmd, так что возвращаемся к [0] с дополнительным слоем костыльности :-)
← →
брат Птибурдукова (2013-10-04 13:32) [6]хух, тревога отменяется. у обычных юзеров проблемы быть не может, а то, что у разработчиков после весьма специфических действий приложилка падает, так это не проблема.
но вообще способ прописывания рабочего каталога хотелось бы узнать.
← →
Inovet © (2013-10-04 13:41) [7]> [5] брат Птибурдукова (04.10.13 13:19)
Может, дополнительный слой костылей уберётся ftype? Будет она там работать?
← →
брат Птибурдукова (2013-10-04 13:54) [8]
> уберётся ftype?
не. про ассоциации файлов я слукавил, речь о protocol handler.
> Будет она там работать?
Сомневаюсь. Там какая хрень: есть приложилка, ставящаяся инсталлятором в c:\aaa и использующая пакеты времени выполнения. у разработчика в c:\bbb\exe лежит экзешник, а в c:\bbb\bin — пакет. Прога c:\aaa\my.exe делает ShellExecute("myhandler:myparams"). На обработку myhandler: зарегистрирован c:\bbb\exe\my.exe, он запускается с рабочим каталогом c:\aaa и загружает, соответственно, c:\aaa\pkg.bpl, приложение падает. Костыль из [0] в общем-то оказался рабочим только по недоразумению, так как у разработчика прописан в путях c:\bbb\bin, а если бы в путях такого не было, то экзешник не мог бы запуститься в принципе, так как откуда взять пакет (да ещё и правильный) — неопределённо. Если же пакет лежит в одном каталоге в экзешником, как бывает у нормальных пользователей при штатной инсталляции, то описанная ситуация не возникнет, что бы ни было прописано в protocol handler.
← →
sniknik © (2013-10-04 16:37) [9]вместо bat файла делать vbs, мигающего окошка не будет. содержимое -
Set oShell = Wscript.CreateObject("WScript.Shell")
oShell.CurrentDirectory = "c:\program files\qwerty"
oShell.Run("my.exe")
← →
брат Птибурдукова (2013-10-04 17:24) [10]
> sniknik © (04.10.13 16:37) [9]
ну это, по сути, [1] пункт 2
← →
robt5 (2013-10-04 17:30) [11]рабочий каталог по жизни писался в ярлыке и назнач. заданиях, в реестре не наблюдалось
← →
Inovet © (2013-10-04 17:39) [12]Ну да, противоречие пожет быть - в ярлыке указали каталог, а он раз, и стал другим вдруг.
← →
брат Птибурдукова (2013-10-04 17:56) [13]а какое отношение ярлык (коих может быть энное количество) имеет к прописанному в реестре действию для некоего протокола? :-)
← →
Inovet © (2013-10-04 18:28) [14]> [13] брат Птибурдукова (04.10.13 17:56)
Я вообще говорю. Вот есть 2 ярлыка для одного объекта Моя_Крутая_Заставка.jpg с разными рабочими папками - c:\Природа, c:\Семья, зачем-то так надо. А при запуске вьювер оказывается в папке c:\Порно. Ну а вьювер настроен на показ слайд-шоу, конечно же. Или из командной строки то же самое.
← →
robt5 (2013-10-04 19:03) [15]
> брат Птибурдукова (04.10.13 17:56) [13]
ну ты спросил про решение "искаропки"
я написал где это вообще встречается
в винде нет решений для всех нелепых случаев, неумения писать программы :)))
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2014.03.23;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.002 c