技術論文:Citrix Workspace アプリのクイックスタートガイド

概要

Windows向けCitrix Workspaceアプリでは、Citrix Virtual Apps and Desktops を使用してユーザーのリソースにアクセスできます。これらのリソースには、SaaS、Web、レガシーアプリケーション、デスクトップが含まれます。Citrix Workspaceアプリでは、デスクトップ、スタートメニュー、Citrix Workspaceユーザーインターフェイス、Webブラウザーからアクセスできます。

ただし、Windows向けCitrix Workspaceアプリをインストールしなくても、HTML5用のCitrix Workspaceアプリを使用してWindowsデバイス上のリソースにアクセスできます。ただし、両方のクライアントの間には大きな機能の違いがあります。使用可能なWorkspaceアプリの各バージョンでサポートされるすべての機能の概要については、 Citrix Workspace アプリの機能マトリックスを参照してください

インストール

Windows向けCitrix Workspace アプリの最新バージョンは、 こちらからダウンロードできます。Citrix Workspaceアプリは、WindowsクライアントとCitrixワーカー(VDA)の両方にインストールできます。

技術的には可能ですが、 CitrixWorkspaceApp.exeに含まれているファイルを抽出する必要はありません。実行可能ファイルを直接使用してCitrix Workspaceアプリをインストールすることを強くお勧めします。

インストールファイル CitrixWorkspaceApp.exe の名前を CitrixWorkspaceAppWeb.exeに変更することは可能です。このファイルの名前を変更すると、インストールの最後にある最後のダイアログウィンドウから [ アカウントの追加 ] ボタンが削除されます。また、初回ログイン時に [アカウントの追加 ] ウィンドウ (初回使用、FTU) が表示されなくなります。このモードは、Webストアを介したアクセスのみが計画されている場合に適しています。

管理者権限なしでCitrix Workspaceアプリをインストールする場合は、次の点に注意してください。

  • Microsoft Visual C++ 再頒布可能 2017 (32 ビットと 64 ビットの両方) は、ローカルマシンにプレインストールする必要があります。これは、Citrix Workspaceアプリをインストールするための前提条件です。Visual C++ 再頒布可能は、管理者特権でのみインストールできます。
  • Citrix Workspaceアプリの次のコンポーネントは、管理者権限でのみインストールできます。
    • SSON (シングルサインオン)
    • URL のリダイレクト
    • ローカル アプリ アクセス
    • USBサポート
    • アプリ保護
  • ユーザーベースのインストールの場合は、ローカルマシンにログオンするユーザーごとにCitrix Workspaceアプリをインストールする必要があります。ユーザーベースのインストールのデフォルトのインストールパスは、%userprofile%\AppData\Local\Citrix\ICA Clientです。
  • 競合を避けるため、管理者権限を使用してCitrix Workspaceアプリをインストールする前に、ローカルマシン上のCitrix Workspaceアプリのすべてのユーザーベースのインストールをアンインストールしてください。

コマンドライン引数

Citrix Workspaceアプリには、多くのインストールパラメータが付属しています。使用可能なすべてのパラメータの完全な概要については、 製品マニュアルを参照してください

ロールアウトを成功させるには、各パラメータを理解し、組織の要件に適合していることを確認してください。例:

  • 組織内の一部のユーザーはローカルアプリケーションアクセスを必要としていますか?[ローカル アプリ アクセス] は、ホストされたデスクトップ内でローカルにインストールされたアプリケーションの統合を可能にします。はいの場合は、 パラメータ/FORCE_LAA =1を指定して 、ローカルアプリケーションアクセスコンポーネントをインストールしてください。
  • ユーザーは再度認証しなくても、Citrix Virtual Apps and Desktops を使用できますか?[はい] の場合は、パラメーター /includessOn を使用してシングルサインオンコンポーネントをインストールし、/enable_sson=Yes を使用してシングルサインオンコンポーネントを有効にしてください。

    注:

    Citrix Workspace アプリのコマンドラインツールを使用して 、正確なコマンドライン構文(CTX227370)を作成することもできます。

Citrix Workspaceアプリを古いバージョンおよびサポートされていないバージョン(Citrix Receiver 3.4など)からアップグレードする場合は、 パラメータ/rcuまたは/forceinstall (Citrix Workspaceアプリ1909以降)を使用してください。

