アプリケーション

最終公開日 : Nov 13, 2026
注:
バージョン2511以降、Citrix Web Studio(Webベース)はCitrix Virtual Apps and Desktops™の唯一の管理コンソールです。Citrix Studio(MMCベース)はインストーラーから削除されました。この記事はWeb Studioにのみ適用されます。Citrix Studioに関する情報については、Citrix Virtual Apps and Desktops 7 2212以前の同等の記事を参照してください。

はじめに

展開でデリバリーグループのみを使用し(アプリケーショングループを使用しない)、アプリケーションをデリバリーグループに追加する場合。アプリケーショングループも使用している場合は、通常、代わりにアプリケーションをアプリケーショングループに追加します。このガイダンスにより、管理が容易になります。アプリケーションは常に少なくとも1つのデリバリーグループまたはアプリケーショングループに属している必要があります。
アプリケーションの追加ウィザードでは、1つ以上のデリバリーグループ、または1つ以上のアプリケーショングループを選択できますが、両方を同時に選択することはできません。後でアプリケーションのグループ関連付けを変更できますが(たとえば、アプリケーションをアプリケーショングループからデリバリーグループに移動するなど)、この複雑さを追加することはベストプラクティスとして推奨されません。アプリケーションは1種類のグループに保持してください。
アプリケーションを複数のグループに関連付ける場合、それらのすべてのグループでアプリケーションを表示するのに十分な権限がないと、可視性の問題が発生する可能性があります。そのような場合は、より高い権限を持つ管理者に相談するか、アプリケーションが関連付けられているすべてのグループを含むようにスコープを拡張してください。
同じ名前の2つのアプリケーション(異なるグループからのものかもしれません)を同じユーザーに公開する場合、Web StudioでApplication name (for user)プロパティを変更してください。そうしないと、ユーザーはCitrix Workspace™アプリで重複した名前を目にすることになります。
アプリケーションのプロパティ(設定)は、追加時または後で変更できます。アプリケーションが配置されるアプリケーションフォルダーも、アプリケーションの追加時または後で変更できます。
詳細については、以下を参照してください。
  • デリバリーグループの作成
  • アプリケーショングループの作成

アプリケーションの追加

デリバリーグループまたはアプリケーショングループを作成する際に、アプリケーションを追加できます。これらの手順は、デリバリーグループの作成およびアプリケーショングループの作成で詳しく説明されています。以下の手順では、グループ作成後にアプリケーションを追加する方法について説明します。
知っておくと良いこと:
  • Remote PC Accessデリバリーグループにはアプリケーションを追加できません。
  • アプリケーションの追加ウィザードを使用して、デリバリーグループまたはアプリケーショングループからアプリケーションを削除することはできません。それは別の操作です。
1つ以上のアプリケーションを追加するには:
  1. 左ペインでApplicationsを選択し、アクションバーでAdd Applicationsを選択します。
  2. Add ApplicationsウィザードがIntroductionページとともに起動します。このページは、今後のウィザード起動時に表示しないように設定できます。
  3. ウィザードは、Groups、Applications、Summaryの各ページを案内します。各ページの作業が完了したら、Summaryページに到達するまでNextをクリックします。
単一のデリバリーグループまたはアプリケーショングループにアプリケーションを追加する場合の、手順1の代替方法:
  • 1つのデリバリーグループにのみアプリケーションを追加するには: 手順1で、Web Studioの左ペインでDelivery Groupsを選択し、中央ペインでデリバリーグループを選択してから、アクションバーでAdd Applicationsを選択します。ウィザードにはGroupsページは表示されません。
  • 1つのアプリケーショングループにのみアプリケーションを追加するには: 手順1で、Web Studioの左ペインでApplicationsを選択し、中央ペインでアプリケーショングループを選択してから、アクションバーのアプリケーショングループ名の下にあるAdd Applicationsエントリを選択します。ウィザードにはGroupsページは表示されません。

Groupsページ

このページには、サイト内のすべてのデリバリーグループが一覧表示されます。アプリケーショングループも作成している場合は、アプリケーショングループとデリバリーグループが一覧表示されます。どちらかのグループを選択できますが、両方のグループを選択することはできません。つまり、アプリケーショングループとデリバリーグループの両方に同時にアプリケーションを追加することはできません。通常、アプリケーショングループを使用している場合は、デリバリーグループではなくアプリケーショングループにアプリケーションを追加します。
アプリケーションを追加するときは、少なくとも1つのデリバリーグループ(または利用可能な場合はアプリケーショングループ)の横にあるチェックボックスをオンにします。すべてのアプリケーションは、常に少なくとも1つのグループに関連付けられている必要があります。

アプリケーションページ

