|
|
|
|
#1 |
|
Участник
|
[/quote]
Спасибо! Не додумался полазить по fin.stx. В свое время придумал просто монструозный способ запуска навика в RDP по ссылке из писем (механизм утверждения) с использованием AutoIt и запуском навика с параметрами изнутри навика без параметров... В общем, работало, но это было крайне нетривиальное костыльное решение, которое даже стыдно показывать. [/quote] Вот все таки как все похоже. Я до этого способа делал то же самое. На AutoIT написал утилиту которая по параметру URL создавала текстовой файлик с этим URL. Зарегал протокол в реестре а-ля navision:// где прописал эту утилиту. Она также создавала в локальном каталоге юзера RDP файлик и запускала его. В 1 кодюъните прописал проверку наличия файлика с URL в локальном каталоге и если он есть отрывал на CompanyOpen.Далее этот файлик грохался в этом же кодъюните. Таким образом работали гиперссылки на RDP. Но чето мне этот способ не очень нравился, тем более надо было бы всем ставить эту утилиту, вносить изменения в реестр у пользователей.
__________________
Want to believe... |
|
|
|
|
#2 |
|
Участник
|
Цитата:
Сообщение от DA_NEAL
Вот все таки как все похоже.
Я до этого способа делал то же самое. На AutoIT написал утилиту которая по параметру URL создавала текстовой файлик с этим URL. Зарегал протокол в реестре а-ля navision:// где прописал эту утилиту. Она также создавала в локальном каталоге юзера RDP файлик и запускала его. В 1 кодюъните прописал проверку наличия файлика с URL в локальном каталоге и если он есть отрывал на CompanyOpen.Далее этот файлик грохался в этом же кодъюните. Таким образом работали гиперссылки на RDP. Но чето мне этот способ не очень нравился, тем более надо было бы всем ставить эту утилиту, вносить изменения в реестр у пользователей. не поленился нашел свой код в LogInStart Код: AutostartShortcutSetup.SETRANGE(Enabled, TRUE);
IF AutostartShortcutSetup.FINDFIRST THEN
BEGIN
ShortcutNameWithPath:=STRSUBSTNO(AutostartShortcutSetup.Path, USERID);
IF EXISTS(ShortcutNameWithPath) THEN
BEGIN
ShortcutToStart.TEXTMODE(TRUE);
ShortcutToStart.OPEN(ShortcutNameWithPath);
StartProgram := (ShortcutToStart.READ(Hlink)>0);
ShortcutToStart.CLOSE;
ERASE(ShortcutNameWithPath);
IF StartProgram THEN
IF UPPERCASE(Text50000)=UPPERCASE(COPYSTR(Hlink, 1, STRLEN(Text50000))) THEN
HYPERLINK(Hlink);
END;
END;Проверки тут параноидальные сделаны были - формально можно было запустить на терминальном сервере что-угодно, поэтому проверял, что это именно ссылка в стиле NAV :-) Т.е. мое решение, кажется, вообще не отличается от вашего :-)) |
|
|
|
|
#3 |
|
Участник
|
Ага почти тоже самое, только я запускал RDP приложение с примапленными локальными дисками юзера и файлик искал соответственно в локальной папке юзера по пути \\tsclient\...
а так то одна логика. Но имхо утопичный вариант, слишком все нахлобучено .
__________________
Want to believe... |
|
|