erreur 1640 et Id 1024 lors d’une installation/désinstallation

Si lors d’une installation ou désinstallation d’un logiciel sur un serveur Terminal Server vous obtenez cette erreur (alors que vous êtes bien administrateur du serveur) :

Seuls les administrateurs ont le droit d’ajouter, supprimer, ou configurer un logiciel sur le serveur pendant une session à distance Terminal Server. Si vous voulez installer ou configurer un logiciel sur le serveur, contactez votre administrateur réseau.


Accompagnée des events applicatifs suivants :

Id : 11729 – Source : MsiInstaller

ID : 1024 – Source MsiInstaller
Code d’erreur 1640 (qui correspondant à :  Installation à partir d’une session cliente Terminal Server non autorisée pour l’utilisateur actuel)

 

Regardez côté GPO  le setting “Autoriser l’administrateur à installer à partir d’une session Terminal Server” dans “Configuration ordinateur – Modèles d’administration – Composants Windows – Windows Installer “.

Dans notre cas il a fallu activer le setting.

Post to Twitter

Supprimer un server ou une application via DsCheck.exe

Il peut arriver  que votre DataStore contienne des enregistrements corrompus.

Dans notre cas un serveur dont l’enregistrement était corrompu.

Le seul moyen (accessible) de pouvoir vérifier l’état de votre DataStore est l’utilisation de DsCheck.exe (La commande dscheck vous permet de valider la cohérence du DataStore et permet de  réparer les incohérences trouvées).

Au préalable un backup du DataStore est recommandé 😉 .

Commandes pour supprimer une application dans le DatasStore :

dscheck /full apps "App Name" /deleteMF /SILENT
dscheck /full apps "App Name" /deleteComApp /SILENT

Commandes pour supprimer un serveur dans le DatasStore :

dscheck /full servers "Server HostName" /deleteMF /SILENT
dscheck /full servers "Server HostName" /deleteComApp /SILENT

Le /DeleteMF supprime l’entrée de l’enregistrement dans le DataStore
Le /DeleteComApp supprime l’entrée commune dans le DataStore.

Si vous souhaitez plus d’information sur DsCheck.exe :
CTX124406 (XenApp 4.5/5 pour Windows 2003 32/64 Bits)
CTX107800 (Presentation Server 3.0/4.0 pour Windows 2000/2003)

Post to Twitter

Activer/Désactiver l’ouverture de session TS par le registre

Si vous devez activer/désactiver l’ouverture de session Terminal Server sur un serveur distant et que vous ne souhaitez pas passer par TSLOGINS (ou autres), une solution est de le faire via le registre (modification de la valeur WinStationsDisable) .

La valeur WinStationsDisable se trouve dans :
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
“WinStationsDisabled”=”0”
0 = Logon On
1 = Logon Off

Connectez vous au registre du serveur distant (faite un regedit puis allez dans le menu “Fichier” et choisissez  “Connexion au Registre réseau”) et modifiez la valeur WinStationsDisable.

Si la modification via le registre ne vous tente pas trop, vous pouvez le faire en powershell :
$Hostname = "Your Server"
$Registry = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $Hostname)
$WinStationsDisabled = $Registry.OpenSubKey("SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon",$true)
$WinStationsDisabled.SetValue('WinStationsDisabled','0','String')
Write-Host $Hostname " WinStationsDisabled " $WinStationsDisabled.GetValue('WinStationsDisabled')

Post to Twitter

PowerShell et .Net 4.0

Si vous souhaitez installer un .Net Framework 4.0 sur un serveur sur lequel vous utilisez PowerShell avec des appels en .Net (dans notre cas System.ServiceProcess.ServiceController sur un serveur en 2003 sp2 Fr) alors il vous faudra rajouter la clé de registre OnlyUseLatestCLR (qui permet d’utiliser la dernier version .Net) sur votre serveur.

Une fois la clé OnlyUseLatestCLR rajoutée, lancer votre console PowerShell et tester un script faisant appel à du .Net ou lancer la commande “ [Environment]::Version.ToString() ” , puis vérifier que le résultat est bien 4.0.30319.1.

Pour rajouter la clé OnlyUseLatestCLR copié le texte ci-dessous dans un fichier .reg puis double cliquer sur votre fichier .reg (pas besoin de rebooter le serveur)



32 Bits

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]
"OnlyUseLatestCLR"=dword:00000001

64 Bits
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework]
"OnlyUseLatestCLR"=dword:00000001

Attention, cette modification affecte toutes les applications utilisant
le .Net sur votre serveur.


Post to Twitter

Easter Egg XenApp

Au détour d’un troubleshooting sous PS 4.0, un de nos collègues (AF) est tombé sur un Easter Egg assez sympa.

Sur un serveur PS 4.0, 4.5 ou XenApp 5.0 (testé sur un serveur en 2003), tapez en ligne de commande : query citr!x