アプリケーションソースを表示するには、Addをクリックします。
  • スタートメニューから: 選択したデリバリーグループ内のマシンで検出されたアプリケーション。このソースを選択すると、検出されたアプリケーションのリストを含む新しいページが起動します。追加するアプリケーションのチェックボックスをオンにして、OKをクリックします。
    このソースは、(1)関連付けられたデリバリーグループがないアプリケーショングループを選択した場合、(2)関連付けられたデリバリーグループにマシンが含まれていないアプリケーショングループを選択した場合、または(3)マシンが含まれていないデリバリーグループを選択した場合は、選択できません。
  • 手動で: デリバリーグループ内のVDAまたはネットワーク上の別の場所にあるアプリケーション。このソースを選択すると、アプリケーションを追加する方法を指定する新しいページが開きます。
    • 実行可能ファイルのパス、作業ディレクトリ、オプションのコマンドライン引数、および管理者とユーザーの表示名を入力します。
    • デリバリーグループ内のVDAからアプリケーションを選択します。これを行うには、Browseをクリックし、VDAにアクセスするための資格情報を入力し、VDAに接続されるまで待機してから、VDAからアプリケーションを選択します。選択したアプリケーションのプロパティが、ページ上のフィールドに自動的に入力されます。
  • 既存: 以前にサイトに追加されたアプリケーション。このソースを選択すると、検出されたアプリケーションのリストを含む新しいページが起動します。追加するアプリケーションのチェックボックスを選択し、OKをクリックします。
    サイトにアプリケーションがない場合、このソースは選択できません。
  • アプリケーションパッケージ: App-V、MSIX、MSIX app attach、またはFlexAppアプリケーションパッケージ内のアプリケーション。このソースを選択すると、パッケージからのアプリケーションの追加ページが起動します。アプリケーションパッケージのソースを選択し、表示されたリストから追加するアプリケーションを選択して、OKを選択します。詳しくは、「アプリパッケージの展開と配信」を参照してください。
  • アプリケーショングループ: アプリケーショングループ。このソースを選択すると、アプリケーショングループのリストを含む新しいページが起動します。(表示には各グループのアプリケーションもリストされますが、個々のアプリケーションではなくグループのみを選択できます。) 選択したグループ内の現在および将来のすべてのアプリケーションが追加されます。追加するアプリケーショングループのチェックボックスを選択し、OKをクリックします。
    (1) アプリケーショングループがない場合、または (2) 選択したデリバリーグループがアプリケーショングループをサポートしていない場合 (たとえば、静的に割り当てられたマシンを持つデリバリーグループなど)、このソースは選択できません。
表に示されているように、追加リスト内の一部のソースは、そのタイプの有効なソースがない場合、選択できません。互換性のないソース (たとえば、アプリケーショングループにアプリケーショングループを追加することはできません) はリストに含まれません。選択したグループに既に追加されているアプリケーションは選択できません。
このページから、または後で、アプリケーションのプロパティ (設定) を変更できます。
デフォルトでは、追加されたアプリケーションはApplicationsという名前のアプリケーションフォルダーに配置されます。このページから、または後で、アプリケーションを変更できます。アプリケーションを追加しようとして、同じ名前のアプリケーションが同じフォルダーに存在する場合、追加しようとしているアプリケーションの名前を変更するよう求められます。提示された新しい名前を受け入れるか、拒否してアプリケーションの名前を変更するか、別のフォルダーを選択できます。たとえば、Applicationsフォルダーにappが既に存在し、そのフォルダーにappという名前の別のアプリケーションを追加しようとすると、新しい名前app_1が提示されます。

概要ページ

10個以下のアプリケーションを追加する場合、それらの名前は追加するアプリケーションにリストされます。10個を超えるアプリケーションを追加する場合、合計数が指定されます。
概要情報を確認し、**「完了」**をクリックします。

アプリケーションのグループ関連付けを変更する

アプリケーションを追加した後、そのアプリケーションが関連付けられているデリバリーグループとアプリケーショングループを変更できます。
アプリケーションを別のグループにドラッグできます。これは、アクションバーのコマンドを使用する代替手段です。
アプリケーションがアプリケーショングループを使用するか直接的に複数のデリバリーグループに関連付けられている場合、グループの優先順位を使用して、複数のグループが評価される順序を指定できます。アクセスポリシー、ユーザーリスト、スマートアクセスタグなどの要因に基づいてグループを考慮対象から除外でき、グループから選択される特定のマシンは、ゾーン設定、起動準備、タグ制限などの要因によって影響を受ける可能性があります。デフォルトでは、すべてのグループの優先順位は0 (最高) です。デリバリーグループの優先順位が同じ場合、最も負荷の低いデリバリーグループがアプリケーションの起動に選択されます。この場合、垂直ロードバランシングは考慮されません。
アプリケーションは、アプリケーションを配信できる共有 (プライベートではない) マシンを含むデリバリーグループに関連付けることができます。また、(1) デリバリーグループに共有マシンが含まれており、XenDesktop 7.xの7.9より前のバージョンで作成された場合、および (2) Edit delivery group権限がある場合、デスクトップのみを配信する共有マシンを含むデリバリーグループを選択することもできます。プロパティダイアログがコミットされると、デリバリーグループの種類は自動的にdesktops and applicationsに変換されます。
  1. Web Studioにサインインし、左側のペインでアプリケーションを選択し、アプリケーションを選択します。
  2. アクションバーでプロパティを選択します。
  3. グループページを選択します。
    • グループを追加するには、追加をクリックし、アプリケーショングループまたはデリバリーグループを選択します。(アプリケーショングループを作成していない場合、唯一のエントリはデリバリーグループです。) 次に、利用可能なグループを1つ以上選択します。アプリケーションと互換性のないグループ、またはすでにアプリケーションに関連付けられているグループは選択できません。
    • グループを削除するには、1つ以上のグループを選択し、削除をクリックします。グループの関連付けを削除した結果、アプリケーションがどのグループとも関連付けられなくなる場合、アプリケーションが削除されることを警告されます。
    • グループの優先度を変更するには、グループを選択し、優先度の編集をクリックします。優先度を選択し、OKをクリックします。
  4. 完了したら、適用をクリックして変更を適用しウィンドウを開いたままにするか、OKをクリックして変更を適用しウィンドウを閉じます。

