ProcessStartInfo.EnvironmentVariables(類型StringDictionary
)中的環境變量始終設置爲小寫,當我在其中插入某些內容時。例如:C#System.Diagnostics.ProcessStartInfo EnvironmentVariables不區分大小寫?
proc.StartInfo.EnvironmentVariables.Clear();
proc.StartInfo.EnvironmentVariables.Add("REDIRECT_STATUS", "");
// [snipped more variables being added here]
proc.Start();
在這個過程中現在有一個redirect_status
,而不是REDIRECT_STATUS
因爲我想要的。這會導致問題。
我已經讀過其他地方,你可以通過製作一個批處理文件來解決這個問題,但是這不適用於我的情況,因爲這意味着被用作CGI(這個代碼可能被稱爲10次第二個。)
有沒有辦法讓EnvironmentVariables
不區分大小寫,只讓我去全部大寫?
這是一個Windows應用程序,但是,應用程序我打電話是PHP的CGI,如果你請求$ _SERVER ['SOMETHING'],它是區分大小寫的。 – Codecat 2012-01-04 19:35:14
你是否可以控制PHP腳本?如果是這樣,如果在http://php.net/manual/en/function.getenv.php的評論是正確的,則用getenv('FOO')替換$ _SERVER ['FOO']應該可行。 – 2012-01-04 19:43:08
我希望各種腳本都能正常工作,所以它需要上限中的環境變量。儘管如此,感謝getenv提示。不知道。 – Codecat 2012-01-04 19:48:12