| @@ -9,6 +9,11 @@ | |||||
| #include <pwd.h> | #include <pwd.h> | ||||
| #endif | #endif | ||||
| #if ARCH_WIN | |||||
| #include <Windows.h> | |||||
| #include <Shlobj.h> | |||||
| #endif | |||||
| namespace rack { | namespace rack { | ||||
| @@ -76,9 +81,14 @@ std::string assetLocal(std::string filename) { | |||||
| path += "/" + filename; | path += "/" + filename; | ||||
| #endif | #endif | ||||
| #if ARCH_WIN | #if ARCH_WIN | ||||
| // TODO | |||||
| // Use ~/My Documents/Rack or something | |||||
| path = "./" + filename; | |||||
| // Get My Documents folder | |||||
| char buf[MAX_PATH]; | |||||
| HRESULT result = SHGetFolderPath(NULL, CSIDL_MYDOCUMENTS, NULL, SHGFP_TYPE_CURRENT, buf); | |||||
| assert(result == S_OK); | |||||
| path = buf; | |||||
| path += "/Rack"; | |||||
| CreateDirectory(path.c_str(), NULL); | |||||
| path += "/" + filename; | |||||
| #endif | #endif | ||||
| #if ARCH_LIN | #if ARCH_LIN | ||||
| // TODO | // TODO | ||||
| @@ -10,9 +10,15 @@ | |||||
| using namespace rack; | using namespace rack; | ||||
| int main(int argc, char* argv[]) { | int main(int argc, char* argv[]) { | ||||
| char *cwd = getcwd(NULL, 0); | |||||
| printf("Current working directory is %s\n", cwd); | |||||
| free(cwd); | |||||
| { | |||||
| char *cwd = getcwd(NULL, 0); | |||||
| printf("Current working directory: %s\n", cwd); | |||||
| free(cwd); | |||||
| std::string globalDir = assetGlobal(""); | |||||
| std::string localDir = assetLocal(""); | |||||
| printf("Global directory: %s\n", globalDir.c_str()); | |||||
| printf("Local directory: %s\n", localDir.c_str()); | |||||
| } | |||||
| pluginInit(); | pluginInit(); | ||||
| engineInit(); | engineInit(); | ||||