アプリケーションの複製、有効化または無効化、名前の変更、または削除

次のアクションが利用可能です。
  • 複製: 異なるパラメーターまたはプロパティを持つ別のバージョンを作成するために、アプリケーションを複製したい場合があります。アプリケーションを複製すると、一意のサフィックスで自動的に名前が変更され、元のアプリケーションの隣に配置されます。また、アプリケーションを複製してから別のグループに追加したい場合もあります。(複製後、アプリケーションを移動する最も簡単な方法はドラッグすることです。)
  • 有効化または無効化: アプリケーションの有効化と無効化は、デリバリーグループまたはアプリケーショングループの有効化と無効化とは異なるアクションです。
  • 名前の変更: 一度に1つのアプリケーションのみ名前を変更できます。アプリケーションの名前を変更しようとして、同じ名前のアプリケーションが同じフォルダーまたはグループに存在する場合、別の名前を指定するように求められます。
  • 削除: アプリケーションを削除すると、関連付けられていたデリバリーグループおよびアプリケーショングループから削除されますが、元々アプリケーションを追加するために使用されたソースからは削除されません。アプリケーションの削除は、デリバリーグループまたはアプリケーショングループから削除するのとは異なるアクションです。
アプリケーションを複製、有効化、無効化、名前変更、または削除するには:
  1. 左側のペインでアプリケーションを選択します。
  2. 中央のペインで1つ以上のアプリケーションを選択し、アクションバーで適切なタスクを選択します。
  3. プロンプトが表示されたら、アクションを確認します。

デリバリーグループからアプリケーションを削除する

アプリケーションは、少なくとも1つのデリバリーグループまたはアプリケーショングループに関連付けられている(属している)必要があります。アプリケーションをデリバリーグループから削除しようとしたときに、そのアプリケーションがどのデリバリーグループまたはアプリケーショングループとも関連付けがなくなる場合、続行するとアプリケーションが削除されることが通知されます。その場合、そのアプリケーションを配信したい場合は、有効なソースから再度追加する必要があります。
  1. 左ペインでデリバリーグループを選択します。
  2. デリバリーグループを選択します。下部中央ペインのアプリケーションタブで、削除するアプリケーションを選択します。
  3. アクションバーからアプリケーションの削除を選択します。
  4. 削除を確認します。

アプリケーショングループからアプリケーションを削除する

アプリケーションは、少なくとも1つのデリバリーグループまたはアプリケーショングループに属している必要があります。アプリケーションをアプリケーショングループから削除しようとしたときに、そのアプリケーションがどのグループにも属さなくなる場合、続行するとアプリケーションが削除されることが通知されます。その場合、そのアプリケーションを配信したい場合は、有効なソースから再度追加する必要があります。
  1. 左ペインでアプリケーションを選択します。
  2. 中央ペインでアプリケーショングループを選択し、1つ以上のアプリケーションを選択します。
  3. アクションバーでアプリケーショングループから削除を選択します。
  4. 削除を確認します。

アプリケーションのプロパティを変更する

一度に1つのアプリケーションのプロパティのみを変更できます。
アプリケーションのプロパティを変更するには:
  1. 左側のペインで を選択します。
  2. アプリケーションを選択し、アクションバーで を選択します。
  3. 変更するプロパティが含まれるページを選択します。
  4. 完了したら、 をクリックして変更を適用し、ウィンドウを開いたままにするか、 をクリックして変更を適用してウィンドウを閉じます。
