30{
39 static const char empty[] =
"",
40 regedit[] = "regedit",
41 regedit_exe[] = "regedit.exe";
42
45
53 ok(dwCur == 1,
"Wrong length of buffer for current location: "
54 "got %d(%s) expected 1\n", dwCur, curdir);
55 ok(dwOut == 1,
"Wrong length of buffer for the recommended installation location: "
56 "got %d(%s) expected 1\n", dwOut, outBuf);
57 break;
59 ok(dwCur ==
MAX_PATH,
"Wrong length of buffer for current location: "
60 "got %d(%s) expected MAX_PATH\n", dwCur, curdir);
61 ok(dwOut ==
MAX_PATH,
"Wrong length of buffer for the recommended installation location: "
62 "got %d(%s) expected MAX_PATH\n", dwOut, outBuf);
63 break;
64 default:
65 ok(0,
"Got unexpected return value %x\n",
ret);
66 }
67
69 trace(
"GetWindowsDirectoryA failed\n");
70 else {
71 sprintf(appdir,
"%s\\regedit.exe", windir);
73 trace(
"GetFileAttributesA(%s) failed\n", appdir);
74 else {
82 ok(dwCur == 1 +
strlen(windir),
"Wrong length of buffer for current location: "
83 "got %d(%s) expected %d\n", dwCur, curdir,
lstrlenA(windir)+1);
84 ok(dwOut == 1,
"Wrong length of buffer for the recommended installation location: "
85 "got %d(%s) expected 1\n", dwOut, outBuf);
86 break;
88 ok(dwCur ==
MAX_PATH,
"Wrong length of buffer for current location: "
89 "got %d(%s) expected MAX_PATH\n", dwCur, curdir);
90 ok(dwOut ==
MAX_PATH,
"Wrong length of buffer for the recommended installation location: "
91 "got %d(%s) expected MAX_PATH\n", dwOut, outBuf);
92 break;
93 default:
94 ok(0,
"Got unexpected return value %x\n",
ret);
95 }
96
104 ok(dwCur == 1 +
strlen(windir),
"Wrong length of buffer for current location: "
105 "got %d(%s) expected %d\n", dwCur, curdir,
lstrlenA(windir)+1);
106 ok(dwOut == 1,
"Wrong length of buffer for the recommended installation location: "
107 "got %d(%s) expected 1\n", dwOut, outBuf);
108 break;
110 ok(dwCur ==
MAX_PATH,
"Wrong length of buffer for current location: "
111 "got %d(%s) expected MAX_PATH\n", dwCur, curdir);
112 ok(dwOut ==
MAX_PATH,
"Wrong length of buffer for the recommended installation location: "
113 "got %d(%s) expected MAX_PATH\n", dwOut, outBuf);
114 break;
115 default:
116 ok(0,
"Got unexpected return value %x\n",
ret);
117 }
118 }
119 }
124 ok(0,
"GetSystemDirectoryA, SHGetSpecialFolderPathA, GetTempPathA or GetTempFileNameA failed\n");
125 else {
131 }
132
140 ok(dwOut == 1,
"Wrong length of buffer for the recommended installation location"
141 "got %d(%s) expected 1\n", dwOut, outBuf);
142 break;
144 ok(dwOut ==
MAX_PATH,
"Wrong length of buffer for the recommended installation location"
145 "got %d(%s) expected MAX_PATH\n", dwOut, outBuf);
146 break;
147 default:
149 }
150
157 ok(dwOut == 1 +
strlen(windir),
"Wrong length of buffer for current location: "
158 "got %d(%s) expected %d\n", dwOut, outBuf,
lstrlenA(windir)+1);
159
166 ok(dwOut == 1 +
strlen(appdir),
"Wrong length of buffer for current location: "
167 "got %d(%s) expected %d\n", dwOut, outBuf,
lstrlenA(appdir)+1);
168
169
174
179
184
189
194
199
200
204 ok(!
ret,
"Wrong return value got %x expected 0\n",
ret);
205
209 ok(!
ret,
"Wrong return value got %x expected 0\n",
ret);
210
215
220
225
230
231
236
241
246
251
256
261
262
266 ok(!
ret,
"Wrong return value got %x expected 0\n",
ret);
267
271 ok(!
ret,
"Wrong return value got %x expected 0\n",
ret);
272
277
280 ret =
VerFindFileA(0,
"doesnotexist.exe",
NULL,
"C:\\random_path_does_not_exist", curdir, &dwCur, outBuf, &dwOut);
282
287
292
297
302
304 }
305}
ACPI_SIZE strlen(const char *String)
static const WCHAR empty[]
BOOL WINAPI DeleteFileA(IN LPCSTR lpFileName)
DWORD WINAPI GetFileAttributesA(LPCSTR lpFileName)
UINT WINAPI GetWindowsDirectoryA(OUT LPSTR lpBuffer, IN UINT uSize)
BOOL WINAPI SetCurrentDirectoryA(IN LPCSTR lpPathName)
DWORD WINAPI GetTempPathA(IN DWORD nBufferLength, OUT LPSTR lpBuffer)
UINT WINAPI GetSystemDirectoryA(OUT LPSTR lpBuffer, IN UINT uSize)
BOOL WINAPI SHGetSpecialFolderPathA(HWND hwndOwner, LPSTR szPath, int nFolder, BOOL bCreate)
DWORD WINAPI VerFindFileA(DWORD flags, LPCSTR lpszFilename, LPCSTR lpszWinDir, LPCSTR lpszAppDir, LPSTR lpszCurDir, PUINT lpuCurDirLen, LPSTR lpszDestDir, PUINT lpuDestDirLen)
UINT WINAPI GetTempFileNameA(IN LPCSTR lpPathName, IN LPCSTR lpPrefixString, IN UINT uUnique, OUT LPSTR lpTempFileName)
int WINAPI lstrlenA(LPCSTR lpString)
#define memmove(s1, s2, n)
#define sprintf(buf, format,...)
_CRT_RESTORE_GCC_WARNINGS _CRT_DISABLE_GCC_WARNINGS _Check_return_ _CRTIMP _CONST_RETURN char *__cdecl strrchr(_In_z_ const char *_Str, _In_ int _Ch)
#define CSIDL_PROGRAM_FILES
#define VFFF_ISSHAREDFILE
#define INVALID_FILE_ATTRIBUTES