アプリ版:「スタンプのみでお礼する」機能のリリースについて

1.設定(コントロールパネル)の「システムのプロパティ」(添付図)の環境変数ボタンを押して表示した環境変数

2.コマンドプロンプトで setコマンドを実行して(全ての環境変数を表示させるために setコマンドのみの実行)表示した環境変数

上の1と2の個数が異なるのは何故でしょうか?明らかに、setコマンドの方が多いです。

また、1を2に一致させる方法、および2を1に一致させる方法はありますか。(setコマンドにオプションを付けて1に一致させる方法しかないような気がしますが・・・)

よろしくお願いします。

「環境変数の個数の違い」の質問画像

A 回答 (2件)

やれなくはないけど、やる意味が無い(下手すると悪影響がある)ことです。




まず、環境変数の仕組から。
A.プログラム実行時に、呼び出し側に内容が、呼び出され側にコピーされる。
B.プログラム中に、参照、変更、追加できる。
 呼び出された側で変更しても、(元のコピーなので)呼び出し側には影響しない。

その例の場合、 1. は「呼び出し側」、 2.は「呼び出され側」です。
コマンドプロンプトは、 1.の内容をコピーした上、コマンドプロンプトで必要とする環境変数を追加しています。
この追加分は、コマンドプロンプト中(あるいは、コマンドプロンプトを呼び出し元として実行するプログラム)で使うもので、システム全体で設定しても使いません。

また、「自動的に設定される環境変数」を、自分で明示的に設定してしまうと、本来の「自動設定」機能が失なわれてしまいます
https://oshiete.goo.ne.jp/qa/5202707.html
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2019/06/01 21:27

setコマンドでは、PCに対する設定とユーザーに対する設定が合わせて表示されるので、


どうしても長くなります。
    • good
    • 1
この回答へのお礼

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

いわゆる「ユーザー環境変数」と「システム環境変数」ですよね。

いや、2つとも考慮しても、setコマンドの方が多いんですよ。
setコマンドは、「自分以外のユーザー環境変数」も表示するのかな・・・?

お礼日時:2019/05/31 12:06

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!