シングルサインオンを有効にするなど、一部のコンポーネントでは、ローカルマシンの再起動が必要になることに注意してください。

コマンドライン構文の例を次に示します。 CitrixWorkspaceApp.exe /silent /includeSSON /FORCE_LAA=1

インストールパス

マシンベースのインストールのデフォルトのインストールパスは C:\Program ファイル (x86)\ Citrix\ ICA クライアントです

Citrix Workspaceアプリは、 CTXReceiverInstallLogs-%date%-%-%time%サブフォルダ内の%TEMP%ディレクトリに複数のログファイルを書き込みます**。次のログファイルが作成されます。

  • メインインストーラーからのログファイル:
    • TrolleyExpress-%date%-%time%.log
  • コンポーネントごとのログファイル (MSI インストーラ):
    • CTxinstall-appprotection-%date%-%time%.LOG
    • CTxinstall-Authmanager-%date%-%time%.LOG
    • CTXinstall-CTXBrowserInstaller-%date%-%time%.LOG
    • ctxinstall-desktopviewer-%date%-%time%.LOG
    • CTxinstall-genericUSB-%日付%-%time%.LOG
    • CTxinstall-icaWebWrapper-%date%-%time%.LOG
    • CTxinstall-PackageInstaller-%date%-%time%.LOG
    • CTxinstall-riinstaller-%date%-%time%.LOG
    • CTxinstall-selfServicePlugin-%date%-%time%.LOG
    • CtxInstall-Vd3dClient-%Date%-%Time%.log
    • CTxinstall-Webhelper-%date%-%time%.LOG
    • ctxinstall-WindowckerInstaller-%date%-%time%.LOG

一時フォルダの正確な場所は、インストールを実行するユーザーによって異なります。たとえば、ローカルシステムアカウント (たとえば Microsoft SCCM で使用される) の一時フォルダは C:\Windows\Tempです。 ログファイルのパスは変更できません。Citrix Workspaceアプリのインストールが完了したら、ログファイルを別のディレクトリにコピーできます。

構成

Active Directory インフラストラクチャでは、Microsoftグループポリシーを使用してCitrix Workspaceアプリを一元的に構成できます。これには、Citrix Workspaceアプリの管理用テンプレート(ADMXおよびADMLファイル)をグループポリシーセントラルストアにコピーする必要があります。

ADMX ファイルには、実際の設定が含まれています。ADML ファイルは、グループポリシー管理コンソールに表示されるテキストを含む言語ファイルです。

管理用テンプレートファイルは、Citrix Workspaceアプリのインストールディレクトリに含まれます。

  • C:\Program Files (x86)\Citrix\ICA Client\Configuration\CitrixBase.admx
  • C:\Program Files (x86)\Citrix\ICA Client\Configuration\receiver.admx
  • C:\Program Files (x86)\Citrix\ICA Client\Configuration\%language%\CitrixBase.adml
  • C:\Program Files (x86)\Citrix\ICA Client\Configuration\%language%\receiver.adml

また、Citrix Webサイトの「 管理者向けのダウンロード(展開ツール)」セクションからダウンロードすることもできます。

ADMX ファイルと ADML ファイルをグループポリシーの中央ストアにコピーします。

  • ADMX ファイルのデフォルトパスは次のとおりです。 %LogonServer%\sysvol\%Domain%\Policies\PolicyDefinitions
  • ADML ファイルのデフォルトのパスは次のとおりです。 %LogonServer%\sysvol\%Domain%\Policies\PolicyDefinitions\%Language%

テストの目的で、管理用テンプレートをローカルマシン (C:\Windows\PolicyDefinitions) にコピーし、ローカルグループポリシーエディター (gpedit.msc) を使用して設定を表示および管理できます。

