|
|
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
Короче попытаюсь описать проблему. Есть программа напр. Ventafax www.ventafax.com У ней есть виртуальный принтер. Механизм "печати" следующий: 1) При нажатии на "печать" принтер создает в опред. месте файл thename.tif 2) Следом за этим (как-то из под драйвера) запускается след. конструкция: Код: plaintext Ну, вроде понятно объяснил, механизмов запуска somemodule.exe точно не понимаю, но че происходит вроде описал. При выполнении на "обычном компе" в "обычном режиме" проблем не возникает. Но если user (пусть он будет "Administrator") сидит в сеансе Remote Desktop и делает "печатать" то: 1) появляется thename.tif -срабатывает, т.е. файл появляется 2) а вот диалог с пользователем не появляется, т.е. somemodule.exe thename.tif не срабатывает. Оказывается, не совсем так. Если "удаленный комп" тоже запущен как "Administrator" в нормальном режиме, то вышеописанное окно диалога оказывается выскакивает, но выскакивает оно не в сеансе Remote Desktop, а на родном компе в нормальном сеансе , т.е. удаленный юзер его у себя не видит, никаких дальнейших действий сделать не может. Есть ли идеи какие? Можно ли это полечить? Нужна видимо мне подсказка со стороны понимающих в серверах (win2003), удаленных рабочих столах и разных аккаунтах/сессиях и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2011, 16:51 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
Дмитрий77Нужна видимо мне подсказка со стороны понимающих в серверах (win2003), удаленных рабочих столах и разных аккаунтах/сессиях и т.п. Вот где логика? Ты пришел на форум, в какую ветку? По выпечке пирогов и приготовлению борьща? Дмитрий77Есть ли идеи какие? Можно ли это полечить? х.м. а что именно полечить-то? 1. Непонимание того как работает сервер терминалов. 2. Не знание что есть "консольные" сессии а есть "терминальные", консольная сессия может быть только одна, либо когда... логинятся с пристегнутой к серваку клавиатуры, либо, когда запускают RDP-клиента с ключом /console. 3. Можно-ли окошко - я так и не понял какое окошко - вывести в сеанс пользовтеля... ну так надо читать документацию, способна ли программа вообще работать в терминальном режиме. Не все программы это умеют. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2011, 20:12 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
The Dim!Дмитрий77Нужна видимо мне подсказка со стороны понимающих в серверах (win2003), удаленных рабочих столах и разных аккаунтах/сессиях и т.п. Вот где логика? Ты пришел на форум, в какую ветку? По выпечке пирогов и приготовлению борьща? Я ж не спрашиваю "как мне исправить код чужой программы". Поэтому раздел "Windows" да еще со словом "Администрирование" думаю самый тот. И то что я хотя бы примерно понял как работает программа (т.е. как запускает то окно) думаю уже сильно больше чем ничего, и в документациях таких "тонкостей" как догадываетесь не пишут. Ну, да, я сервера никогда не администрировал, поэтому и не поленился написать-спросить у более опытных в данной области. Давайте все-таки по делу как бы. Чувствую что говорите дело. Исходя из моего описания и ваших пары строк The Dim!2. Не знание что есть "консольные" сессии а есть "терминальные", консольная сессия может быть только одна, либо когда... логинятся с пристегнутой к серваку клавиатуры, либо, когда запускают RDP-клиента с ключом /console. 3. Можно-ли окошко - я так и не понял какое окошко - вывести в сеанс пользовтеля...способна ли программа вообще работать в терминальном режиме. Не все программы это умеют.. рискну предположить что: 1) в терминальном режиме -наверно не умеет.. 2) принтер пытается выпустить окошко именно в "консольную" сессию. И если таковая есть (с пристегнутой к серваку клавиатуры) то именно там окошко и запускается, даже если команда "печать" была дана из терминальной сессии. Т.е. все что мне нужно: "консольная сессия ...когда запускают RDP-клиента с ключом /console" Вот это у меня почему-то не получается: Сервер:2003 Клиент:XP На XP: Программы -> Стандартные-> Подключение к удаленному рабочему столу Пробовал в команду ярлыка добавить /console Пробовал на вкладке Подключение->Параметры опцию: Не использовать шлюз служб терминалов Пробовал Log Off на сервере такое ощущение, что сессия у меня как была так и остается "терминальной". >консольная сессия может быть только одна Помнится когда-то делал RDP и при подключении с клиента "родная консольная сессия" на сервере закрывалась-темный экран. А вот сейчас этого не происходит... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2011, 21:41 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
The Dim!, Короче, за совет спасибо. А ключ ваш называется не /console а /admin XP(sp3)->Win2003(Windows Home Server) - все получилось. http://weblogs.asp.net/jeffwids/archive/2005/12/14/remote-desktop-to-console-session-on-windows-server-2003.aspx Пойду борщика чтоль поем...с пирогами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2011, 21:58 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
>Я ж не спрашиваю "как мне исправить код чужой программы". Я этого не предлагал. >рискну предположить что: >1) в терминальном режиме -наверно не умеет.. Ну а о чем тогда речь? >2) принтер пытается выпустить окошко именно в "консольную" сессию. И если таковая есть (с пристегнутой к серваку клавиатуры) >то именно там окошко и запускается, даже если команда "печать" была дана из терминальной сессии. Если это стандартный диалог печати, что все должно работать. Ну судя по описанию, это какая-то фича вентафакса.... >Т.е. все что мне нужно: "консольная сессия ...когда запускают RDP-клиента с ключом /console" Пуск - выполнить - mstsc /? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2011, 22:10 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
Дмитрий77The Dim!, Короче, за совет спасибо. А ключ ваш называется не /console а /admin Ключик не мой, а производителя. На разных версих клиента он то так то эдак называется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2011, 22:11 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
The Dim!Если это стандартный диалог печати, что все должно работать. Ну судя по описанию, это какая-то фича вентафакса....Вот-вот, стандартный или даже нестандартный диалог (возьмем тот же Microsoft Fax) запускается перед печатью в TIF, а здесь фича, и состоит она в том что сначала идет печать, а только потом диалог: что будем делать с напечатанным? И этот диалог идет "мимо" терминальной сессии. Не, помогли здорово этим советом. Я м.б. в других областях и варю но в фичах серверов и RDP как-то не очень. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2011, 22:40 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
Копнул глубже и понял, что проблема не исчерпана. Имеем: 1. прога установлена на XP (сервер RDP), проблемы не возникает, ибо XP всегда предоставляет консольную сессию 2. прога установлена на WIN2003 (сервер RDP), проблема решается через ключик /admin на RDP-клиенте но что вижу: 3. прога установлена на Vista/Win7(сервер RDP), проблема ВОЗНИКАЕТ и НЕ РЕШАЕТСЯ. Т.е. 1) Vista/Win7 явно предавляют "консольную сессию", ибо родная сессия(монитор пристыкованный к компу) закрывается. 2) С удаленного компа я прогу на рабочем столе не вижу 3) Не могу понять под каким аккаунтом она запускается (куда вылазит "окошко"), при возврате на "родной монитор" я окошка там тоже не обнаруживаю. В диспетчере задач тоже не могу узреть ничего намекающего на то что прога "где-то" запущена. 4) Но она точно запущена, ибо в указанном примере с Ventafax, вентафакс после RDP-попытки даже из родного сеанса уже не запускается и надо перегружать комп. (мотив незапуска очевиден - ventafax не позволяет запускать себя в двух экземплярах). Т.е. что крутить в этом случае на сервере(который виста или Win7)? или на RDP-клиенте? Есть конечно идея отключить UAC на вистообразном (пока не пробовал)...но не сторонник этого действия и не уверен что причина в этом... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2011, 18:45 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
Дмитрий77Есть конечно идея отключить UAC на вистообразном (пока не пробовал)... не уверен что причина в этом... попробовал, не помогло ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2011, 18:55 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
Это другая сессия со своим рабочим столом, поэтому ничего из другой сессии не видно. Рабочий стол это элемент безопасности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2011, 20:21 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
Anatoly Podgoretsky, эк, это я понимаю, что при RDP разные сессии могут быть. Только на WIN7/Vista даже в console mode окно не появляется в своей сессии, а в каких-либо других сессиях тоже никаких признаков процесса/окна и т.п. В случае терминальной сессии с win2003 в роли сервера, окно по крайней мере выскакивало в основную сессию (см. выше), а здесь(в Vista/7) оно как испарилось, и только по косвенным признакам (нельзя удалить exe-шник, нельзя запустить прогу-2-й экз. не дозволен) можно судить о том что оно "гдей-то" запущено. Мистика. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2011, 20:40 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
Дмитрий773) Не могу понять под каким аккаунтом она запускается (куда вылазит "окошко"), ...В диспетчере задач тоже не могу узреть ничего намекающего на то что прога "где-то" запущена... 4) Но она точно запущена, Нашлась. На галочку "показывать процессы других юзеров" внимание не обратил. Вистообразные сволочи через RDP ее under SYSTEM запускают. Т.е. по сути: 1) Прога-exe-шник (как писал ранее) запускается ИЗ-ПОД драйвера принтера, от чьего имени пашет принтер ХЗ, подозреваю под которым именем пашет, туда окно и бухает. и имеем: 2) При нормальной родной сессии (а также при консольной сессии на XP/2003) он бухает окно под текущего юзера (как задумано). 3) При консольной сессии через RDP на win7/Vista он бабахает окно в SYSTEM, от чего его и не видно. Проблема видимо, что надо заставить принтер фурычить через RDP от имени текущего юзера , а не SYSTEM. Есть идеи на эту тему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2011, 05:19 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
Случайно наткнулся на тему... Собсвенно бьюсь почти над той же проблеймой - заставить венту работать в терминале. Все верно - при отправке документа на принтер венты, программа запускается от имени SyStem. Пробовал даже службу спулера запускать не от системы, а от пользователя, результат тот же. ОС windows 2008 r2\ windows 7 Может будут идеи у кого, куда еще капнуть ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2011, 14:28 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
nomidМожет будут идеи у кого, куда еще капнуть? Программу переименуйте и сделайте bat-файл с командой RUNAS. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2011, 14:35 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
На сколько я понимаю, запуск программы инициализирует драйвер виртульаного принтера VentaFax, поэтому такой способ наврятли сработает. Скорей наоборот при переименовании исполняемого файла, он вообще перестанет запускаться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2011, 15:10 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
nomidНа сколько я понимаю, запуск программы инициализирует драйвер виртульаного принтера VentaFax, Неправильно понимаете. Наоборот, запуск драйвера виртульного принтера VentaFax (первично) инициализирует запуск программы (вторично), а именно ventafax.exe с параметром -имя УЖЕ напечатанного (в тек. сеансе печати) tif-файла. nomidСкорей наоборот при переименовании исполняемого файла, он вообще перестанет запускаться. Слово ventafax.exe зашито в "коде драйвера", т.е. если туда подсунуть другой exe-шник и обозвать ventafax.exe (ну любой tiff-viewer на скидку), то именно он и будет запускаться. Переименовать через hex слово ventafax.exe в любое другое конечно можно, ну сути проблемы это не поменяет. Якобы разработчики о проблеме в курсе. http://ventafax.ru/latest.html Выпуск 6.6.124.325 от 3 декабря 2010 г. 1. Скорректирована работа в режиме удаленного рабочего стола (RDP) в Windows 7 и Vista. Но это ни фига не решение: Для правильной работы программу надо запускать до печати на принтер VentaFax. Мне надо чтобы вента вообще не была запущена до того как запускается "печать". А проблема в том что она "в режиме удаленного рабочего стола (RDP) в Windows 7 и Vista" из-под принтера, не будучи запущенной "заранее", лезет под SYSTEM, в чем проблема и состоит. Собственно если есть желающие, проще скачать, установить на любую висту/7 , напечатать любой документ в normal и через RDP и посмотреть воочию. Вента системы не портит, это дело 5-10 минут. А вопрос как бы интересный, ну есественно к этому не склоняю. http://ventafax.ru/index.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2011, 18:26 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
nomidСлучайно наткнулся на тему... Собсвенно бьюсь почти над той же проблеймой - заставить венту работать в терминале. ...ОС windows 2008 r2\ windows 7 Сорри, не заметил сразу этого вашего сообщения. В терминале - боюсь никак. Даже если у вас ОС windows 2003, при печати из терминальной сессии окошко будет лезть в основную родную сессию, т.е. вы его под своим юзером с клавиатуры сервера там всегда найдете, это в первой части темы месяц назад уже обсуждалось. http://ventafax.ru/faq.html Имейте в виду, что наши продукты не предназначены для работы в терминальном окне серверных операционных систем. Проблема в том что оно в консольной сессии RDP, на Vista/win7/(не проверял, но думаю то же будет)windows 2008 +/-R2 работать не хочет и под System лезет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2011, 20:49 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
Вся соль в том, что временами оно работает, покрайней мере удалось добиться работы на minioffice, но это когда консоль неактивна. При активной консоли приложение венты соответсвенно запускается на ней. Причем работает из 1С, но не пашит из под офиса. На одном из форумов нашел еще вот такой бубен: "Вопрос решил, но не думаю, что очень красиво. Потому спрошу, а не решал ли кто эту задачу как-нить покрасивее? Как решил сам: Переименовал оригинальный Ventafax.exe в VentaFax1.exe, а вместо него положил свою маленькую программку, что сохраняет в файлик переданные ей параметры командной строки. А под юзером запускаю специальный Launcher, который ждет появления этого файлика с параметрами, читает его, удаляет, и запускает оригинальный Ventafax1.exe с нужными параметрами, но уже под пользователем. А VFDrv32.exe у меня работает как сервис с правами Local System (+Interactive)" З.Ы. Пока обходимся связкой HylaFAX Server - Client, но вента интереснее в плане более привычно отправкой факсов, а не в "автомате", то есть набрал номер, поговорил, послал факс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2011, 13:59 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
nomidВся соль в том, что временами оно работает, покрайней мере удалось добиться работы на minioffice, но это когда консоль неактивна. При активной консоли приложение венты соответсвенно запускается на ней. Причем работает из 1С, но не пашит из под офиса. Не знаю, я проверил на Win2008, все то же самое, лезет в System. Но это следовало ожидать. Это вряд ли зависит от версии венты, а этому механизму сто лет в обед и они его не меняли. nomidКак решил сам: Переименовал оригинальный Ventafax.exe в VentaFax1.exe, а вместо него положил свою маленькую программку, что сохраняет в файлик переданные ей параметры командной строки. А под юзером запускаю специальный Launcher, который ждет появления этого файлика с параметрами, читает его, удаляет, и запускает оригинальный Ventafax1.exe с нужными параметрами, но уже под пользователем. А VFDrv32.exe у меня работает как сервис с правами Local System (+Interactive)" Да эта идея понятна. Вы подменяете ventafax.exe на свою прогу, которая запускается с нужным параметром (имя файла), сохраняет этот параметр в файле и выходит. Т.к. ваш exe не имеет user interface то пофиг под каким аккаунтом/сессией он запускался. А у вас запущена другая прога (но уже под своей сессией/аккаунтом, хоть бы и в терминале) кот. по таймеру ждет этого файла(файл то отовсюду виден), и родной ventafax (c user интерфейсом) уже запускается где надо и "виден". >А под юзером запускаю специальный Launcher, который ждет появления этого файлика с параметрами, читает его, удаляет только у Вас может быть ситуация, когда на печать одновременно послали 2-3 файла. Вента на каждую печать создает tiff с уникальным именем, но... опытным путем установлено, что если интервал между печатями <0.5сек, то имена тифов совпадут и они друг друга перекроют. Т.е. при авто-печати из своей проги (printto) для надежности надо обеспечивать дельту хотя бы =1сек. С учетом этого факта (надо принять как данность), считая что имена тифов таки-разные, разумно делать так. 1.Ваша прога (кот. вместо ventafax.exe): запускаясь с параметрами 0001.tif 0002.tif создает файлы типа 0001.job 0002.job Т.е. имя файла job совпадает с именем файла tif, внутрь можете ничего не писать. Собственно вы можете писать имена тифов в таблицу БД, в текстовой файл, в меру вашей испорченности. 2.Ваша вторая прога (всегда запущена под вашим аккаунтом/сессией) по таймеру(да хоть 10 раз в секунду) смотрит файлы *.job или строчки в bd-txt, и при обнаружении запускает родную ventafax1.exe с параметром-имя файла, при этом удаляя файл .job или строчку в txt-bd. Идея в общем легко реализуема, разумна, и реализация не сложна если есть элементарные навыки программирования. Минус токо один: это "наворот" и не совсем соответствует хорошему тону в програмировании, хотя в данном случае вашей вины как программиста здесь нет и м.б. это единственное что тут можно сделать. Вы ж в код вента-драйвера не залезете (максимум можете поменять через hex имя exe-шника на ваш, как писал), да думаю и сами уважаемые venta-программисты не знают как это побороть. То что они предлагают: Для правильной работы программу надо запускать до печати на принтер VentaFax по сути и означает "дядю с таймером", кот. сидит с удочкой и ловит рыбку, пока она не уплыла под System. nomidПотому спрошу, а не решал ли кто эту задачу как-нить покрасивее? Покрасивше (и как изначально задумано) это когда рыбка по появлению сама зовет дядю и прыгает на крючок. Покрасивше это как раз и означает мой вопрос: как сделать так чтобы оно запускалось под CURRENT_USER? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2011, 17:08 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
Дмитрий77А у вас запущена другая прога (но уже под своей сессией/аккаунтом, хоть бы и в терминале) кот. по таймеру ждет этого файла(файл то отовсюду виден), и родной ventafax (c user интерфейсом) уже запускается где надо и "виден". по сути и означает "дядю с таймером", кот. сидит с удочкой и ловит рыбку, пока она не уплыла под System. nomidПотому спрошу, а не решал ли кто эту задачу как-нить покрасивее? Покрасивше (и как изначально задумано) это когда рыбка по появлению сама зовет дядю и прыгает на крючок. Покрасивше это как раз и означает мой вопрос: как сделать так чтобы оно запускалось под CURRENT_USER? Это еще кое-как годится для описанного мной случая, когда мы идем по RDP на Vista/WIN7 через консольное подключение. Но для терминальных сессий это не прокатит (в общем случае). Вот представьте, что у вас 20 терминальных сессий, сидят 20 дядь на стреме, каждый со своей удочкой. И где запустится ventafax1.exe ? Кто первый выловит? Это если удочки раньше не перепутаются. На рыбке ж не написано, кому она предназначена. Так что это ни фига не решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2011, 16:59 |
|
||
|
Удаленный рабочий стол, проблема с правильным функционированием нек. приложений.
|
|||
|---|---|---|---|
|
#18+
все это здорово и почти понятно, тока у меня нет навыков в програмировании и похоже мне придется пользоваться виндовским отправлятелем факсов который при прозвонке не умеет здороваться и просить принять факс )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2011, 12:34 |
|
||
|
|

start [/forum/topic.php?fid=26&msg=37182944&tid=1498173]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
157ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 470ms |

| 0 / 0 |
