none
リモートデスクトップ接続時におけるシステム環境変数の展開について RRS feed

  • 質問

  • お世話になります。

    システム環境変数について困っていることがあるので,ご存知の方がいればご教示いただけると助かります。

    ■事象

    システム環境変数に既存のシステム環境変数を設定したが,

    既存のシステム環境変数が展開される時と展開されない時がある。

    ■詳細

    例えば,以下のシステム環境変数があるとします。

     A_TEST = A:\WORK;%Path%

     Z_TEST = Z:\WORK;%Path%

    上記が設定されているサーバに,自端末(クライアント)からリモートデスクトップで接続すると以下の事象が起きます。(サーバのOSはWindows Server 2016です。)

    ①サーバの電源ONしてから初めてリモート接続した場合

     set A_TEST

     ⇒A:\WORK;C:\Windows\system32;C:\Windows;・・・

     set Z_TEST

     ⇒Z:\WORK;C:\Windows\system32;C:\Windows;・・・

    ②リモート接続を一度切断し,再度クライアントからリモート接続した場合

     set A_TEST

     ⇒A:\WORK;%Path%

     set Z_TEST

     ⇒Z:\WORK;C:\Windows\system32;C:\Windows;・・・

    ②の時,「A_TEST」にある「%Path%」が展開されません。

    ■考察

    システム環境変数はアルファベット順に読み込まれている。

    従って,読み込まれる前のシステム環境変数は展開不可能。

    ■質問

    考察の認識で合っているでしょうか?

    (①で展開できている理由が分かりませんが・・・。)

    ■参考

    当方で以下の投稿は確認済みです。

    「ネストされた環境変数が展開されない事象について」

    https://social.technet.microsoft.com/Forums/ja-JP/0add404a-4157-416f-bf15-0ad455102d85/12493124731248812373124281238329872226592279325968123642363738?forum=Wcsupportja

    以上です。







    • 編集済み Ochitaro 2020年3月5日 10:18
    2020年3月4日 5:50

回答

