RISC.Blog

Immer bestens informiert – abonnieren Sie hier alle Blog-Artikel per RSS-Feed

Powershell Skript – XenApp 6.5 erstellen von Published Applications

Author: risc.blogger Kommentare: 0 Datum: 16 Mrz 2013

Mit dem folgenden Skript können Sie automatisiert Published Applications / Desktops erstellen. Bitte beachten Sie, dass die Variablen vorher zu definieren sind.

script:

write-host „loading pssnapin for xenapp“ -foregroundcolor yellow
add-pssnapin citrix* -erroraction silentlycontinue

$XA_WorkerGroupName = „$env:server_role“
$XA_WorkerGroupName = $XA_WorkerGroupName.Replace(„“, „/“)
$split = $XA_WorkerGroupName.Split(„/“)

$0 = $split[0]
$1 = $split[1]

$farm = get-XAFarm

write-host „loading variables“ -foregroundcolor yellow
$XA_Description = „$env:XA_CustomDescription Silo $1 on XenApp Farm $farm“
$XA_FolderPath = „applications$env:s4_role$env:XA_AdvancedFolderPath“
$XA_WorkerGroupName = „$1“
$XA_EncryptionLevel = „Bits128“
$XA_EncryptionRequired = $true
$XA_AudioRequired = $true
$XA_AudioType = „none“
$XA_Random = get-random
$XA_ServersPath = „Servers$env:server_role“
$XA_WaitOnPrinterCreation = $false
$XA_PreLaunch = $false

$XA_EncodedIconData = Get-CtxIcon $env:XA_IconFile -Index 0

$getPA = Get-XAApplication | foreach { „$($_.FolderPath)/$($_.DisplayName)“}
$XA_PAPath = $XA_FolderPath.Replace(„“, „/“)
$PA = „$XA_PAPath/$env:XA_DisplayName“

if ($getPA -contains $PA){
write-host „Published application already exists…“
}
else{
write-host „Published application doesn’t exist. Creating published application…“
$execute = New-XAApplication -ApplicationType $env:XA_ApplicationType -PreLaunch $XA_PreLaunch -FolderPath $XA_FolderPath -DisplayName $env:XA_DisplayName -BrowserName „$env:XA_BrowserName$XA_Random“ -Description $XA_Description -CommandLineExecutable $env:XA_CommandLineExecutable -WorkingDirectory $env:XA_WorkingDirectory -WorkerGroupName $XA_WorkerGroupName -accounts $env:XA_accounts -ClientFolder $env:XA_ClientFolder -AddToClientStartMenu $XA_AddToClientStartMenu -StartMenuFolder $env:XA_StartMenuFolder -EncryptionLevel $XA_EncryptionLevel -EncryptionRequired $XA_EncryptionRequired -AudioRequired $XA_AudioRequired -AudioType $XA_AudioType -WaitOnPrinterCreation $XA_WaitOnPrinterCreation -InstanceLimit $env:XA_InstanceLimit -EncodedIconData $XA_EncodedIconData -WindowType $env:XA_WindowType -force -erroraction silentlycontinue
if ($execute -ne $NULL){write-host „Application publishing created successfully“ -foregroundcolor green}else{write-host „application publishing failed“ -foregroundcolor red}

}

write-host „Clearing variables…“ -foregroundcolor yellow
$XA_FolderPath = „“
$env:XA_AdvancedFolderPath = „“

SCCM 2012 – verteilen von Powershell Skripten

Author: risc.blogger Kommentare: 0 Datum: 16 Mrz 2013

Problembeschreibung:
Fehlerhafte Konfiguration von Anwendungen oder Paketen, kann zu Fehlern beim deployment von Powershell Skripten als Anwendung führen. Die ConfigMgr Log Files sind in den meisten Fällen nicht sehr aussagekräftig, sodass die Fehlersuche sehr schwierig ist.

Fehlercode: 0x80072EE7
Fehlercode: Error ID (1)

Was Sie wissen sollten:
Auf der folgenden Seite finden Sie alle ConfigMgr Logfiles:
ConfigMgr Logfilesr

Folgendes Logfile ist wichtig für die Verteilung von Anwendungen und Paketen: %windir%System32ccmlogsCcmexec.log – Hier werden die aktivitäten des Clients und des SMS Agent Host Dienstes geschrieben.

Alle Logfiles finden Sie auf dem Client unter:
%windir%System32ccmlogs

Die verteilten Pakete können in Troubleshooting fällen im folgenden Verzeichnis auf dem Client gefunden werden und einzeln getestet werden:
%windir%System32ccmcache

Lösung:
Erstellen Sie ein „SCCM Package“ unter Einhaltung der folgenden Punkte:

* Definieren Sie den Store, in welchem die Source Files abgelegt werden.
* Aktivieren Sie die Option, dass die Pakete in den Cache des Clients heruntergeladen werden.
* Tragen Sie im „command line“ Feld das .ps1 Skript ein „Deployment.ps1“ ohne angaben vom Verzeichnis.
* Das Feld „Startup Folder“ muss leer bleiben.

Sobald das Paket auf den Client verteilt wird, ist dieses im lokalen Cache unter %windir%System32ccmcache zu finden.

Powershell suchen und ersetzen in Ordner und Unterordner

Author: risc.blogger Kommentare: 0 Datum: 20 Feb 2013

Mit dem folgenden Skript, können Sie ganz einfach eine Datei im Ordner und Unterordner suchen und durch eine neue Datei ersetzen.

$source = „sharescript_v14.ps1“
$target = „shareproject_X“
$FileName = „script_v14.ps1“

Get-ChildItem -recurse -path $target -Include $FileName | ForEach-Object {

$scriptPath = $_.FullName

Write-Host „replace file in $scriptPath“

copy-item $source $scriptPath -force

}

XA650R01W2K8R2X64058 und App-V Publishings

Author: risc.blogger Kommentare: 1 Datum: 19 Feb 2013

Der Citrix XenApp 6.5 Hotfix XA650R01W2K8R2X64058 scheint in Kombination mit Microsoft App-V Paketen Probleme zu bereiten.

Folgender App-V Fehler erscheint beim Aufruf der Applikation: 04-00000A09

Die Beschreibung des Fehlers finden Sie hier

Im sftlog.txt ist erkennbar, dass der Paketaufruf nicht mehr Case-Sensitiv, sondern insgesamt Lower-Case geschieht.

Aktuell hilft nur eine Deinstallation des Hotfixes oder der Umweg über ein Start-Skript.

Laut Citrix wird an einer Korrektur gearbeitet.

SSON in Kombination mit XenApp 6.5 und WebInterface 5.4

Author: risc.blogger Kommentare: 0 Datum: 06 Feb 2013

Umgebung:
– Citrix WebInterface 5.4 mit Passthrough Authentifizierung
– XenApp 6.5 GPO nach CTX133267 konfiguriert

Problem:
WebInterface Passthrough Anmeldung funktioniert problemlos. Beim Start einer Applikation erscheint jedoch eine Kennwortabfrage.

Lösung:
Fügen Sie die folgenden Zeilen zu der Default.ica auf dem/den Webinterface Sites hinzu:

SSOnUserSetting=On
UseLocalUserAndPassword=On
EnableSSOnThruICAFile=On

Altaddress Befehle für NAT-Adressen

Author: risc.blogger Kommentare: 0 Datum: 11 Jan 2013

Falls Sie einmal nach dem Befehl suchen sollten, so finden Sie in hier

sftdcc.exe lässt Sitzungen offen

Author: risc.blogger Kommentare: 0 Datum: 11 Jun 2012

Nach der Installation des Microsoft App-V Clients werden Remote Desktop Sitzungen nicht mehr ordentlich abgemeldet. Über die Citrix Advanced Management Konsole kann man getrennte Sitzungen mit laufender sftdcc.exe sehen.

Es gibt zwei Registry Keys, die hierfür zuständig sind, um das Problem zu beheben:

HKEY_LOCAL_MACHINESoftwareSoftricitySoftGrid ClientCurrentVersionConfiguration

Name: DCCSeamlessTimeout
Typ: REG_DWORD
String: 0

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlCitrixwfshellTWI

Name: LogoffCheckSysModules
Typ: REG_SZ
String: sftdcc.exe

Nach der Anpassung sollten die Sitzungen wieder ordentlich schließen.

Umgebungsvariablen mit Powershell setzen

Author: risc.blogger Kommentare: 0 Datum: 11 Jun 2012

Es ist relativ einfach:

[Environment]::SetEnvironmentVariable(“ExampleVariable”, “Example value.”, “User”)

Ändern Sie „User“ zu „Machine“ um Maschinen-weite Variablen zu setzen. Vergessen Sie bitte nicht, eine neue Powershell-Sitzung zu öffnen, bevor die neu gesetzte Variable genutzt werden kann.

Sie können die gesetzten Variablen mit „set-location env:“ überprüfen.

Über folgenden Link können Sie weitere Informationen erhalten:

https://www.microsoft.com/technet/scriptcenter/resources/pstips/dec07/pstip1214.mspx

Drucker Treiber Replizierung in XenApp 6

Author: risc.blogger Kommentare: 0 Datum: 03 Feb 2012

Falls Sie die GUI Option für die Drucker-Treiber Replikation zwischen XenApp 6 Servern vermissen, beachten Sie bitte folgenden Citrix KB Artikel:

CTX126125

Dies ist vor allem für Session Printer von Bedeutung

Update…

Es gibt einen aktualisierten Hotfix, der ein Problem mit dem „Add-XAAutoReplicatedPrinterDriver“ Cmdlet behebt:

CTX130454