我正在經歷學習C++的過程,所以我正在製作一些程序/工具來在計算機上執行某些簡單的操作。在這個例子中,我創建了一個程序來定位計算機上的瀏覽器(它將用於清除瀏覽器cookie等)。有可能更高級的方式更有效地做到這一點,但我現在試圖儘可能簡單。到目前爲止,我試圖找出目錄「C:\ Program Files(x86)\ Google \ Chrome」是否存在。我通過使用getenv ("Program Files (x86)"
獲得程序文件目錄的地址,但是如何在添加地址的其餘部分之後? 因爲變量是const char *(bool PathIsDirectory()需要const char *作爲參數),所以我不能使用+運算符進行連接。Const char concatenation和getenv()
std::cout << "Searching for browsers..." << std::endl;
const char *chromePath;
chromePath = getenv ("ProgramFiles(x86)");
bool result = PathIsDirectory(chromePath);
if(result == true)
{
std::cout << "-- Google Chrome - FOUND" << std::endl;
}
else
{
std::cout << "-- Google Chrome - NOT FOUND" << std::endl;
}
你真的可以通過'getenv'獲得'ProgramFiles'的路徑嗎? 'getenv'用於檢索環境變量。 – ForceBru
@ForceBru據此耶:http://stackoverflow.com/questions/9594066/how-to-get-program-files-x86-env-variable – vu1p3n0x
我懷疑'ProgramFiles(x86)'表示一個有效的環境變量。 –