暫時修改環境變數 |
答題得分者是:senso
|
dadai
一般會員 ![]() ![]() 發表:29 回覆:31 積分:12 註冊:2009-01-17 發送簡訊給我 |
各位前輩們
小弟又來造次了 小弟想要在自己的程式執行的時候 暫時修改環境變數 執行結束之後就把環境變數改回來 目前有找到幾個方式: 1. 用command line下set,新增資料到環境變數。 (但是用這個方式我不知道什麼時候修改的生命週期是什麼時候) 2. 程式持行前先用GetEnvironmentVariable把本來的資訊記起來,用 SetEnvironmentVariable 設定。程式結束之後再寫回本來的資訊。但是執行期間可能會影響其他會讀取環境變數的程式 想請教前輩們 那一種方式比較合適嗎? 或是有其他更好的方法? 編輯記錄
taishyang 重新編輯於 2011-02-21 20:49:42, 註解 歸類成[問題]‧
|
dadai
一般會員 ![]() ![]() 發表:29 回覆:31 積分:12 註冊:2009-01-17 發送簡訊給我 |
再補充一個問題
我的問題好多....Orz 我用下列方式無法得到環境變數的PATH 得到的結果都是空的 [code cpp] const int tmpSize = 128; char* tmpBuf = new char [tmpSize]; GetEnvironmentVariable( "Path", tmpBuf, tmpSize ); ShowMessage( tmpBuf ); delete tmpBuf; [/code] 但是用下面這個方式卻可以 [code cpp] ShowMessage( GetEnvironmentVariable("Path") ); [/code] 我的開發環境是 BCB2009 我看BCB似乎有把 GetEnvironmentVariable 包裝為自己的 function 這樣子呼叫會呼叫到 GetEnvironmentVariableA 雖然已經有一個方式可以用了 但是畢竟不是標準的WinAPI 我想請教一下該怎麼才能正確的使用這個API |
senso
高階會員 ![]() ![]() ![]() ![]() 發表:5 回覆:126 積分:226 註冊:2003-11-27 發送簡訊給我 |
|
dadai
一般會員 ![]() ![]() 發表:29 回覆:31 積分:12 註冊:2009-01-17 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |