Pozess wird beim Schliessen einer öffentlichen Anwendung unter Citrix nicht beendet
Hallo Alle zusammen,
wir haben bei uns im Krankenhaus folgendes Problem:
Wir arbeiten teilweise mit Citrix, damit unser KIS auch auf älteren PCs vernünftig läuft. Jetzt haben diese PCs Cherry Chipkartentastaturen angeschlossen. Das Auslesen der KV-Karten funktioniert auch problemlos. ABER...
Sobald die Karte ausgelesen wird startet in der Session der Prozess "dllhost.exe". Dieser wird laut Cherry auch benötigt. Beendet man dann die öffentliche Anwendung, schliesst sich das Fenster auch ganz brav, nur die beiden Prozesse bleiben aktiv. Also einmal der Prozess des KIS und auch diese dllhost.exe. Diese dllhost.exe blockiert also das richtige Beenden des KIS, und somit auch das Beenden der Citrix-Session. Denn wenn man keine KV-Karte ausliest und dann die öffentliche Anwendung beenedet, wird auch die Session beendet.
Hat irgendjemand eine Idee wir man das killen dieser dllhost.exe, unter dem jeweilgen Benutzer und auf dem jeweiligen Citrix-Server, erzwingen kann.
Wäre für jede Hilfe und Anregung dankbar.
Mfg Primax7
wir haben bei uns im Krankenhaus folgendes Problem:
Wir arbeiten teilweise mit Citrix, damit unser KIS auch auf älteren PCs vernünftig läuft. Jetzt haben diese PCs Cherry Chipkartentastaturen angeschlossen. Das Auslesen der KV-Karten funktioniert auch problemlos. ABER...
Sobald die Karte ausgelesen wird startet in der Session der Prozess "dllhost.exe". Dieser wird laut Cherry auch benötigt. Beendet man dann die öffentliche Anwendung, schliesst sich das Fenster auch ganz brav, nur die beiden Prozesse bleiben aktiv. Also einmal der Prozess des KIS und auch diese dllhost.exe. Diese dllhost.exe blockiert also das richtige Beenden des KIS, und somit auch das Beenden der Citrix-Session. Denn wenn man keine KV-Karte ausliest und dann die öffentliche Anwendung beenedet, wird auch die Session beendet.
Hat irgendjemand eine Idee wir man das killen dieser dllhost.exe, unter dem jeweilgen Benutzer und auf dem jeweiligen Citrix-Server, erzwingen kann.
Wäre für jede Hilfe und Anregung dankbar.
Mfg Primax7
Please also mark the comments that contributed to the solution of the article
Content-Key: 79940
Url: https://administrator.de/contentid/79940
Printed on: April 25, 2024 at 13:04 o'clock
11 Comments
Latest comment
Hi Primax,
lege Dir ein Batch an mit folgendem Inhalt an, der Deine Publ. Applikation startet.
--- Start.CMD ----
@echo OFF
hier Aufruf Deines Programmes
@for /F "tokens=1,2 delims== " %%i in ('tasklist^|findstr "dllhost.exe"') do TASKKILL /PID %%j
Nach Beenden des Batches sollte der Prozess dllhost.exe durch Taskkill beendet werden.
Gruß
Stefan
lege Dir ein Batch an mit folgendem Inhalt an, der Deine Publ. Applikation startet.
--- Start.CMD ----
@echo OFF
hier Aufruf Deines Programmes
@for /F "tokens=1,2 delims== " %%i in ('tasklist^|findstr "dllhost.exe"') do TASKKILL /PID %%j
Nach Beenden des Batches sollte der Prozess dllhost.exe durch Taskkill beendet werden.
Gruß
Stefan
Hier noch eine erweiterte Version, die den Sessionname prüft. Der Benutzer sollte ja in seiner Session diesen Task abschießen und nicht den von anderen. Habe es aber nicht ausprobiert.
In Sessionname steht seine Session-ID wie z.B. "ICA-tcp#6398".
@for /F "tokens=1,2,3 delims== " %%i in ('tasklist^|findstr "dllhost.exe"') do if "%%k"=="%sessionname%" TASKKILL /PID %%j
Gruß
Stefan
In Sessionname steht seine Session-ID wie z.B. "ICA-tcp#6398".
@for /F "tokens=1,2,3 delims== " %%i in ('tasklist^|findstr "dllhost.exe"') do if "%%k"=="%sessionname%" TASKKILL /PID %%j
Gruß
Stefan
Hi Primax,
Du musst nicht auf die Publ. Application verzichten. Erstelle einfach ein CMD File mit den Befehlen und starte über dieses CMD File Deine Applikation. Du kannst ja als Publ. Appl. dieses CMD File in Citrix angeben.
Wie oben beschrieben:
--- Deine Application.CMD ----
@echo OFF
hier Aufruf Deines Programmes wie z.B. Winword.exe
@for /F "tokens=1,2 delims== " %%i in ('tasklist^|findstr "dllhost.exe"') do TASKKILL /PID %%j
Gruß
Stefan
Du musst nicht auf die Publ. Application verzichten. Erstelle einfach ein CMD File mit den Befehlen und starte über dieses CMD File Deine Applikation. Du kannst ja als Publ. Appl. dieses CMD File in Citrix angeben.
Wie oben beschrieben:
--- Deine Application.CMD ----
@echo OFF
hier Aufruf Deines Programmes wie z.B. Winword.exe
@for /F "tokens=1,2 delims== " %%i in ('tasklist^|findstr "dllhost.exe"') do TASKKILL /PID %%j
Gruß
Stefan
Hi Primax7,
ich habe heute gehört, dass es einen Citrix Registry Eintrag gibt in den man die Prozesse einträgt, die beim beenden einer Session gelöscht werden sollen. Schau' doch mal im Citrix Forum nach um welchen Eintrag es sich hierbei handelt.
Gruß
Stefan
PS: Hier ist der Artikel dazu.
http://support.citrix.com/article/CTX891671
ich habe heute gehört, dass es einen Citrix Registry Eintrag gibt in den man die Prozesse einträgt, die beim beenden einer Session gelöscht werden sollen. Schau' doch mal im Citrix Forum nach um welchen Eintrag es sich hierbei handelt.
Gruß
Stefan
PS: Hier ist der Artikel dazu.
http://support.citrix.com/article/CTX891671