次のリストでは、ページが括弧内に表示されています。
プロパティ ページ
シトリックス ワークスペース アプリでアプリケーションが表示されるカテゴリまたはフォルダー 配信
コマンドライン引数。「公開アプリケーションへのパラメーターの受け渡し」を参照してください。 場所
アプリケーションが利用可能なデリバリーグループとアプリケーショングループ グループ
説明 識別
ファイル名拡張子とファイルの種類のアソシエーション:アプリケーションが自動的に開く拡張子 ファイルの種類のアソシエーション
アイコン 配信
StoreFront™のキーワード 識別
制限。「アプリケーション制限の構成」を参照してください。(#configure-application-limits) 配信
名前: ユーザーおよび管理者に表示される名前 識別
実行可能ファイルへのパス。「公開アプリケーションへのパラメーターの受け渡し」を参照してください。(#pass-parameters-to-published-applications) 場所
ユーザーのデスクトップ上のショートカット: 有効または無効 配信
可視性: Citrix Workspaceアプリでアプリケーションを表示できるユーザーを制限します。非表示のアプリケーションでも起動は可能です。利用不可かつ非表示にするには、別のグループに追加します。 可視性の制限
作業ディレクトリ 場所
アプリケーションの変更は、現在のアプリケーションユーザーがセッションからログオフするまで有効にならない場合があります。

アプリケーション制限を構成する

アプリケーションの使用状況を管理するために、アプリケーション制限を構成します。たとえば、アプリケーション制限を使用して、アプリケーションに同時にアクセスするユーザーの数を管理できます。同様に、アプリケーション制限は、リソースを大量に消費するアプリケーションの同時インスタンスの数を管理するためにも使用できます。この制限は、サーバーのパフォーマンスを維持し、サービスの劣化を防ぐのに役立ちます。
この機能は、Controller によって仲介されるアプリケーション起動の数(Citrix Workspace アプリや StoreFront からの起動など)を制限するものであり、他の方法で起動できる実行中のアプリケーションの数を制限するものではありません。これは、アプリケーション制限が同時使用を管理する際に管理者を支援するものの、すべてのシナリオで強制力を持つわけではないことを意味します。たとえば、Controller が停止モードの場合、アプリケーション制限は適用できません。
デフォルトでは、同時に実行できるアプリケーションインスタンスの数に制限はありません。アプリケーション制限の設定はいくつかあります。それらのいずれか、またはすべてを構成できます。
  • デリバリーグループ内のすべてのユーザーによるアプリケーションの同時インスタンスの最大数。
  • デリバリーグループ内のユーザーごとのアプリケーションのインスタンス数。
  • マシンごとのアプリケーションの同時インスタンスの最大数(PowerShell のみ)。
制限が構成されている場合、ユーザーが構成された制限を超えるアプリケーションインスタンスを起動しようとすると、エラーメッセージが生成されます。複数の制限が構成されている場合、最初に到達した制限でエラーが報告されます。
アプリケーション制限の使用例:
  • 同時インスタンスの最大数制限: デリバリーグループで、アプリケーション Alpha の同時インスタンスの最大数を 15 に構成します。その後、そのデリバリーグループのユーザーは、そのアプリケーションのインスタンスを 15 個同時に実行しています。そのデリバリーグループのいずれかのユーザーが Alpha を起動しようとすると、エラーメッセージが生成されます。Alpha は、構成された同時アプリケーションインスタンス制限(15)を超えるため、起動されません。
  • ユーザーごとのインスタンス数制限: 別のデリバリーグループで、アプリケーション Beta のユーザーごとのインスタンス数オプションを有効にします。ユーザーの Tony はアプリケーション Beta を正常に起動します。その日の後半、そのアプリケーションが Tony のセッションでまだ実行されている間に、彼は Beta の別のインスタンスを起動しようとします。エラーメッセージが生成され、Beta はユーザーごとのインスタンス数制限を超えるため、起動されません。
  • 同時インスタンスの最大数とユーザーごとのインスタンス数制限: 別のデリバリーグループで、同時インスタンスの最大数を 10 に構成し、アプリケーション Delta のユーザーごとのインスタンス数オプションを有効にします。その後、そのデリバリーグループの 10 人のユーザーがそれぞれ Delta のインスタンスを実行している場合、そのデリバリーグループの他のユーザーが Delta を起動しようとすると、エラーメッセージが表示されます。Delta は起動されません。現在の 10 人の Delta ユーザーのいずれかがそのアプリケーションの 2 番目のインスタンスを起動しようとすると、エラーメッセージが表示され、2 番目のインスタンスは起動されません。
  • マシンごとの同時インスタンスの最大数とタグ制限の使用: アプリケーション Charlie には、特定のサーバーで同時に実行できるインスタンスの数を規定するライセンスおよびパフォーマンス要件があります。これらの要件は、サイト内のすべてのサーバーで同時に実行できるインスタンスの数も規定します。
    アプリケーションのインスタンス数/マシン制限は、サイト内の任意のサーバーに影響します(特定のデリバリーグループ内のマシンだけでなく)。サイトに 3 台のサーバーがあるとします。アプリケーション Charlie の場合、マシンごとのアプリインスタンス制限を 2 に構成します。したがって、サイト全体でアプリケーション Charlie のインスタンスは 6 つまでしか起動できません。(これは、3 台のサーバーそれぞれで Charlie のインスタンスが 2 つという制限です。)
    アプリケーションの使用をデリバリーグループ内の特定のコンピューターのみに制限するには(サイト全体のすべてのコンピューターでのインスタンス制限に加えて):
    • それらのマシンにタグ付け機能を使用します。
    • そのアプリケーションに対して、マシンあたりのインスタンス数の最大制限を構成します。
Controller brokering 以外の方法でアプリケーションが起動され(たとえば、Controller が停止モードの場合など)、構成された制限を超過した場合、ユーザーは制限を超過しなくなるまで十分な数のインスタンスを閉じるまで、それ以上のインスタンスを起動できません。制限を超過したインスタンスは強制的にシャットダウンされません。それらのインスタンスは、ユーザーが閉じるまで継続して実行が許可されます。
セッションローミングを無効にする場合、ユーザーあたり1インスタンスのアプリケーション制限も無効にしてください。ユーザーあたり1インスタンスのアプリケーション制限を有効にする場合、新しいデバイスで新しいセッションを許可する2つの値のいずれも構成しないでください。ローミングの詳細については、「セッション」を参照してください。
デリバリーグループあたりの最大インスタンス数制限と、ユーザーあたり1インスタンスの制限を構成するには:
  1. 左ペインで を選択し、アプリケーションを選択します。
  2. アクションバーで を選択します。
  3. ページで、次のいずれかのオプションを選択します。
    • アプリケーションの無制限の使用を許可する。同時に実行できるインスタンス数に制限はありません。これがデフォルトです。
    • アプリケーションの制限を設定する。制限の種類は2つあります。いずれか一方または両方を指定します。
      • マシンごとに同時に実行できるインスタンスの最大数を指定します。
      • ユーザーあたりアプリケーションのインスタンスを1つに制限します。
  4. 変更を適用してダイアログボックスを閉じるには をクリックし、変更を適用してダイアログボックスを開いたままにするには をクリックします。
マシンあたりの最大インスタンス数制限を構成するには(PowerShellのみ):
  • PowerShellで(Citrix Cloud™展開の場合はRemote PowerShell SDKを、オンプレミス展開の場合はPowerShell SDKを使用して)、適切な BrokerApplication コマンドレットを MaxPerMachineInstances パラメーターとともに実行します。
  • ガイダンスについては、Get-Help コマンドレットを使用してください。例:
    Get-Help Set-BrokerApplication –Parameter MaxPerMachineInstances

公開アプリケーションにパラメーターを渡す

アプリケーションのプロパティの ページを使用して、コマンドラインを入力し、公開アプリケーションにパラメーターを渡します。
公開アプリケーションをファイルの種類に関連付けると、"%*" (二重引用符で囲まれたパーセント記号とアスタリスク記号) がアプリケーションのコマンドラインの末尾に追加されます。これらの記号は、ユーザーデバイスに渡されるパラメーターのプレースホルダーとして機能します。
公開アプリケーションが期待どおりに起動しない場合は、そのコマンドラインに正しい記号が含まれていることを確認してください。デフォルトでは、"%*" の記号が追加されると、ユーザーデバイスによって提供されるパラメーターが検証されます。ユーザーデバイスによって提供されるカスタマイズされたパラメーターを使用する公開アプリケーションの場合、コマンドライン検証をバイパスするために、"%**" の記号がコマンドラインに追加されます。アプリケーションのコマンドラインにこれらの記号が表示されない場合は、手動で追加してください。
実行可能ファイルへのパスにスペースを含むディレクトリ名が含まれている場合 (例: "C:\Program Files")、そのスペースがコマンドラインの一部であることを示すために、アプリケーションのコマンドラインを二重引用符で囲みます。これを行うには、パスを二重引用符で囲み、%* の記号を別の二重引用符で囲みます。パスの閉じ引用符と %* の記号の開始引用符の間にスペースを含めるようにしてください。
たとえば、公開アプリケーションである Windows Media Player のコマンドラインは次のとおりです。
"C:\Program Files\Windows Media Player\mplayer1.exe" "%*"
注:
公開アプリケーションを起動するためのコマンドラインの最大文字数 (引数を含む) は 203 です。

公開アプリケーションでのセッションサインアウトの問題のトラブルシューティング

アプリケーションを公開する場合、公開アプリケーションのメイン実行可能ファイルのみが指定されます。ただし、一部のアプリケーションは、バックグラウンドで実行され、メインの公開アプリケーションが閉じられても対応するメイン実行可能ファイルによって閉じられない追加の (子) プロセスを生成する場合があります。追加のプロセスは、実行されるスクリプトや、Run や RunOnceKey のような特定のレジストリキーから作成されることもあります。これらのアプリケーションは、正常なサインアウトを妨げ、セッションが残存したりハングしたりする原因となり、セッションが閉じられず、ユーザーがサインアウトされない可能性があります。
この場合、Citrix Director を使用してこれらのセッションをリセットまたは終了する必要があります。
セッションが適切にサインアウトされない問題を特定し、トラブルシューティングするために、Citrix は3つのレジストリエントリを提供しています。これらの問題によりセッションが適切にログオフされないことを特定し、トラブルシューティングするプロセスは3つのステップで構成されます。

ステップ2:公開アプリケーションが追加の(子)プロセスを生成するかどうかを特定する

公開アプリケーションが正常なサインアウトを妨げていると特定されたら、次のステップは、このアプリケーションが実行時に追加のプロセスを生成するかどうかを判断することです。
公開アプリケーションが閉じられたときに、何らかのプロセスが正常なサインアウトをブロックしているかどうかを判断するには、HKCU\Software\CitrixVolatile\Seamless\Sessions\[ID]\LogoffCheckerBlockingProcess を参照してください。
次の例では、キー LogoffCheckerBlockingProcess に次のエントリが含まれています。
PhoneExperienceHost.exe
SkypeApp.exe
SkypeBackgroundHost.exe
これらのプロセスが正常なサインアウトを妨げていました。
注:
確認したいセッションの正しいセッションIDで を置き換えてください。

ステップ3:これらのプロセスを指定されたレジストリエントリに追加して、サインアウトを妨げないようにする

これらのプロセスを以下のレジストリキーに追加することで、今後のセッションでサインアウトが妨げられるのを防ぐことができます。
Add the process file name to the following registry key:
Caution! Refer to the Disclaimer at the end of this article before using the Registry Editor.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWI
Value Name:LogoffCheckSysModules
Type:REG_SZ
String:MyAppName.exe
LogoffCheckSysModules の詳細については、公開アプリケーションからの正常なログオフによりセッションがアクティブ状態になる を参照してください。

ステップバイステップのトラブルシューティングガイド

  1. テスト対象のVDAでリモートレジストリサービスを開始します。
    1. コントロールパネルで、管理ツール > サービス を選択します。
    2. Remote Registry Service を右クリックし、プロパティ を選択します。
    3. スタートアップの種類 で、ドロップダウンメニューから 自動 を選択します。
    公開アプリのレジストリ
  2. テスト対象のVDAでWindowsファイアウォールをオフにするか、ポート455を有効にする受信ファイアウォール規則を作成します。
    1. コントロールパネルで、Windows Defender Firewall > Advanced Settingsを選択します。
    2. Inbound Rulesを右クリックし、New Ruleを選択します。
    3. New Inbound Rule Wizardで、Portを選択します。
    4. Protocols and Portsページで、TCP and Specific Local Portsを選択します。ローカルポートとして445を入力します。
    5. ActionページでAllow Connectionを選択します。
    6. 新しい受信規則を適用するファイアウォールプロファイルを選択します。
    7. ファイアウォール規則に名前を付け、Finishを選択してNew Inbound Rule wizardを終了します。
    公開済みアプリのファイアウォールポート
  3. 同じドメイン上の別のVM(DC、DDC、または別のVDAでも可)から、Regeditを実行し、リモートレジストリに接続します。
    公開済みアプリのレジストリエディター
  4. テスト対象のVDAのIPアドレスを入力し、OKをクリックします。regeditツリーには、テスト対象のVDAのブランチが表示されている必要があります。
    公開済みアプリのregedit
  5. Command Prompt公開アプリケーションを開きます。
    公開済みアプリの管理
    「コマンドプロンプト」アプリがCitrix Workspaceに表示されます。
    公開されたアプリのコマンドプロンプト
  6. クライアントで接続センターを開きます。これは、開いているシームレスアプリを閉じた後、セッションがサインアウトされたときに監視するために使用されます。次の画像で、コマンドプロンプトプロセスc:\Windows\system32\cmd.exeがリモートVDIでアクティブになっていることがわかります。
    公開されたアプリの接続
  7. regeditが実行されているVDAから、次のリモートIPの場所に移動します。 HKEY_USERS\S-1-X-XX-XXXXXXXX-XXXXXXXXXXX-XXXXXXXXXX-XXXX\SOFTWARE\CitrixVolatile\Seamless\Sessions\X\
    注:
    このパスは、新しいセッションを開くたびに変更されます。
  8. ここで読み取るキーは2つあります(ここでは変更しないでください):LogoffCheckBlockingProcessとLogoffCheckerBlockingVisibleProcess。これらのキーは、サインアウトをブロックしているプログラムを表示します。最初のキーには、C:\Windows\System32\cmd.exeが表示されているはずです。これは開いたままで、まだ閉じられていないためです。
    注:
    LogoffCheckBlockingProcessとLogoffCheckerBlockingVisibleProcessは手動で編集しないでください。これらのレジストリ値を手動で編集すると、セッションが不安定になる可能性があります。
    公開されたアプリ2
  9. 右上隅のXをクリックして、Seamless CMDを終了します。
  10. 接続センターでセッションが閉じるかどうかを確認します。閉じるまでに最大30秒かかる場合があります。セッションが閉じれば、正常なサインアウトを妨げるアプリケーションやプロセスはなかったことになります。
    正常なサインアウト
  11. セッションが閉じなかった場合は、F5キーでregeditの出力を更新します。
  12. LogoffCheckBlockingProcessとLogoffCheckerBlockingVisibleProcessの内容を再度確認します。CMDは表示されなくなっているはずですが、別のプロセスがリストされているはずです。現在セッションのサインアウトをブロックしているプロセスがここに表示されている必要があります。
    この場合、コマンドプロンプトが閉じられる前に、公開されたコマンドプロンプトからNotepad.exeが開かれており、このリモートのメモ帳プロセスが正常なサインアウトを妨げています。
    レジストリエディター
  13. この実行可能ファイルのパスと、それが表示されたキーをメモし、リモートツリーの下にある次のレジストリキーに入力します。
    • LogoffCheckBlockingProcess に表示される場合: HKLM\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWILogoffCheckSysModulesInternal
    • LogoffCheckerBlockingVisibleProcess に表示される場合: HKLM\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWILogoffCheckVisibleSysModules
    注:
    キーにすでに1つ以上のエントリがある場合は、末尾にコンマを追加し、そのコンマの後に新しいエントリを配置します。
    レジストリエディター - 最終
  14. クライアントの接続センターからセッションをサインアウトし、リモートアプリケーションを再度開きます。
  15. リモートアプリケーションを閉じてから30秒以内にセッションが自動的にサインアウトされるまで、手順9~16を繰り返します。
    注:
    トラブルシューティング後、必要に応じて、リモートレジストリへのアクセスを許可するために一時的なファイアウォールの変更を元に戻します。

公開アプリケーションを開くときにWindowsの免責事項メッセージをフルサイズで表示するようにLogonUIを変更する方法

認証パススルーが発生しないシナリオでは、LogonUI ウィンドウのスケーリングが改善されました。LogonUI ウィンドウは、使用されているモニターの解像度とDPI設定に基づいてスケーリングされ、LogonUI ウィンドウ全体がクリッピングなしで表示されるようにします。
ウィンドウのサイズは、レジストリでピクセル単位で手動で設定することもできます。
  1. ファイル名を指定して実行 コマンドで regedit を使用して レジストリエディター を開きます。
  2. HKEY_LOCAL_MACHINE\Software\Citrix\CtxHook\AppInit_DLLS\Seamless Hook\にアクセスします。
  3. 2つの新しいDWORDキー、LogonUIWidth と LogonUIHeight を作成します。
  4. LogonUI ウィンドウに必要な幅と高さ(ピクセル単位)にキーの値を設定します。
    LogonUI ウィンドウのサイズを手動で設定すると、自動スケーリングは無効になります。
注:
これらのレジストリパスは2407以降で変更されました。古いレジストリ値は無視され、非推奨です。
デフォルトでは、LogonUI ウィンドウには、必要に応じてエンドユーザーがセッションから切断できるようにする閉じるボタン付きのタイトルバーが含まれています。

タイルバーを無効にする

LogonUI ウィンドウのタイルバーは、次のレジストリキーで無効にできます。
  1. ファイル名を指定して実行 コマンドで regedit を使用してレジストリエディターを開きます。
  2. HKEY_LOCAL_MACHINE\Software\Citrix\CtxHook\AppInit_DLLS\Seamless Hook\にアクセスします。
  3. 新しいDWORDキー LogonUICaption を作成し、キーの値を 0 に設定します。
    タイルバー付きのLogonUIウィンドウ (/en-us/citrix-virtual-apps-desktops/2607-ltsr/media/logonui-window-with-tilebar.png)

アプリケーションフォルダーの管理

デフォルトでは、デリバリーグループに追加する新しいアプリケーションは、Applications という名前のフォルダーに配置されます。デリバリーグループの作成時、アプリケーションの追加時、または後で別のフォルダーを指定できます。
知っておくと良いこと:
  • Applicationsフォルダーの名前を変更したり削除したりすることはできませんが、そのフォルダーに含まれるすべてのアプリケーションを、作成した他のフォルダーに移動することはできます。
  • フォルダー名には1~64文字を含めることができます。スペースも使用できます。
  • フォルダーは最大5レベルまでネストできます。
  • フォルダーにアプリケーションを含める必要はありません。空のフォルダーも許可されます。
  • フォルダーは、移動したり、作成時に別の場所を指定したりしない限り、Web Studioでアルファベット順に表示されます。
  • 同じ名前のフォルダーを複数持つことができますが、それぞれ異なる親フォルダーを持つ必要があります。同様に、同じ名前のアプリケーションを複数持つことができますが、それぞれ異なるフォルダーに存在する必要があります。
  • フォルダー内のアプリケーションを表示するには View Applications 権限が必要です。アプリケーションを含むフォルダーを削除、名前変更、または削除するには、そのフォルダー内のすべてのアプリケーションに対して Edit Application Properties 権限が必要です。
  • 以下の手順のほとんどは、Web Studio のアクションバーを使用してアクションを要求します。または、右クリックメニューを使用するか、アイテムをドラッグすることもできます。たとえば、意図しない場所にフォルダーを作成または移動した場合、ドラッグアンドドロップで正しい場所に移動できます。
  • Web Studio のすべてのノード(マシンカタログ、デリバリーグループ、アプリケーション、アプリケーショングループなど)は、バックエンドで同じフォルダーツリーを共有します。フォルダーの名前変更や移動の際に名前の競合を避けるため、異なるノード間で最上位フォルダーには一意の名前を使用してください。
    New-BrokerAdminFolder SDK コマンドレットを使用してフォルダーを作成し、それを アプリケーション ノードの下に表示させたい場合は、Set-BrokerAdminFolderMetadata コマンドレットを使用して ContainsApplications メタデータを追加する必要があります。
    例:
    Set-BrokerAdminFolderMetadata -AdminFolderId {adminFolderUid} -Name ContainsApplications -Value true
アプリケーションフォルダーを管理するには、左ペインで アプリケーション を選択します。以下のリストを参考にしてください。
  • すべてのフォルダー(ネストされたフォルダーを除く)を表示するには: フォルダーリストの上にある すべて表示 をクリックします。
  • 最上位レベル(ネストされていない)にフォルダーを作成するには: アプリケーション フォルダーを選択します。新しいフォルダーを アプリケーション 以外の既存のフォルダーの下に配置するには、そのフォルダーを選択します。次に、アクションバーで フォルダーの作成 を選択します。名前を入力します。
  • フォルダーを移動するには: フォルダーを選択し、アクションバーで フォルダーの移動 を選択します。ネストされたフォルダーが含まれていない限り、一度に移動できるフォルダーは1つだけです。(フォルダーを移動する最も簡単な方法は、ドラッグすることです。)
  • フォルダーの名前を変更するには: フォルダーを選択し、アクションバーで フォルダー名の変更 を選択します。名前を入力します。
  • フォルダーを削除するには: フォルダーを選択し、アクションバーで フォルダーの削除 を選択します。アプリケーションや他のフォルダーを含むフォルダーを削除すると、それらのオブジェクトも削除されます。アプリケーションを削除すると、デリバリーグループからのアプリケーションの割り当てが解除されます。マシンからは削除されません。
  • アプリケーションをフォルダーに移動するには: 1つ以上のアプリケーションを選択します。次に、アクションバーで アプリケーションの移動 を選択します。フォルダーを選択します。
デリバリーグループまたはアプリケーショングループを作成する際に、アプリケーション ページで追加するアプリケーションをフォルダーに配置することもできます。デフォルトでは、追加されたアプリケーションは アプリケーション フォルダーに入ります。変更 をクリックしてフォルダーを選択または作成します。

公開デスクトップでのアプリケーションのローカル起動を制御する

ユーザーが公開デスクトップ内から公開アプリケーションを起動する際、そのアプリケーションをデスクトップセッション内で起動するか、公開アプリケーションとして起動するかを制御できます。Citrix Workspace アプリは、VDA の Windows レジストリでアプリケーションのインストールパスを検索し、存在する場合はアプリケーションのローカルインスタンスを起動します。それ以外の場合は、ホストされたアプリケーションのインスタンスが起動されます。VDA にインストールされていないアプリケーションを起動すると、ホストされたアプリケーションが起動されます。詳細については、「vPrefer 起動」を参照してください。
PowerShell (Citrix Cloud展開ではRemote PowerShell SDK、オンプレミス展開ではPowerShell SDKを使用) で、このアクションを変更できます。
New-Broker Application または Set-BrokerApplication コマンドレットで、LocalLaunchDisabled オプションを使用します。例:
Set-BrokerApplication -LocalLaunchDisabled <Boolean>
デフォルトでは、このオプションの値は false (-LocalLaunchDisabled $false) です。公開デスクトップ内から公開アプリケーションを起動すると、そのデスクトップセッションでアプリケーションが起動されます。
オプションの値を true (-LocalLaunchDisabled $true) に設定すると、公開アプリケーションが起動されます。これにより、公開デスクトップから公開アプリケーションへの、個別の追加セッションが作成されます (Windows 用 Citrix Workspace アプリを使用)。
要件と制限:
  • アプリケーションの ApplicationType の値は HostedOnDesktop である必要があります。
  • このオプションは、適切なPowerShell SDKを介してのみ利用可能です。Web Studioのグラフィカルインターフェイスでは現在利用できません。
  • このオプションには、StoreFront 3.14、Citrix Receiver for Windows 4.11、および Delivery Controller 7.17 が最低限必要です。