Що потрібно знати про публікації Провідника Windows на XenApp 6.x

Доброго часу доби, шановні читачі. Знову з вами російський голос технічної підтримки Citrix. Наближається кінець підтримки XenApp 4.5 / 5 for Windows 2003 (30.09.2012) і XenApp 5 for Windows 2008 (15.01.2013) і все більше і більше наших клієнтів або вже перейшли XenApp 6.0, або зараз переходять \ збираються переходити на 6.5 під Windows 2008 R2. Змін багато і не тільки у нас. Про один з них від Microsoft, і його наслідки я докладніше розповім сьогодні.

Починаючи з Windows Vista, а точніше з появою IE7 і захищеного режиму (Protected Mode), Microsoft відокремила IE від оболонки (shell) ОС (при цьому інтеграція залишилася найтіснішому), докладніше тут . Це призвело до старіння декількох ключів (докладніше тут ), В тому числі -e, який дозволяв IE працювати в режимі Провідника і публікувати його з конкретними дисками, папками та посиланнями, докладніше тут . Якщо коротко, то це призвело до того що при запуску Explorer.exe з командного рядка, вихідний процес Explorer.exe завершується і новий процес Explorer.exe запускається як DCOM процес в контексті сервісу DCOM Launcher. Якщо Explorer.exe запущений без параметрів, то запуститься десктоп (оболонка) замість оглядача файлів. Про наслідки можна почитати тут і тут .

Мені довелося взяти участь в розслідуванні двох проблем:

  1. Провідник не запускається. Сесія стартує, з'являється діалогове вікно, але програма не з'являється, при цьому сесія видно в консолі при старті програми в статусі "підключається", потім як "відключена", а потім зникає. Рішення цієї проблеми тут .
  2. Зникнення опублікованого провідника з консолі. Тобто сесія видно, статус її "активна", але опублікованого додатка в ній за допомогою консолі не видно (період видимості при старті сесії в кілька секунд). Рішення два: публікація через пакетний файл командного рядка, що містить всього дві команди Explorer.exe і Pause або іспользваніе треьтестороннего ПО, наприклад explorer ++. У першому випадку, командний рядок запустить вихідний процес Explorer.exe, який закриється сам і запуститься новий процес Explorer.exe під DCOM, як було описано вище. Хитрість в тому, що вікно командного рядка буде як і раніше відкрито і воно ж є опублікованими в консолі екземпляром додатком. Недолік тут в тому, що вікно командного рядка буде видно користувачеві і чекатиме завершення будь-якою клавішею.
Доброго часу доби, шановні читачі Alexey Kutuzov

Доброго времени суток, Спільнота.

Мене звуть Олексій Кутузов, я працюю менеджером з технічного консультування замовників (TRM) в Московському офісі Citrix. Більше про TRM ви можете дізнатися тут http://www.citrix.com/lang/English/lp/lp_2317286.asp в розділі Add-on Services.

Я працюю в Citrix з травня 2009. До Citrix майже 5 років я працював в одному з топ-інтеграторів Росії, спеціалізуючись на інфраструктурних проектах на базі технологій Microsoft і Citrix.

Бажаю вам приємного читання.

З повагою,

Олексій.

Олексій Кутузов

Technical Relationship Manager

Enterprise Support EMEA