Win32OperatingSystem.st
changeset 23150 047b878c8123
parent 23149 a98c7a9eac95
child 23257 7aaf6920019d
equal deleted inserted replaced
23149:a98c7a9eac95 23150:047b878c8123
  6146 #if 1 // only change to 0 if all systems/compiles support GetSystemWow64DirectoryW
  6146 #if 1 // only change to 0 if all systems/compiles support GetSystemWow64DirectoryW
  6147     // starting with Windows 8, this:
  6147     // starting with Windows 8, this:
  6148     //    GetSystemWow64DirectoryW(&fileTime);
  6148     //    GetSystemWow64DirectoryW(&fileTime);
  6149     // can be called directly.
  6149     // can be called directly.
  6150     {
  6150     {
  6151 	typedef VOID (WINAPI *P_GetSystemWow64DirectoryW)(LPTSTR, unsigned int);
  6151 	typedef unsigned int (WINAPI *P_GetSystemWow64DirectoryW)(LPTSTR, unsigned int);
  6152 	static P_GetSystemWow64DirectoryW pGetSystemWow64DirectoryW = NULL;
  6152 	static P_GetSystemWow64DirectoryW pGetSystemWow64DirectoryW = NULL;
  6153 	static int didCheck = 0;
  6153 	static int didCheck = 0;
  6154 
  6154 
  6155 	if (pGetSystemWow64DirectoryW == NULL) {
  6155 	if (pGetSystemWow64DirectoryW == NULL) {
  6156 	    if (!didCheck) {
  6156 	    if (!didCheck) {
  6161 
  6161 
  6162 		didCheck = 1;
  6162 		didCheck = 1;
  6163 	    }
  6163 	    }
  6164 	}
  6164 	}
  6165 
  6165 
  6166 	__rslt = (*pGetSystemWow64DirectoryW)(buffer, MAXPATHLEN);
  6166 	if (pGetSystemWow64DirectoryW != NULL) {
       
  6167 	    __rslt = nil;
       
  6168 	} else {
       
  6169 	    __rslt = (*pGetSystemWow64DirectoryW)(buffer, MAXPATHLEN);
       
  6170 	}
  6167     }
  6171     }
  6168 #else
  6172 #else
  6169     __rslt = GetSystemWow64DirectoryW(buffer, MAXPATHLEN);
  6173     __rslt = GetSystemWow64DirectoryW(buffer, MAXPATHLEN);
  6170 #endif
  6174 #endif
  6171     if (__rslt == TRUE) {
  6175     if (__rslt != nil) {
  6172 	rslt = __mkStringOrU16String_maxlen(buffer, MAXPATHLEN);
  6176 	rslt = __mkStringOrU16String_maxlen(buffer, MAXPATHLEN);
  6173     } else {
       
  6174 	rslt = false;
       
  6175     }
  6177     }
  6176 %}.
  6178 %}.
  6177     ^ rslt
  6179     ^ rslt
  6178 
  6180 
  6179     "Modified: / 11-02-2014 / 21:18:20 / cg"
  6181     "Modified: / 11-02-2014 / 21:18:20 / cg"