1
1
Fork 0
mirror of https://github.com/QB64-Phoenix-Edition/QB64pe.git synced 2024-07-01 15:00:38 +00:00

Add Program Files & Program Files (x86) to _DIR$()

This change adds the Program Files and Program Files (x86) folder specifications to the `_DIR$()` function.

`Print _Dir$("program files")
Print _Dir$("program files x86")`
This commit is contained in:
Zachary Spriggs 2021-06-21 17:01:23 -04:00
parent 22134a4c83
commit 4a66dabf08

View file

@ -27029,6 +27029,24 @@ qbs *func__dir(qbs* context_in){
}
#endif
}
if (qbs_equal(qbs_ucase(context),qbs_new_txt("PROGRAMFILES"))||qbs_equal(qbs_ucase(context),qbs_new_txt("PROGRAM FILES"))){
#ifdef QB64_WINDOWS
CHAR osPath[MAX_PATH];
if(SUCCEEDED(SHGetFolderPathA(NULL,0x0026,NULL,0,osPath))){ //CSIDL_PROGRAM_FILES (%PROGRAMFILES%)
return qbs_add(qbs_new_txt(osPath),qbs_new_txt("\\"));
}
#endif
}
if (qbs_equal(qbs_ucase(context),qbs_new_txt("PROGRAMFILESX86"))||qbs_equal(qbs_ucase(context),qbs_new_txt("PROGRAMFILES X86"))||qbs_equal(qbs_ucase(context),qbs_new_txt("PROGRAM FILES X86"))||qbs_equal(qbs_ucase(context),qbs_new_txt("PROGRAM FILES 86"))||qbs_equal(qbs_ucase(context),qbs_new_txt("PROGRAM FILES (X86)"))||qbs_equal(qbs_ucase(context),qbs_new_txt("PROGRAMFILES (X86)"))||qbs_equal(qbs_ucase(context),qbs_new_txt("PROGRAM FILES(X86)"))){
#ifdef QB64_WINDOWS && _WIN64
CHAR osPath[MAX_PATH];
if(SUCCEEDED(SHGetFolderPathA(NULL,0x002a,NULL,0,osPath))){ //CSIDL_PROGRAM_FILES (%PROGRAMFILES(X86)%)
return qbs_add(qbs_new_txt(osPath),qbs_new_txt("\\"));
}
#endif
}
//general fallback location
#ifdef QB64_WINDOWS