Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.09.11;
Скачать: CL | DM;

Вниз

Запуск программы с параметром из ссылки   Найти похожие ветки 

 
Alexander_K ©   (2008-12-18 09:26) [0]

Доброе время суток!

Ситуация следующая:

У меня есть система оповещения, которая присылает по почте письма людям с заданиями. Сами задания можно посмотреть с помощью просмотрщика заданий - это программа написанная на делфи. Если ее запустить с параметром ID задания, то она запустится и автоматически покажет это задание...
Так вот вопрос: как мне организовать в письме ссылку так, чтобы при нажатии на нее запускалась эта программа с параметром?

вот пример:
file://c:\windows\notepad.exe
если такое засунуть в письмо, то при нажатии на эту ссылку нотепад запустится...
Но вот с параметром - затык, как ему еще в этой ссылке передать параметр?
Конструкция типа:
file://c:\windows\notepad.exe%20c:\1111.txt
не работает, говорит что не найден такой файл...


 
Slym ©   (2008-12-18 09:33) [1]

Alexander_K ©   (18.12.08 9:26)
задание оформить как "файл задания", прикладывать к письму и сделать ассоциацию по расширению файла на твой просмоторщик...


 
Alexander_K ©   (2008-12-18 09:41) [2]

Ну все ж хотелось бы ссылкой как-нибудь, потому что прикладывать файл конечно можно, ссылкой бы было красивее....


 
Медвежонок Пятачок ©   (2008-12-18 09:54) [3]

file:///.........


 
Alexander_K ©   (2008-12-18 10:05) [4]

Медвежонок Пятачок ©   (18.12.08 09:54) [3]

Дык я ж выше писал.... С тремя слешами тоже не получается... если чесно не понял разницу между двумя и тремя слешами


 
Slym ©   (2008-12-18 10:06) [5]

Alexander_K ©   (18.12.08 10:05) [4]
регить свой протокол, типа MyJobFile-  mjf://1234.id


 
Медвежонок Пятачок ©   (2008-12-18 10:10) [6]

у меня все нормально открывается по ссылке file:///


 
Alexander_K ©   (2008-12-18 10:11) [7]

Медвежонок Пятачок ©   (18.12.08 10:10) [6]

А можете привести всю строку целиком?


 
Медвежонок Пятачок ©   (2008-12-18 10:14) [8]

<a href="file:///C:\test.txt">test.txt</a>


 
Alexander_K ©   (2008-12-18 10:18) [9]

Медвежонок Пятачок ©   (18.12.08 10:14) [8]

Так без параметра получается, а с параметром нет
file:///c:\windows\notepad.exe c:\1111.txt
вот так не работает... говорит что файл c:\windows\notepad.exe c:\1111.txt не найден.... видимо всю строчку целиком за один файл считает


 
Медвежонок Пятачок ©   (2008-12-18 10:19) [10]

ну и зачем тебе нотепад запускать?

*.txt не ассоциирован ни с чем?


 
Alexander_K ©   (2008-12-18 10:20) [11]

Slym ©   (18.12.08 10:06) [5]

А как это сделать? В каком хоть направлении копать?


 
Alexander_K ©   (2008-12-18 10:22) [12]

Медвежонок Пятачок ©   (18.12.08 10:19) [10]

Да нотепад это пример, в общем случае так сказать

реально надо будет примерно так:

file:///c:\имя_программы.exe 12342

причем цифра - это не файл, это внутренний параметр программы


 
Slym ©   (2008-12-18 10:59) [13]

http://www.rsdn.ru/article/inet/pluggprotocol.xml


 
Slym ©   (2008-12-18 11:28) [14]

или в реестре
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\MyProto]
@="URL:MyProto"
"URL Protocol"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\MyProto\DefaultIcon]
@="c:\\paramstr.exe,0"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\MyProto\shell]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\MyProto\shell\open]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\MyProto\shell\open\command]
@="c:\\paramstr.exe %l"


и потом <a href="MyProto://SomeParam">SomeParam</a>


 
Alexander_K ©   (2008-12-18 11:34) [15]

Спасибо!


 
Slym ©   (2008-12-18 11:46) [16]

Alexander_K ©   (18.12.08 11:34) [15]
можно в HKEY_CLASSES_ROOT засунуть


 
Alexander_K ©   (2008-12-18 15:18) [17]

Огромное спасибо Slym, через реестр все получилось


 
Alexander_K ©   (2008-12-19 14:53) [18]

Slym ©   (18.12.08 11:28) [14]

А вот еще докучи проблемка:
Прописал я в реестре URL:MyProto, если в ворде делать гиперссылку то все работает отлично. Но вот проблема....
У нас в конторе используется вкачестве почтовика Майкрософт Оутлук 2003.

Оповещения я генерируются с помощью mailto (делается это для того чтобы человек, от чьего имени пойдет письмо смог его посмотреть, поредактировать и отправить сам):
чтото типа вот этого:
mailto:aaa@qqq.ru?subject=Вам письмо&body=Текст письма и URL:MyProto:24245

так вот проблема такая, когда создается письмо с помощью mailto, то Оутлук не подсвечивает URL:MyProto:24245 как ссылку, то есть она не кликабельна, соответственно если отправить такое письмо, то адресат не сможет кликнуть на ссылку чтобы запустилась программа.... А если в тексте ручками после URL:MyProto:24245 нажать энтер, то тогда ссылка подсвечивается и делается кликабельной....
Попробовал с помощью mailto формировать письмо в оутлук экспресс - все нормально работает, ссылка без каких либо проблем сразу делается кликабельной...
Пробовал детать так: <a href="URL:MyProto:24245">URL:MyProto:24245</a>,
но оутлук не воспринимает это в качестве ссылки, а вставляет это все как текст в письмо...

Может кто-нибудь поможет мне научить оутлук сразу распознавать URL:MyProto:24245 как ссылку чтобы она была кликабельная?


 
Slym ©   (2008-12-19 17:13) [19]

Alexander_K ©   (19.12.08 14:53) [18]
с какого подсвчивать будет? mailto идет как plain text  а не гипер текст


 
Alexander_K ©   (2008-12-22 13:49) [20]

Slym ©   (19.12.08 17:13) [19]

Ну http-шные ссылки же автоматически сразу подсвечивает...

Ну я уже нашел решение.... я теперь с оутлуком через OLE работаю, У оутлука есть свойство HTMLbody, и если ему туда подсунуть html-ку с заголовками и т.д., то тогда он ее отобразит по-нормальному, как html. И соответственно теперь я туда подсовываю <a href="URL:MyProto:24245">URL:MyProto:24245</a> и она подсвечивается и все работает...

Спасибо!


 
имя   (2009-05-13 12:24) [21]

Удалено модератором


 
имя   (2010-02-15 18:11) [22]

Удалено модератором



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

Текущий архив: 2011.09.11;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.008 c
15-1305963731
bss
2011-05-21 11:42
2011.09.11
Архив ТВ-программ


3-1263670520
dest81
2010-01-16 22:35
2011.09.11
Firebird set <параметр>= значение


2-1306139213
ixen
2011-05-23 12:26
2011.09.11
Отчет в MS Word


2-1306132376
Tirael
2011-05-23 10:32
2011.09.11
где ehlib (MemtableEh) хранит временные данные


3-1263764617
dars73
2010-01-18 00:43
2011.09.11
SQL запрос - где грабли?