すべての返信

  • もしかしたら参考にしているかもですが以下と似てる気がします。ただ、こちらは2008R2で更新プログラムを適用して解決してるんですよね。。。

    https://social.technet.microsoft.com/Forums/windows/ja-JP/f1ce99d1-5ac0-4308-b47d-37b55ccf1367/12522125141254012488124871245112473124631248812483125031239125?forum=windowsserver2008ja



    2020年3月5日 4:37
  • kaz8629様

    回答ありがとうございます。

    リンク先の投稿は未確認でした。ご教示いただきありがとうございます。

    リンク先の下の方の返信「・(一時的な対策として)Explorerプロセスを再起動する」にて,展開できることは確認しました。(手間にはなりますが,暫定的な対応としては良さそうです。)

    他の記事を漁っても明確な回答はない上に,Microsoftの方が「環境変数が再帰的に展開されることを保証していない」と書いてあるので,原因不明なバグなのかもしれないですね。。。



    • 編集済み Ochitaro 2020年3月9日 4:54
    2020年3月5日 6:00
  • Ochitaroさん、こんにちは。フォーラムオペレーターのFarenaです。

    TechNetフォーラムにご投稿くださいましてありがとうございます。

     

    投稿いただいた内容を拝見しました。

    問題のスクリーンショット等、詳細な状況を共有いただくことで他のユーザー様よりのご意見が集まりやすくなります。

    例えばクライアントとリモートシステムのバージョン、モートデスクトップ接続のプログラム、具体的な環境設定のスクリーンショットなど提供すれば、再現性のある現象かどうかを確認します。

     

    宜しくお願い致します。


    "Windows 10 Installation, Setup, and Deployment" forum will be migrating to a new home on Microsoft Q&A (Preview)!
    We invite you to post new questions in the "Windows 10 Installation, Setup, and Deployment" forum’s new home on Microsoft Q&A (Preview)!
    For more information, please refer to the sticky post.

    2020年3月6日 8:14
    モデレータ
  • チャブーンです。

    この件ですが、よくわからないのですが、「A_TEST = ...」はスクリプトで設定しているのですか?ログオンスクリプトで設定している、というならですが、%PATH%値が読み込まれる前にスクリプトが動作しているから、の可能性が高いでしょう。したのグループポリシーを有効にして、試してみる方法はあると思います。

    https://support.microsoft.com/ja-jp/help/305293/description-of-the-windows-fast-logon-optimization-feature


    フォーラムは有償サポートとは異なる「コミュニティ」です。フォーラムでご質問頂くにあたっての注意点 をご一読のうえ、お楽しみください。

    2020年3月8日 5:08
  • チャブーン様

    回答いただきありがとうございます。

    >「A_TEST = ...」はスクリプトで設定しているのですか?

    ⇒A_TESTは「システム環境変数」に定義していて,「BAT」ファイル内にて使用しています(「BAT」ファイル内では「%A_TEST%」となってます)。

    「BAT」がうまく動作せず,詳しく調査していく内に「%Path%の未展開」に行きつきました。(Z_TESTで定義し直せば良いのでは?ともなりますが,%Path%を展開できない原因が分からない以上,Z_TESTでもA_TEST同様の事象が起きるのではと危惧しています。)

     現状,A_TESTはユーザ環境変数であればシステム環境変数側のPathは常に展開できているため,ユーザ環境変数に定義しています。

    また,リンク先にあったグループポリシー「コンピューターの起動およびログオンで常にネットワークを待つ」も有効にした上でOS再起動もしましたが,結果は変わらずでした…。









    • 編集済み Ochitaro 2020年3月9日 4:52
    2020年3月9日 2:45
  • Farena様

    回答いただきありがとうございます。

    アカウントを作成したばかりの影響なのか,画像の投稿ができないのですが,詳細は以下の通りです。


    (1)環境

    ・サーバ情報

     OS:Windows Server 2016

    ・クライアント情報

     OS:Windows10


    ・クライアントからサーバへの接続:リモートデスクトップ(mstsc)


    (2)事象の流れ

    ①サーバのシステム環境変数に以下を登録。

     A_TEST = A:\WORK;%Path%

     Z_TEST = Z:\WORK;%Path%

    ※レジストリエディタにて,種類が「REG_EXPAND_SZ」になっていることを確認済み。

    ②サーバのOSを再起動。


    ③クライアントからサーバへリモート接続する。


    ④サーバにてコマンドプロンプトを起動し,以下のコマンドを実行。

     set A_TEST

     ⇒A:\WORK;C:\Windows\system32;C:\Windows;・・・

     set Z_TEST

     ⇒Z:\WORK;C:\Windows\system32;C:\Windows;・・・


    ⑤リモート接続を一度切断し,再度クライアントからサーバへリモート接続する。


    ⑥サーバにてコマンドプロンプトを起動し,以下のコマンドを実行。

     set A_TEST

     ⇒A:\WORK;%Path% ←「%Path%」が展開できない。

     set Z_TEST

     ⇒Z:\WORK;C:\Windows\system32;C:\Windows;・・・

    以上です。






    • 編集済み Ochitaro 2020年3月9日 5:41
    2020年3月9日 4:28
  • 詳細な状況をご提供いただきありがとうございます

     

    ※スクリーンショットの投稿については以下を参照してください

    本文に画像やリンクを含むことが出来ませんというエラーについて

     

    環境について、ドメインそれともワークグループですか。


    "Windows 10 Installation, Setup, and Deployment" forum will be migrating to a new home on Microsoft Q&A (Preview)!
    We invite you to post new questions in the "Windows 10 Installation, Setup, and Deployment" forum’s new home on Microsoft Q&A (Preview)!
    For more information, please refer to the sticky post.

    2020年3月10日 7:41
    モデレータ
  • Farena様

    スクリーンショットの投稿について,ご教示ありがとうございます。

    環境について、ドメインそれともワークグループですか。

    ⇒ドメインですが,ワークグループでも同じ事象が起きます。




    • 編集済み Ochitaro 2020年3月10日 8:29
    2020年3月10日 8:13
  • ご返信ありがとうございます。

     

    デフォルトでユーザシステム環境変数を設定し、再現実験をしましたが

    結果は展開されないことでした。

     

    可能であれば、詳細環境変数の設定のスクリーンショットを提供していただけませんか。

    こちらはまた研究します。


    Please remember to mark the replies as answers if they help.
    "Windows 10 Installation, Setup, and Deployment" forum will be migrating to a new home on Microsoft Q&A (Preview)!
    We invite you to post new questions in the "Windows 10 Installation, Setup, and Deployment" forum’s new home on Microsoft Q&A (Preview)!
    For more information, please refer to the sticky post.


    2020年3月12日 9:33
    モデレータ
  • Farena様

    連絡遅くなりました。

    まだ画像の添付ができないので,リンクを貼り付けます。

    お手数おかけしますが,よろしくお願いいたします。

    ※A_TESTとZ_TESTをシステム環境変数に定義して,他はOSインストール時のままです。

    環境変数①

    https://social.technet.microsoft.com/Forums/getfile/1568024

    環境変数②

    https://social.technet.microsoft.com/Forums/getfile/1568025

    環境変数③

    https://social.technet.microsoft.com/Forums/getfile/1568026

    Path内訳

    https://social.technet.microsoft.com/Forums/getfile/1568027





    • 編集済み Ochitaro 2020年3月23日 11:29
    2020年3月17日 6:59