Citrix Workspaceアプリには、マシンごととユーザーごとの設定の両方が付属しています。次のような多くの設定があります。

  • コンピューターの構成\ ポリシー\ 管理用テンプレート\ Citrixコンポーネント\ Citrix Workspace
    • DPI\ High DPI: ほとんどの環境では、デフォルト設定で十分ですが、複数の画面を持つユーザーが問題を報告する場合は、DPI 構成を変更する必要があります。
    • SelfService\ enableFtU: ユーザーの初回ログイン時に [アカウントの追加 ] ウィンドウを防ぐには、この設定を無効にします。インストールファイルCitrixWorkspaceApp.exeの名前をCitrixWorkspaceAppWeb.exeに変更すると 、同じ結果になります。
    • StoreFront ¥NetScaler Gateway URL/StoreFrontアカウントリスト: この設定を使用して、NetScaler GatewayまたはStoreFront URLをユーザーのワークスペースアプリに自動的に追加します。
  • ユーザーの構成\ ポリシー\ 管理用テンプレート\ Citrixコンポーネント\ Citrix Workspace
    • ユーザー認証\ ローカルユーザー名とパスワードの場合:シングルサインオンを許可するには、この設定を有効にし、[パススルー認証を有効にする] と [すべてのICA接続でパススルー認証を許可する**] オプションをオンにします

セッションを起動すると、デバイスアクセスに関する権限(ローカルドライブ、Webカメラ、マイクなど)を求めるダイアログウィンドウが表示されます。デフォルトでは、Desktop Viewer クライアントデバイスの制限はインターネット領域に基づいています。この動作は、 クライアント選択的信頼レジストリキーを作成して構成することによって変更できます 。管理者は、レジストリを変更してアクセスレベルを定義できます。次の 4 つのアクセスレベルがあります。

  • 0 = アクセスなし
  • 1 = 読み取り専用
  • 2 = フルアクセス
  • 3 = ユーザーにプロンプトを表示

クライアント選択的信頼レジストリキーと値は自動的には作成されません 。これらは、グループポリシーを使用して、またはレジストリで直接作成および構成できます。次の記事では、 クライアント選択的信頼のレジストリ設定を構成する方法に関する詳細情報を提供しますCTX133565

この記事では、グループポリシーファイル (ADM、ADMX、および AMDL) と REG ファイルの両方を含む ZIP ファイルをダウンロードできます。グループポリシーを使用してクライアントを構成する場合、ADMX ファイルと ADML ファイルを使用することをお勧めします。

クライアント選択的信頼グループポリシー

REG ファイルを使用して、 クライアント選択的信頼レジストリキーと値を作成および構成することもできます 。64 ビットオペレーティングシステムの場合は ReceivercStregupx64.reg ファイル、32 ビットオペレーティングシステムの場合は ReceivercStregupx86.reg ファイルを使用します。REG ファイルを使用する場合は、ユーザーがデバイスアクセス設定を変更できることに注意してください。ユーザーが環境設定を変更できないようにするには、次のレジストリキーの値 (既定値)falseに設定します。

HKLM\SOFTWARE\WOW6432Node\Citrix\ICA Client\Client Selective Trust\oidPredefinedSecurityPolicySettings\InstantiatedSecurityPolicyEditable

Citrix Workspaceアプリの動作を構成するために、他の製品の管理用テンプレートが必要になる場合があります。

警告: 次の構成では、悪意のあるWebサイトがメッセージなしで悪意のあるVDAに対してセッションをサイレントに起動する可能性があります。

たとえば、ユーザーがStoreFront リソースを起動するたびに、Google ChromeとMicrosoft EdgeでCitrix Workspace ランチャーを開くというプロンプトが表示されたら 、次の設定を構成します。

  • ユーザーの構成\ 管理用テンプレート\ グーグル\ Google Chrome
    • ポリシー設定: URLのリストへのアクセスを許可する-> 有効にする
    • ポリシー値: レシーバー://*
  • ユーザーの構成\ 管理用テンプレート\ Microsoft Edge
    • ポリシー設定: 許可されたURLのリストを定義する-> 有効にする
    • ポリシー値: レシーバー://*

必要な ADMX ファイルは次の場所からダウンロードできます。

最適化とセキュリティ

リモートシステム上で仮想アプリケーションとデスクトップを操作することは、次の 2 つのことを意味します。

  1. リモートシステムのリソース(CPU/RAM)は、同時に複数のユーザーによって使用され、時には負荷が高い状態で実行されることがあります。
  2. ネットワークパフォーマンス(遅延やジッタなど)により、ローカルエンドポイントとリモートシステム間の通信が最適でない場合があります。

このため、さまざまな最適化機能が導入されています。

Citrix HDX RealTime Optimization Pack

