Como publicar uma aplicação Web no Citrix XenApp

Existem algumas formas de publicar uma aplicação Web no Citrix XenApp.

A mais simples, talvez, é utilizar o modo “Kyosk” do Internet Explorer. Para isso basta utiilizar o parâmetro “-k” ao chamar o aplicativo. A configuração da aplicação no Citrix Studio deveria ficar mais ou menos assim:

Internet Explorer modo Kyosk
Internet Explorer modo Kyosk

O problema do modo Kyosk é que o IE é iniciado em tela cheia e sem o botão “Fechar”. Isso pode confundir o usuário e prejudicar a sua experiência de uso.

Outra forma de fazer isso é utilizar um script que instancia o Internet Explorer desabilitando alguns componentes (tais como a barra de endereços, botões de navegação, complementos e etc). Aqui nesse post, há um exemplo de um VB Script bem simples que dá conta do recado, e que reproduzo abaixo:

Set oIE1 = WScript.CreateObject ("InternetExplorer.Application")

oIE1.Navigate "http://www.yahoo.com"
oIE1.Visible = 1
oIE1.AddressBar = 0
oIE1.StatusBar = 0
oIE1.ToolBar = 0
oIE1.MenuBar = 0

No entanto, a minha solução preferida foi a desse outro Blog. O VB Script publicado aqui é bem mais robusto e reutilizável. Nesse caso, basta chamar o script e passar como parâmetro a URL da aplicação Web.

Set objArgs = WScript.Arguments 
If objArgs.Count = 0 Then 
 WScript.Echo "No URL provided, please supply a URL to open" & VbCrLf & VbCrLf & "e.g. CScript OpenURL.vbs http://www.google.com" 
 wscript.quit
End If

Set objIE = CreateObject("InternetExplorer.Application")

With CreateObject("internetexplorer.application") 
 .navigate "about:blank" 
 With .document.parentWindow.screen 
 iHeight = .height 
 iWidth = .width 
 End With 
End With

objIE.StatusBar = False 
objIE.Visible = True 
objIE.AddressBar = False 
objIE.MenuBar = False 
objIE.ToolBar = False 
objIE.Top = 0 
objIE.Left = 0 + 8 'Move to the side just a bit to show the desktop
objIE.Width = iWidth - 16 'Shrink to let a bit of the desktop show on the sides
objIE.Height = iHeight - 28 'Shrink a bit to see the taskbar
objIE.Navigate (objArgs(0))

A publicação de uma aplicação Web no XenDesktop utilizando essa ferramenta ficaria mais ou menos assim:

Internet Explorer chamado através do VBScrit
Internet Explorer chamado através do VBScript

Fontes: JasonSamuel.com, Citrix Discussions

 

Anúncios

SCCM 2012 – Computers with Inactive Client in a Specific Collection

SQL query to list all computers with client status “Inactive” in a specific collection. Just copy it and run on a SQL Management Studio:

Begin
Declare @CollID as varchar(20) = '<collection ID>'
SELECT DISTINCT
    v_R_System.Name0 as 'Hostname',
    v_R_System.Resource_Domain_OR_Workgr0 as 'Domain or Workgroup',
    v_R_System.User_Name0 as'Last User Logged On',
    v_R_System.Last_Logon_Timestamp0 AS 'Last Logon',
    CASE v_R_System.Client0 WHEN 1 THEN 'Installed' END AS 'Client',
    CASE v_CH_ClientSummary.ClientActiveStatus     WHEN 0 THEN 'Inactive' END AS 'Status'
FROM 
    v_R_System 
        inner join v_CH_ClientSummary on v_CH_ClientSummary.ResourceID = v_R_System.ResourceID
        inner join CollectionMembers on CollectionMembers.MachineID = v_R_System.ResourceID
where
    v_CH_ClientSummary.ClientActiveStatus  = 0 and 
    CollectionMembers.SiteID like @CollID
order by 'hostname'
End