Et on obtient la liste de l’équipe d’ingénieur Citrix :).

Notre screenshot a été réalisé sur un XenApp 5.0, la liste diffère bien sûr selon la version 😉 .

En regardant dans la registry  on retrouve effectivement dans “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Terminal server\Utilities\query” la valeur “citr!x”.

Cet Easter Egg avait déjà été mis en ligne chez eeggs.com (notamment), comment est-on passer à coter 🙁 .

Il semblerais que sous Windows 2008 cela ne fonctionne pas sans la kb958652.

Post to Twitter

Erreur : Le service MFCOM n’a pas répondu comme prévu. Assurez-vous que votre compte………

Si lors d’une découverte dans une AMC (ou Citrix Delivery Services Console), vous obtenez le message suivant :

Le service Citrix MFCOM n’a pas répondu comme prévu. Assurez-vous que votre compte utilisateur est un membre du groupe Utilisateurs COM distribués de cet ordinateur si vous vous connectez à un serveur distant. Vérifiez la version de Citrix Presentation Server sur cet ordinateur et assurez-vous qu’une version compatible du service Citrix MFCOM est installée et en cours d’exécution.

Plusieurs hypothèses sont possibles (en fin de billet vous trouverez quelques liens sur les autres hypothèses), dans ce billet nous allons en traiter une que nous venons de rencontrer en prod : l’absence de Citrix IMA COM Interop dans les applications COM+

Si lors d’une découverte dans une AMC (ou Citrix Delivery Services Console), vous obtenez le message suivant :

Le service Citrix MFCOM n’a pas répondu comme prévu. Assurez-vous que votre compte utilisateur est un membre du groupe Utilisateurs COM distribués de cet ordinateur si vous vous connectez à un serveur distant. Vérifiez la version de Citrix Presentation Server sur cet ordinateur et assurez-vous qu’une version compatible du service Citrix MFCOM est installée et en cours d’exécution.

Plusieurs hypothèses sont possibles (en fin de billet vous trouverez quelques liens sur les autres hypothèses), dans ce billet nous allons en traiter une que nous venons de rencontrer en prod : l’absence de Citrix IMA COM Interop dans les applications COM+

Continue reading “Erreur : Le service MFCOM n’a pas répondu comme prévu. Assurez-vous que votre compte………”

Post to Twitter

Documentation des différents produits Citrix

Si vous recherchez les différentes documentations (Admin Guide, Installation Guide etc..) des produits Citrix, elles sont disponibles sur  : http://support.citrix.com/productdocs.

 

Bien sûr Citrix Edocs permet aussi de trouver de la documentation et vous permet au passage de l’exporter au format Pdf (Pdf sans index par contre 🙁 ) .

Post to Twitter

Citrix Online Plug-in n’a pas pu contacter le serveur.

Si lors de l’utilisation d’un PNA vous obtenez l’erreur “Citrix Online Plug-in n’a pas pu contacter le serveur. Veuillez vérifier votre connexion réseau”.

Pensez à vérifier (avant de troubleshooter) qu’Internet Explorer n’est pas en mode “Travailler hors connexion” 😉 .


Post to Twitter

Ouverture de ports sur un DataStore SQL

Si vous rencontrez des erreurs lors d’un CHFARM pointant sur un DataStore SQL, ou des erreurs du service IMA suite à une migration dans un nouveau VLAN (par exemple).

Le problème pourrait venir d’un port non ouvert.

Erreur lors du CHFARM (erreur classique lors d’un problème de connexion avec une base SQL)

Dans notre cas le port TCP 1201 était bien ouvert, il manquait juste le port UDP 1434.

Lorsque des clients SQL Server 2000 et SQL Server 2005 demandent des ressources SQL Server, la bibliothèque réseau client envoie un message UDP au serveur en utilisant le port 1434. SQL Server Browser répond avec le port TCP/IP ou le canal de communication nommé de l’instance demandée. La bibliothèque réseau de l’application cliente établit alors la connexion en envoyant une demande au serveur en utilisant le port ou le canal de communication nommé de l’instance souhaitée.


Une trace Wireshark au démarrage du service IMA d’un de nos serveur pour qui le port UDP 1434 était ouvert :


Post to Twitter

Erreur 1001 durant l’installation d’un agent SmartAuditor

Si durant l’installation d’un agent SmartAuditor (dans notre cas une version : 1.1.1064), vous obtenez l’erreur suivante :

“Error 1001. Une exception s’est produite pendant la phase de validation de l’installation………”

Cette erreur signifie que le service Citrix SmartAuditor Agent (CitrixSmAudAgent) n’a pas pu démarrer durant la phase d’installation.

La CTX114862 permet la correction de cette erreur :

  • Allez dans le registre  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
  • Créez ou modifiez la clé ServicesPipeTimeout (format DWORD) et attribuez lui la valeur décimal de 300000.
  • Redémarrez le serveur

Post to Twitter