これらの機能の 1 つは、Microsoft Skype for Business用の Citrix HDX RealTime Optimization Pack に関するものです。RealTime Optimization Pack は、次の 2 つのコンポーネントで構成されています。

  1. HDX RealTime Media Engine(Citrix Workspaceアプリと一緒にローカルエンドポイント上で実行されます)。
  2. HDX RealTime Connector (Microsoft Skype for Businessと一緒にデータセンター内のVDA上で実行されます)。

HDX RealTime Media Engine は、ユーザーデバイス上で直接メディア処理を実行します。これによって、スケーラビリティを最大化し、ネットワーク帯域幅消費を最小化し、最適なオーディオ/ビデオ品質を確保して、サーバーの負荷を軽減します。

HDX RealTime Media Engine は、Citrix Workspaceアプリがすでに存在する場合にのみインストールできます。

Citrix リアルタイムOptimization Pack 最新バージョンをここからダウンロードします

Microsoft Skype for Business向けのCitrix HDX RealTime Optimization Pack 詳細については、 製品ドキュメントを参照してください

Microsoft Teamsの最適化

Microsoft Teams に関しては、それ以上の最適化は必要ありません。以下のバージョンのCitrix WorkspaceアプリとVirtual Delivery Agent(VDA)には、利用可能なすべての最適化機能がデフォルトで含まれています。

  • Citrix Workspace アプリ 1907 以降
  • Delivery Controller 1906.2 以降
  • Virtual Delivery Agent (VDA) バージョン 1906.2 以降
  • Microsoft Teams バージョン 1.2.00.31357 以降

詳細については、 製品ドキュメントを参照してください

ブラウザーコンテンツのリダイレクト

ブラウザコンテンツリダイレクト機能は 、VDA側でホワイトリストに登録されたWebページのレンダリングを防止します。代わりに、Web ページはローカルエンドポイントでレンダリングされます。

ブラウザコンテンツリダイレクトの設定方法の詳細については製品ドキュメントを参照してください

Citrixデスクトップロック

組織の一部のユーザーは、自分の PC のローカルデスクトップを操作する必要がなく、仮想デスクトップだけが必要になる場合があります。Citrix Desktop Lockは、物理PCをロックダウンし、効果的にこれらのマシンをキオスクモードにします。PCが起動すると、ローカルOSのデスクトップではなく、仮想デスクトップが表示されます。

Citrixデスクトップロックは別個のコンポーネントであり、Citrix Workspaceアプリには含まれません。Citrixデスクトップロックをインストールする前に、Citrix Workspaceアプリをインストールする必要があります。Citrix WorkspaceアプリをインストールするときにSSONを有効にし、インストール中またはグループポリシーを使用してストアを構成する必要があります。Citrixデスクトップロックは、ドメインに参加しているマシン上で動作します。

Citrix Desktop Lock の最新バージョンをここからダウンロードします

Citrix Desktop Lockのインストールと構成について詳しくは、 製品ドキュメントを参照してください

アプリ保護

Citrix Workspaceアプリバージョン1912では、 新しいセキュリティ機能アプリ保護が導入されました。これは、Citrix Workspaceアプリのアドオン機能で、Citrix Virtual Apps and Desktops の公開リソースを使用するときに強化されたセキュリティを提供します。もっと具体的にアプリ保護は 、Citrix HDXセッションでキーログ対策とアンチスクリーンキャプチャ機能を提供します。

サイレントインストールの場合は、Citrix Workspace アプリ(製品ドキュメントをインストールするときにスイッチ/includeappprotectionを必ず含めてください

アプリ保護の詳細については製品ドキュメントを参照してください

自動化

大規模な組織では、WindowsエンドポイントデバイスへのCitrix Workspaceアプリのインストールと構成を自動化したい場合があります。これについて行く方法はさまざまです。

いくつかのデプロイスクリプト (*.bat ファイル) は、 管理者向けダウンロードセクションの次のURL からダウンロードできます。

これらのバッチファイルを展開する前に、組織の環境に合わせてカスタマイズする必要があります。

もう 1 つのオプションは、次のようなカスタム PowerShell スクリプトを使用することです。

免責事項

これらのソフトウェアアプリケーションは、いかなる種類の表明、保証、条件もなく、現状有姿で提供されます。 このソフトウェアアプリケーションは、自己の責任において使用、配布することができます。Citrixは、商品性、特定用途に対する適合性、資格、非侵害性に関するあらゆる保証を含む、明示、黙示、書面、口頭、法定によるいかなる保証も一切付与しません。前述の一般性を制限することなく、ユーザーは、(a)このソフトウェアアプリケーションにはエラー、設計上の欠陥その他の問題が含まれている可能性があり、その結果データ損失または所有物の損傷が生じる可能性があること、(b)このソフトウェアアプリケーションは完全には機能しない可能性があること、(c)Citrixは、通知なしで、もしくはユーザーに対して一切責任を負わず、このソフトウェアアプリケーションの現行バージョンおよび/または将来のバージョンの提供を取り止める場合があることを承認、同意します。 いかなる場合でも、このコードは、生命維持関連または爆発物関連の作業を含む、ただしそれに限定されない、極度に危険な作業に使用すべきではありません。 Citrix、その関連会社および代理店は、直接的、特別、付随的、懲罰的、間接的なあらゆる損害を含む、このソフトウェアアプリケーションの使用により生じたあらゆる損害について、そのような損害の可能性について知らされていた場合でも、契約の不履行または責任に関するその他のあらゆる見解の不履行の下では、一切の責任を負いません。 ユーザーは、ユーザーによるこのコードの使用、変更、配布により生じたいかなる申し立てに対しても、Citrixを免責し、Citrixを弁護することに同意します。

スクリプトの例

#==========================================================================
# INSTALLING AND CONFIGURING CITRIX WORKSPACE APP FOR WINDOWS
#
# Author: Citrix Systems, Inc.
# Date  : 16.03.2020
# Editor: Microsoft Visual Studio Code
# Citrix Workspace app versions supported by this script: ALL
#==========================================================================

# Error handling
$global:ErrorActionPreference = "Stop"
if($verbose){ $global:VerbosePreference = "Continue" }

# Disable File Security (prevents the "Open File – Security Warning" dialog -> "Do you want to run this file")
$env:SEE_MASK_NOZONECHECKS = 1

# Custom variables [edit | customize to your needs]
$LogDir = "C:\Logs\Citrix Workspace app"                                       # the full path to your log directory
$LogFile = Join-Path $LogDir "Install Citrix Workspace app.log"                # the full path to your log file
$StartDir = $PSScriptRoot                                                      # the directory path of the installation file(s). $PSScriptRoot is the directory of the current script.
$InstallFileName = "CitrixWorkspaceApp.exe"                                    # the name of the installation file. Options: 'CitrixWorkspaceApp.exe' or 'CitrixWorkspaceAppWeb.exe'.
$InstallArguments = "/silent /includeSSON /FORCE_LAA=1"                        # the command line arguments for the installation file
$ClientSelectiveTrustRegKeys = "CitrixWorkspaceApp_Client_Selective_Trust.reg" # the name of the registry file containing the Client Selective Trust settings

# Create the log directory if it does not exist
if (!(Test-Path $LogDir)) { New-Item -Path $LogDir -ItemType directory | Out-Null }

# Function WriteToLog
Function WriteToLog {
    param(
        [string]$InformationType,
        [string]$Text
    )

    $DateTime = (Get-Date -format dd-MM-yyyy) + " " + (Get-Date -format HH:mm:ss)
    if ( $Text -eq "" ) {
        Add-Content $LogFile -value ("")   # Write an empty line
    } else {
        Add-Content $LogFile -value ($DateTime + " " + $InformationType.ToUpper() + " - " + $Text)
    }
}

# Create a new log file (overwriting any existing one)
New-Item -Path $LogFile -ItemType "file" -force | Out-Null

# Write to log file
WriteToLog "I" "Install Citrix Workspace app" $LogFile
WriteToLog "I" "----------------------------" $LogFile
WriteToLog "-" "" $LogFile

############################
# Pre-Installation         #
############################

# Cleanup: delete existing group policy registry keys (reference: https://docs.citrix.com/en-us/citrix-workspace-app-for-windows/install.html#uninstall)
WriteToLog "I" "Cleanup: delete existing Citrix Workspace group policy registry keys" $LogFile
$x = 0
try {
    $RegKeyPath = "hklm:\SOFTWARE\Policies\Citrix\ICA Client"
    if ( Test-Path $RegKeyPath ) {
        $x++
        Remove-Item -Path $RegKeyPath -recurse
    }
    $RegKeyPath = "hklm:\SOFTWARE\Wow6432Node\Policies\Citrix\ICA Client"
    if ( Test-Path $RegKeyPath ) {
        $x++
        Remove-Item -Path $RegKeyPath -recurse
    }
    if ( $x -eq 0 ) {
        WriteToLog "I" "No existing group policy registry keys were found. Nothing to do." $LogFile
    } else {
        WriteToLog "S" "The group policy registry keys were deleted successfully" $LogFile
    }
} catch {
    WriteToLog "E" "An error occurred trying to delete the group policy registry keys (error: $($Error[0]))" $LogFile
    Exit 1
}

# Write an empty line to the log file
WriteToLog "-" "" $LogFile

# Cleanup: delete old Citrix Workspace app log folders in the TEMP directory
WriteToLog "I" "Cleanup: delete old Citrix Workspace app log folders" $LogFile
try {
    Get-ChildItem -path ( Join-Path $env:Temp "CTXReceiverInstallLogs*" ) -directory | Remove-Item -force -recurse
    WriteToLog "S" "The old log folders were deleted successfully (or they did not exist in the first place)" $LogFile
} catch {
    WriteToLog "E" "An error occurred trying to delete the old log folders (error: $($Error[0]))" $LogFile
    Exit 1
}

# Write an empty line to the log file
WriteToLog "-" "" $LogFile

############################
# Installation             #
############################

$InstallFile = Join-Path $StartDir $InstallFileName
WriteToLog "I" "Install Citrix Workspace app" $LogFile
WriteToLog "I" "Command: $InstallFile $InstallArguments" $LogFile
if ( Test-Path $InstallFile ) {
    $Process = Start-Process -FilePath $InstallFile -ArgumentList $InstallArguments -PassThru -ErrorAction Stop
    Wait-Process -InputObject $process
    switch ($Process.ExitCode) {
        0 { WriteToLog "S" "Citrix Workspace app was installed successfully (exit code: 0)" $LogFile }
        3 { WriteToLog "S" "Citrix Workspace app was installed successfully (exit code: 3)" $LogFile } # Some Citrix products exit with 3 instead of 0
        1603 {
            WriteToLog "E" "A fatal error occurred (exit code: 1603). Some applications throw this error when the software is already (correctly) installed! Please check the log files!" $LogFile
            Exit 1
            }
        1605 {
            WriteToLog "E" "Citrix Workspace app is not currently installed on this machine (exit code: 1605)" $LogFile
            Exit 1
            }
        1619 {
            WriteToLog "E" "The installation files cannot be found. The PS1 script should be in the root directory and all source files in the subdirectory 'Files' (exit code: 1619)" $LogFile
            Exit 1
            }
        3010 { WriteToLog "W" "A reboot is required (exit code: 3010)!" $LogFile }
        40008 {
            WriteToLog "I" "This version of Citrix Workspace app has already been installed. Nothing to do!" $LogFile
            # Re-enable File Security
            Remove-Item env:\SEE_MASK_NOZONECHECKS

            # Write an empty line to the log file
            WriteToLog "-" "" $LogFile
            WriteToLog "I" "End of script" $LogFile
            Exit 0
        }
        default {
            WriteToLog "E" "The installation ended in an error (exit code: $($Process.ExitCode))" $LogFile
            Exit 1
        }
    }
} else {
    WriteToLog "E" "The file '$InstallFile' could not be found" $LogFile
    Exit 1
}

# Write an empty line to the log file
WriteToLog "-" "" $LogFile

############################
# Post-Installation        #
############################

# Optional: import the Client Selective Trust registry keys and values. This prevents security popup messages regarding permissions for access to files, microphones, cameras, scanners, etc. in the local intranet and trusted sites.
# Reference: How to Configure Default Device Access Behavior of Receiver, XenDesktop and XenApp (https://support.citrix.com/article/CTX133565)
$RegFile = Join-Path $StartDir $ClientSelectiveTrustRegKeys
WriteToLog "I" "Optional: import the Client Selective Trust registry keys and values. This prevents security popup messages during logon" $LogFile
WriteToLog "I" "Import registry file '$RegFile'" $LogFile
if ( Test-Path $RegFile ) {
    try {
        $process = start-process -FilePath "reg.exe" -ArgumentList "IMPORT ""$RegFile""" -WindowStyle Hidden -Wait -PassThru
        if ( $process.ExitCode -eq 0 ) {
            WriteToLog "S" "The registry settings were imported successfully (exit code: $($process.ExitCode))" $LogFile
        } else {
            WriteToLog "E" "An error occurred trying to import registry settings (exit code: $($process.ExitCode))" $LogFile
            Exit 1
        }
    } catch {
        WriteToLog "E" "An error occurred trying to import the registry file '$RegFile' (error: $($Error[0]))!" $LogFile
        Exit 1
    }
} else {
    WriteToLog "I" "The file '$RegFile' could not be found. Nothing to do." $LogFile
}

# Write an empty line to the log file
WriteToLog "-" "" $LogFile

# Copy the Citrix Workspace app log files to the custom log path defined in the variable '$LogDir'
WriteToLog "I" "Copy the log files from the TEMP directory to '$LogDir'" $LogFile
$CitrixLogPath = (Get-ChildItem -directory -path $env:Temp -filter "CTXReceiverInstallLogs*").FullName
if ( Test-Path ( $CitrixLogPath + "\*.log" ) ) {
    $SourceFiles = Join-Path $CitrixLogPath "\*.log"
    WriteToLog "I" "Source files          = $SourceFiles" $LogFile
    WriteToLog "I" "Destination directory = $LogDir" $LogFile
    try {
        Copy-Item $SourceFiles -Destination $LogDir -Force -Recurse
        WriteToLog "S" "The log files were copied successfully" $LogFile
    } catch {
        WriteToLog "E" "An error occurred trying to copy the log files" $LogFile
        Exit 1
    }
} else {
    WriteToLog "I" "There are no log files in the directory '$CitrixLogPath'. Nothing to copy." $LogFile
}

# Re-enable File Security
Remove-Item env:\SEE_MASK_NOZONECHECKS

# Write an empty line to the log file
WriteToLog "-" "" $LogFile
WriteToLog "I" "End of script" $LogFile
<!--NeedCopy-->

スクリプトを*.ps1ファイルとして保存し、次のようにスクリプトを実行します。

powershell.exe -executionpolicy bypass -file "C:\Temp\Citrix Workspace app installation.ps1"

PowerShell スクリプトを管理者として実行してください。既定では、PowerShell スクリプトでは、インストーラー (CitrixWorkspaceApp.exe)、 およびオプションでクライアント選択的信頼レジストリキーと値を含むレジストリファイルが 、スクリプト自体と同じディレクトリにあることが想定されます。インストールパスとスクリプト名を要件に変更します。

ログファイルはC:\Logs\Citrix Workspace appに書き込まれますが 、このパスは変数$LogDir$LogFileを変更することで変更できます。Citrix Workspaceアプリインストーラーによって生成されたすべてのログファイルは、インストールが完了すると(変数$LogDirで定義されている)ログディレクトリにコピーされます。

また、スクリプトは、次の 2 つのレジストリキーを削除して、既存のコンピューター固有のグループポリシー設定を削除します。

  • HKLM\SOFTWARE\Policies\Citrix\ICA Client
  • HKLM\SOFTWARE\Wow6432Node\Policies\Citrix\ICA Client

スクリプトでは、 クライアント選択的信頼レジストリファイルもインポートされますが 、これはオプションです。*.reg ファイルが見つからない場合、スクリプトはエラーで終わることはありません。

Active Directory グループポリシーで、または Microsoft SCCM などの電子ソフトウェア配布ソフトウェア (ESD) を使用してスクリプトを実行できます。

養子縁組

最初のインストールと構成後、最も重要な導入フェーズの 1 つは、エンドユーザーのトレーニングとオンボーディングです。Citrix は、 エンドユーザーがCitrix Workspaceの使用を開始するために必要なすべてを含む、Citrix Workspace エンドユーザー導入リソースのリストを用意しました 。導入スケジュールのサンプル、メールテンプレート、チラシ、導入キットなど、 あらゆるものがツールセクションにあります

アンインストール

Windows向けCitrix Workspaceアプリをアンインストールするには、次のコマンドラインを使用します。 CitrixWorkspaceApp.exe /silent /uninstall

詳細については、 製品ドキュメントを参照してください

技術論文:Citrix Workspace アプリのクイックスタートガイド