2007/10/01(月) [n年前の日記]
#6 [windows][prog] あふからDOS窓を起動すると環境変数が変更されなくて悩む
Windows XP の環境変数 ―― たとえば Path を変更後、「ファイル名を指定して実行」→ cmd[Enter] → set[Enter] とすると、Path が変更されてることが確認できたのだけど。あふ(AFX)から cmd を起動すると、
*1
環境変数が変化していなくて首を捻る。AFX.EXE -s で起動したところから cmd を呼んでるのがいかんのか。それとも &exec なんたら\cmd.exe じゃないといかんのか。等々試してみたけど変化なし。
◎ _コマンド・プロンプトの呼出し方によっては、環境変数変更を反映してくれないケースがあります。 :
以前、FTEX でも話題になっていましたが、コマンド・プロンプトの呼出し方によっては、OS 起動後の環境変数の変更を反映してくれないケースがあります。FTEX で挙がっていたのは、ランチャー経由の呼出しの場合だけだったと思いますが、スタート・メニュー内のショートカットのプロパティーで設定したアクセスキーを叩くという、Windows では標準的といえる方法で呼出しても同様の現象が起こるようです。 ※ Windwos XP で確認これか。18574 より
◎ 過程が判った。 :
自分、あふを起動するときは、えてして常駐ソフトの TClock Light をクリックして起動してるのだけど。どうもそれが原因っぽい。TClock Light → あふ → cmd と、古いままの環境変数が継続・伝達されてしまうのだろうと。
試しに、TClock Light を終了・再起動 → あふ起動 → cmdを起動したら、環境変数の内容が新しいソレになった。コレだったのか…。
試しに、TClock Light を終了・再起動 → あふ起動 → cmdを起動したら、環境変数の内容が新しいソレになった。コレだったのか…。
◎ _環境変数の変更が即反映されない? - 戯術者の日記 / 2005-11-15 :
常駐しているランチャや起動しっぱなしのファイラやターミナルエミュレータからアプリを起動しているのが原因の可能性が高い.ランチャなどのアプリは起動時の環境変数をずっと引きずってる(ことが多い)ので,そこから起動されるアプリも環境変数変更前の環境変数になっている.ので,環境変数を変更した時は,スタートメニューやエクスプローラから常駐アプリを再起動するのがベター.なるほど…。
*1: たとえばファンクションキー定義に「cmd」と書いておくとか。
[ ツッコむ ]
以上です。