From: Nikolay Sivov Subject: [PATCH 2/4] kernel32/tests: Link to more functions directly. Message-Id: <20200922102421.1800527-2-nsivov@codeweavers.com> Date: Tue, 22 Sep 2020 13:24:19 +0300 In-Reply-To: <20200922102421.1800527-1-nsivov@codeweavers.com> References: <20200922102421.1800527-1-nsivov@codeweavers.com> Signed-off-by: Nikolay Sivov --- Only changed functions that are already used directly in other kernel32 tests. dlls/kernel32/tests/actctx.c | 4 +- dlls/kernel32/tests/environ.c | 7 +-- dlls/kernel32/tests/file.c | 38 ++++-------- dlls/kernel32/tests/pipe.c | 12 ++-- dlls/kernel32/tests/process.c | 28 ++------- dlls/kernel32/tests/timer.c | 25 ++------ dlls/kernel32/tests/virtual.c | 28 +++------ dlls/kernel32/tests/volume.c | 107 +++++++++++----------------------- 8 files changed, 71 insertions(+), 178 deletions(-) diff --git a/dlls/kernel32/tests/actctx.c b/dlls/kernel32/tests/actctx.c index 1bcb25a53fa..4a9adc15748 100644 --- a/dlls/kernel32/tests/actctx.c +++ b/dlls/kernel32/tests/actctx.c @@ -29,7 +29,6 @@ #include "oaidl.h" #include "initguid.h" -static BOOL (WINAPI *pIsDebuggerPresent)(void); static BOOL (WINAPI *pQueryActCtxSettingsW)(DWORD,HANDLE,LPCWSTR,LPCWSTR,LPWSTR,SIZE_T,SIZE_T*); static NTSTATUS(NTAPI *pRtlFindActivationContextSectionString)(DWORD,const GUID *,ULONG,PUNICODE_STRING,PACTCTX_SECTION_KEYED_DATA); @@ -2016,7 +2015,7 @@ static void test_actctx(void) test_detailed_info(handle, &detailed_info1, __LINE__); test_info_in_assembly(handle, 1, &manifest1_info, __LINE__); - if (pIsDebuggerPresent && !pIsDebuggerPresent()) + if (!IsDebuggerPresent()) { /* CloseHandle will generate an exception if a debugger is present */ b = CloseHandle(handle); @@ -2714,7 +2713,6 @@ static BOOL init_funcs(void) HMODULE hLibrary = GetModuleHandleA("kernel32.dll"); #define X(f) if (!(p##f = (void*)GetProcAddress(hLibrary, #f))) return FALSE; - X(IsDebuggerPresent); pQueryActCtxSettingsW = (void *)GetProcAddress( hLibrary, "QueryActCtxSettingsW" ); hLibrary = GetModuleHandleA("ntdll.dll"); diff --git a/dlls/kernel32/tests/environ.c b/dlls/kernel32/tests/environ.c index 1f69594fcd3..d19b8700c5f 100644 --- a/dlls/kernel32/tests/environ.c +++ b/dlls/kernel32/tests/environ.c @@ -34,20 +34,17 @@ static CHAR string[MAX_PATH]; static BOOL (WINAPI *pGetComputerNameExA)(COMPUTER_NAME_FORMAT,LPSTR,LPDWORD); static BOOL (WINAPI *pGetComputerNameExW)(COMPUTER_NAME_FORMAT,LPWSTR,LPDWORD); -static BOOL (WINAPI *pOpenProcessToken)(HANDLE,DWORD,PHANDLE); static BOOL (WINAPI *pGetUserProfileDirectoryA)(HANDLE,LPSTR,LPDWORD); static BOOL (WINAPI *pSetEnvironmentStringsW)(WCHAR *); static void init_functionpointers(void) { HMODULE hkernel32 = GetModuleHandleA("kernel32.dll"); - HMODULE hadvapi32 = GetModuleHandleA("advapi32.dll"); HMODULE huserenv = LoadLibraryA("userenv.dll"); pGetComputerNameExA = (void *)GetProcAddress(hkernel32, "GetComputerNameExA"); pGetComputerNameExW = (void *)GetProcAddress(hkernel32, "GetComputerNameExW"); pSetEnvironmentStringsW = (void *)GetProcAddress(hkernel32, "SetEnvironmentStringsW"); - pOpenProcessToken = (void *)GetProcAddress(hadvapi32, "OpenProcessToken"); pGetUserProfileDirectoryA = (void *)GetProcAddress(huserenv, "GetUserProfileDirectoryA"); } @@ -65,12 +62,12 @@ static void test_Predefined(void) * Check value of %USERPROFILE%, should be same as GetUserProfileDirectory() * If this fails, your test environment is probably not set up */ - if (pOpenProcessToken == NULL || pGetUserProfileDirectoryA == NULL) + if (pGetUserProfileDirectoryA == NULL) { skip("Skipping USERPROFILE check\n"); return; } - NoErr = pOpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &Token); + NoErr = OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &Token); ok(NoErr, "Failed to open token, error %u\n", GetLastError()); DataSize = sizeof(Data); NoErr = pGetUserProfileDirectoryA(Token, Data, &DataSize); diff --git a/dlls/kernel32/tests/file.c b/dlls/kernel32/tests/file.c index ec0e923706c..9327d0319dd 100644 --- a/dlls/kernel32/tests/file.c +++ b/dlls/kernel32/tests/file.c @@ -38,11 +38,9 @@ #undef DeleteFile /* needed for FILE_DISPOSITION_INFO */ static HANDLE (WINAPI *pFindFirstFileExA)(LPCSTR,FINDEX_INFO_LEVELS,LPVOID,FINDEX_SEARCH_OPS,LPVOID,DWORD); -static BOOL (WINAPI *pReplaceFileA)(LPCSTR, LPCSTR, LPCSTR, DWORD, LPVOID, LPVOID); static BOOL (WINAPI *pReplaceFileW)(LPCWSTR, LPCWSTR, LPCWSTR, DWORD, LPVOID, LPVOID); static UINT (WINAPI *pGetSystemWindowsDirectoryA)(LPSTR, UINT); static BOOL (WINAPI *pGetVolumeNameForVolumeMountPointA)(LPCSTR, LPSTR, DWORD); -static DWORD (WINAPI *pQueueUserAPC)(PAPCFUNC pfnAPC, HANDLE hThread, ULONG_PTR dwData); static BOOL (WINAPI *pGetFileInformationByHandleEx)(HANDLE, FILE_INFO_BY_HANDLE_CLASS, LPVOID, DWORD); static HANDLE (WINAPI *pOpenFileById)(HANDLE, LPFILE_ID_DESCRIPTOR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD); static BOOL (WINAPI *pSetFileValidData)(HANDLE, LONGLONG); @@ -95,11 +93,9 @@ static void InitFunctionPointers(void) pRtlFreeUnicodeString = (void *)GetProcAddress(hntdll, "RtlFreeUnicodeString"); pFindFirstFileExA=(void*)GetProcAddress(hkernel32, "FindFirstFileExA"); - pReplaceFileA=(void*)GetProcAddress(hkernel32, "ReplaceFileA"); pReplaceFileW=(void*)GetProcAddress(hkernel32, "ReplaceFileW"); pGetSystemWindowsDirectoryA=(void*)GetProcAddress(hkernel32, "GetSystemWindowsDirectoryA"); pGetVolumeNameForVolumeMountPointA = (void *) GetProcAddress(hkernel32, "GetVolumeNameForVolumeMountPointA"); - pQueueUserAPC = (void *) GetProcAddress(hkernel32, "QueueUserAPC"); pGetFileInformationByHandleEx = (void *) GetProcAddress(hkernel32, "GetFileInformationByHandleEx"); pOpenFileById = (void *) GetProcAddress(hkernel32, "OpenFileById"); pSetFileValidData = (void *) GetProcAddress(hkernel32, "SetFileValidData"); @@ -3149,11 +3145,8 @@ static void test_read_write(void) ok(hFile != INVALID_HANDLE_VALUE, "CreateFileA: error %d\n", GetLastError()); user_apc_ran = FALSE; - if (pQueueUserAPC) { - trace("Queueing an user APC\n"); /* verify the file is non alerable */ - ret = pQueueUserAPC(&user_apc, GetCurrentThread(), 0); - ok(ret, "QueueUserAPC failed: %d\n", GetLastError()); - } + ret = QueueUserAPC(&user_apc, GetCurrentThread(), 0); + ok(ret, "QueueUserAPC failed: %d\n", GetLastError()); SetLastError(12345678); bytes = 12345678; @@ -3192,8 +3185,7 @@ static void test_read_write(void) ok(!bytes, "bytes = %d\n", bytes); ok(user_apc_ran == FALSE, "UserAPC ran, file using alertable io mode\n"); - if (pQueueUserAPC) - SleepEx(0, TRUE); /* get rid of apc */ + SleepEx(0, TRUE); /* get rid of apc */ /* test passing protected memory as buffer */ @@ -3593,12 +3585,6 @@ static void test_ReplaceFileA(void) BOOL retok, removeBackup = FALSE; char **argv; - if (!pReplaceFileA) - { - win_skip("ReplaceFileA() is missing\n"); - return; - } - ret = GetTempPathA(MAX_PATH, temp_path); ok(ret != 0, "GetTempPathA error %d\n", GetLastError()); ok(ret < MAX_PATH, "temp path should fit into MAX_PATH\n"); @@ -3664,7 +3650,7 @@ static void test_ReplaceFileA(void) * TODO: flags are not implemented */ SetLastError(0xdeadbeef); - ret = pReplaceFileA(replaced, replacement, backup, 0, 0, 0); + ret = ReplaceFileA(replaced, replacement, backup, 0, 0, 0); ok(ret, "ReplaceFileA: unexpected error %d\n", GetLastError()); /* make sure that the backup has the size of the old "replaced" file */ hBackupFile = CreateFileA(backup, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, 0); @@ -3710,7 +3696,7 @@ static void test_ReplaceFileA(void) * TODO: flags are not implemented */ SetLastError(0xdeadbeef); - ret = pReplaceFileA(replaced, replacement, NULL, 0, 0, 0); + ret = ReplaceFileA(replaced, replacement, NULL, 0, 0, 0); ok(ret || GetLastError() == ERROR_ACCESS_DENIED, "ReplaceFileA: unexpected error %d\n", GetLastError()); @@ -3724,7 +3710,7 @@ static void test_ReplaceFileA(void) * TODO: flags are not implemented */ SetLastError(0xdeadbeef); - ret = pReplaceFileA(replaced, replacement, backup, 0, 0, 0); + ret = ReplaceFileA(replaced, replacement, backup, 0, 0, 0); ok(ret || GetLastError() == ERROR_ACCESS_DENIED, "ReplaceFileA: unexpected error %d\n", GetLastError()); if (ret) @@ -3741,7 +3727,7 @@ static void test_ReplaceFileA(void) * TODO: flags are not implemented */ SetLastError(0xdeadbeef); - ret = pReplaceFileA(replaced, replacement, backup, 0, 0, 0); + ret = ReplaceFileA(replaced, replacement, backup, 0, 0, 0); ok(ret == 0 && GetLastError() == ERROR_ACCESS_DENIED, "ReplaceFileA: unexpected error %d\n", GetLastError()); /* make sure that the replacement file still exists */ hReplacementFile = CreateFileA(replacement, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, 0); @@ -3759,7 +3745,7 @@ static void test_ReplaceFileA(void) ok(ret != 0, "GetTempFileNameA error (replacement) %#x\n", GetLastError()); ret = SetFileAttributesA(replacement, FILE_ATTRIBUTE_READONLY); ok(ret, "SetFileAttributesA: error setting to readonly %#x\n", GetLastError()); - ret = pReplaceFileA(replaced, replacement, NULL, 0, 0, 0); + ret = ReplaceFileA(replaced, replacement, NULL, 0, 0, 0); ok(GetLastError() == ERROR_ACCESS_DENIED, "ReplaceFileA: unexpected error %#x\n", GetLastError()); ret = SetFileAttributesA(replacement, FILE_ATTRIBUTE_NORMAL); ok(ret, "SetFileAttributesA: error setting to normal %#x\n", GetLastError()); @@ -3777,7 +3763,7 @@ static void test_ReplaceFileA(void) ok(hReplacedFile != INVALID_HANDLE_VALUE, "unexpected error, replaced file should be able to be opened %d\n", GetLastError()); /*Calling ReplaceFileA on an exe should succeed*/ - ret = pReplaceFileA(replaced, replacement, NULL, 0, 0, 0); + ret = ReplaceFileA(replaced, replacement, NULL, 0, 0, 0); ok(ret, "ReplaceFileA: unexpected error %d\n", GetLastError()); CloseHandle(hReplacedFile); @@ -3787,7 +3773,7 @@ static void test_ReplaceFileA(void) hReplacementFile = CreateFileA(replacement, GENERIC_READ | SYNCHRONIZE, FILE_SHARE_READ | FILE_SHARE_DELETE, NULL, OPEN_EXISTING, 0, 0); ok(hReplacementFile != INVALID_HANDLE_VALUE, "unexpected error, replacement file should be able to be opened %d\n", GetLastError()); - ret = pReplaceFileA(replaced, replacement, NULL, 0, 0, 0); + ret = ReplaceFileA(replaced, replacement, NULL, 0, 0, 0); ok(!ret, "expect failure\n"); ok(GetLastError() == ERROR_SHARING_VIOLATION, "expect ERROR_SHARING_VIOLATION, got %#x.\n", GetLastError()); CloseHandle(hReplacementFile); @@ -3800,7 +3786,7 @@ static void test_ReplaceFileA(void) * TODO: flags are not implemented */ SetLastError(0xdeadbeef); - ret = pReplaceFileA(replaced, replacement, backup, 0, 0, 0); + ret = ReplaceFileA(replaced, replacement, backup, 0, 0, 0); ok(!ret && (GetLastError() == ERROR_FILE_NOT_FOUND || GetLastError() == ERROR_ACCESS_DENIED), "ReplaceFileA: unexpected error %d\n", GetLastError()); @@ -3809,7 +3795,7 @@ static void test_ReplaceFileA(void) * TODO: flags are not implemented */ SetLastError(0xdeadbeef); - ret = pReplaceFileA(replaced, replacement, NULL, 0, 0, 0); + ret = ReplaceFileA(replaced, replacement, NULL, 0, 0, 0); ok(!ret && (GetLastError() == ERROR_FILE_NOT_FOUND || GetLastError() == ERROR_ACCESS_DENIED), "ReplaceFileA: unexpected error %d\n", GetLastError()); diff --git a/dlls/kernel32/tests/pipe.c b/dlls/kernel32/tests/pipe.c index 3c7ca06a045..91f6df34f81 100644 --- a/dlls/kernel32/tests/pipe.c +++ b/dlls/kernel32/tests/pipe.c @@ -36,7 +36,6 @@ static HANDLE alarm_event; static BOOL (WINAPI *pDuplicateTokenEx)(HANDLE,DWORD,LPSECURITY_ATTRIBUTES, SECURITY_IMPERSONATION_LEVEL,TOKEN_TYPE,PHANDLE); -static DWORD (WINAPI *pQueueUserAPC)(PAPCFUNC pfnAPC, HANDLE hThread, ULONG_PTR dwData); static BOOL (WINAPI *pCancelIoEx)(HANDLE handle, LPOVERLAPPED lpOverlapped); static BOOL (WINAPI *pGetNamedPipeClientProcessId)(HANDLE,ULONG*); static BOOL (WINAPI *pGetNamedPipeServerProcessId)(HANDLE,ULONG*); @@ -908,9 +907,10 @@ static DWORD CALLBACK serverThreadMain2(LPVOID arg) user_apc_ran = FALSE; - if (i == 0 && pQueueUserAPC) { + if (i == 0) + { if (winetest_debug > 1) trace("Queueing an user APC\n"); /* verify the pipe is non alerable */ - ret = pQueueUserAPC(&user_apc, GetCurrentThread(), 0); + ret = QueueUserAPC(&user_apc, GetCurrentThread(), 0); ok(ret, "QueueUserAPC failed: %d\n", GetLastError()); } @@ -939,7 +939,7 @@ static DWORD CALLBACK serverThreadMain2(LPVOID arg) ok(user_apc_ran == FALSE, "UserAPC ran, pipe using alertable io mode\n"); - if (i == 0 && pQueueUserAPC) + if (i == 0) SleepEx(0, TRUE); /* get rid of apc */ /* Set up next echo server */ @@ -1530,8 +1530,7 @@ static void test_CreatePipe(void) char readbuf[32]; user_apc_ran = FALSE; - if (pQueueUserAPC) - ok(pQueueUserAPC(user_apc, GetCurrentThread(), 0), "couldn't create user apc\n"); + ok(QueueUserAPC(user_apc, GetCurrentThread(), 0), "couldn't create user apc\n"); pipe_attr.nLength = sizeof(SECURITY_ATTRIBUTES); pipe_attr.bInheritHandle = TRUE; @@ -4126,7 +4125,6 @@ START_TEST(pipe) hmod = GetModuleHandleA("advapi32.dll"); pDuplicateTokenEx = (void *) GetProcAddress(hmod, "DuplicateTokenEx"); hmod = GetModuleHandleA("kernel32.dll"); - pQueueUserAPC = (void *) GetProcAddress(hmod, "QueueUserAPC"); pCancelIoEx = (void *) GetProcAddress(hmod, "CancelIoEx"); pGetNamedPipeClientProcessId = (void *) GetProcAddress(hmod, "GetNamedPipeClientProcessId"); pGetNamedPipeServerProcessId = (void *) GetProcAddress(hmod, "GetNamedPipeServerProcessId"); diff --git a/dlls/kernel32/tests/process.c b/dlls/kernel32/tests/process.c index 8996dd91446..486363956b1 100644 --- a/dlls/kernel32/tests/process.c +++ b/dlls/kernel32/tests/process.c @@ -67,8 +67,6 @@ static void (WINAPI *pGetNativeSystemInfo)(LPSYSTEM_INFO); static BOOL (WINAPI *pGetSystemRegistryQuota)(PDWORD, PDWORD); static BOOL (WINAPI *pIsWow64Process)(HANDLE,PBOOL); static BOOL (WINAPI *pIsWow64Process2)(HANDLE, USHORT *, USHORT *); -static LPVOID (WINAPI *pVirtualAllocEx)(HANDLE, LPVOID, SIZE_T, DWORD, DWORD); -static BOOL (WINAPI *pVirtualFreeEx)(HANDLE, LPVOID, SIZE_T, DWORD); static BOOL (WINAPI *pQueryFullProcessImageNameA)(HANDLE hProcess, DWORD dwFlags, LPSTR lpExeName, PDWORD lpdwSize); static BOOL (WINAPI *pQueryFullProcessImageNameW)(HANDLE hProcess, DWORD dwFlags, LPWSTR lpExeName, PDWORD lpdwSize); static DWORD (WINAPI *pK32GetProcessImageFileNameA)(HANDLE,LPSTR,DWORD); @@ -81,7 +79,6 @@ static BOOL (WINAPI *pSetInformationJobObject)(HANDLE job, JOBOBJECTINFOCLASS static HANDLE (WINAPI *pCreateIoCompletionPort)(HANDLE file, HANDLE existing_port, ULONG_PTR key, DWORD threads); static BOOL (WINAPI *pGetNumaProcessorNode)(UCHAR, PUCHAR); static NTSTATUS (WINAPI *pNtQueryInformationProcess)(HANDLE, PROCESSINFOCLASS, PVOID, ULONG, PULONG); -static BOOL (WINAPI *pProcessIdToSessionId)(DWORD,DWORD*); static DWORD (WINAPI *pWTSGetActiveConsoleSessionId)(void); static HANDLE (WINAPI *pCreateToolhelp32Snapshot)(DWORD, DWORD); static BOOL (WINAPI *pProcess32First)(HANDLE, PROCESSENTRY32*); @@ -251,8 +248,6 @@ static BOOL init(void) pGetSystemRegistryQuota = (void *) GetProcAddress(hkernel32, "GetSystemRegistryQuota"); pIsWow64Process = (void *) GetProcAddress(hkernel32, "IsWow64Process"); pIsWow64Process2 = (void *) GetProcAddress(hkernel32, "IsWow64Process2"); - pVirtualAllocEx = (void *) GetProcAddress(hkernel32, "VirtualAllocEx"); - pVirtualFreeEx = (void *) GetProcAddress(hkernel32, "VirtualFreeEx"); pQueryFullProcessImageNameA = (void *) GetProcAddress(hkernel32, "QueryFullProcessImageNameA"); pQueryFullProcessImageNameW = (void *) GetProcAddress(hkernel32, "QueryFullProcessImageNameW"); pK32GetProcessImageFileNameA = (void *) GetProcAddress(hkernel32, "K32GetProcessImageFileNameA"); @@ -264,7 +259,6 @@ static BOOL init(void) pSetInformationJobObject = (void *)GetProcAddress(hkernel32, "SetInformationJobObject"); pCreateIoCompletionPort = (void *)GetProcAddress(hkernel32, "CreateIoCompletionPort"); pGetNumaProcessorNode = (void *)GetProcAddress(hkernel32, "GetNumaProcessorNode"); - pProcessIdToSessionId = (void *)GetProcAddress(hkernel32, "ProcessIdToSessionId"); pWTSGetActiveConsoleSessionId = (void *)GetProcAddress(hkernel32, "WTSGetActiveConsoleSessionId"); pCreateToolhelp32Snapshot = (void *)GetProcAddress(hkernel32, "CreateToolhelp32Snapshot"); pProcess32First = (void *)GetProcAddress(hkernel32, "Process32First"); @@ -1714,18 +1708,12 @@ static void test_OpenProcess(void) SIZE_T dummy, read_bytes; BOOL ret; - /* not exported in all windows versions */ - if ((!pVirtualAllocEx) || (!pVirtualFreeEx)) { - win_skip("VirtualAllocEx not found\n"); - return; - } - /* without PROCESS_VM_OPERATION */ hproc = OpenProcess(PROCESS_ALL_ACCESS_NT4 & ~PROCESS_VM_OPERATION, FALSE, GetCurrentProcessId()); ok(hproc != NULL, "OpenProcess error %d\n", GetLastError()); SetLastError(0xdeadbeef); - addr1 = pVirtualAllocEx(hproc, 0, 0xFFFC, MEM_RESERVE, PAGE_NOACCESS); + addr1 = VirtualAllocEx(hproc, 0, 0xFFFC, MEM_RESERVE, PAGE_NOACCESS); ok(!addr1, "VirtualAllocEx should fail\n"); if (GetLastError() == ERROR_CALL_NOT_IMPLEMENTED) { /* Win9x */ @@ -1746,7 +1734,7 @@ static void test_OpenProcess(void) hproc = OpenProcess(PROCESS_VM_OPERATION, FALSE, GetCurrentProcessId()); ok(hproc != NULL, "OpenProcess error %d\n", GetLastError()); - addr1 = pVirtualAllocEx(hproc, 0, 0xFFFC, MEM_RESERVE, PAGE_NOACCESS); + addr1 = VirtualAllocEx(hproc, 0, 0xFFFC, MEM_RESERVE, PAGE_NOACCESS); ok(addr1 != NULL, "VirtualAllocEx error %d\n", GetLastError()); /* without PROCESS_QUERY_INFORMATION */ @@ -1783,7 +1771,7 @@ static void test_OpenProcess(void) ok(info.Type == MEM_PRIVATE, "%x != MEM_PRIVATE\n", info.Type); SetLastError(0xdeadbeef); - ok(!pVirtualFreeEx(hproc, addr1, 0, MEM_RELEASE), + ok(!VirtualFreeEx(hproc, addr1, 0, MEM_RELEASE), "VirtualFreeEx without PROCESS_VM_OPERATION rights should fail\n"); ok(GetLastError() == ERROR_ACCESS_DENIED, "wrong error %d\n", GetLastError()); @@ -1810,7 +1798,7 @@ static void test_OpenProcess(void) ok(GetLastError() == ERROR_ACCESS_DENIED, "wrong error %d\n", GetLastError()); SetLastError(0xdeadbeef); - ok(!pVirtualFreeEx(hproc, addr1, 0, MEM_RELEASE), + ok(!VirtualFreeEx(hproc, addr1, 0, MEM_RELEASE), "VirtualFreeEx without PROCESS_VM_OPERATION rights should fail\n"); ok(GetLastError() == ERROR_ACCESS_DENIED, "wrong error %d\n", GetLastError()); @@ -3564,13 +3552,7 @@ static void test_session_info(void) DWORD session_id, active_session; BOOL r; - if (!pProcessIdToSessionId) - { - win_skip("ProcessIdToSessionId is missing\n"); - return; - } - - r = pProcessIdToSessionId(GetCurrentProcessId(), &session_id); + r = ProcessIdToSessionId(GetCurrentProcessId(), &session_id); ok(r, "ProcessIdToSessionId failed: %u\n", GetLastError()); trace("session_id = %x\n", session_id); diff --git a/dlls/kernel32/tests/timer.c b/dlls/kernel32/tests/timer.c index 5e4bab47894..7efcdef6563 100644 --- a/dlls/kernel32/tests/timer.c +++ b/dlls/kernel32/tests/timer.c @@ -26,43 +26,26 @@ static void test_timer(void) { - HANDLE (WINAPI *pCreateWaitableTimerA)( SECURITY_ATTRIBUTES*, BOOL, LPSTR ); - BOOL (WINAPI *pSetWaitableTimer)(HANDLE, LARGE_INTEGER*, LONG, PTIMERAPCROUTINE, LPVOID, BOOL); - HMODULE hker = GetModuleHandleA("kernel32.dll"); HANDLE handle; BOOL r; LARGE_INTEGER due; - pCreateWaitableTimerA = (void*)GetProcAddress( hker, "CreateWaitableTimerA"); - if( !pCreateWaitableTimerA ) - { - win_skip("CreateWaitableTimerA is not available\n"); - return; - } - - pSetWaitableTimer = (void*)GetProcAddress( hker, "SetWaitableTimer"); - if( !pSetWaitableTimer ) - { - win_skip("SetWaitableTimer is not available\n"); - return; - } - /* try once with a positive number */ - handle = pCreateWaitableTimerA( NULL, 0, NULL ); + handle = CreateWaitableTimerA( NULL, 0, NULL ); ok( handle != NULL, "failed to create waitable timer with no name\n" ); due.QuadPart = 10000; - r = pSetWaitableTimer( handle, &due, 0x1f4, NULL, NULL, FALSE ); + r = SetWaitableTimer( handle, &due, 0x1f4, NULL, NULL, FALSE ); ok( r, "failed to set timer\n"); CloseHandle( handle ); /* try once with a negative number */ - handle = pCreateWaitableTimerA( NULL, 0, NULL ); + handle = CreateWaitableTimerA( NULL, 0, NULL ); ok( handle != NULL, "failed to create waitable timer with no name\n" ); due.QuadPart = -10000; - r = pSetWaitableTimer( handle, &due, 0x1f4, NULL, NULL, FALSE ); + r = SetWaitableTimer( handle, &due, 0x1f4, NULL, NULL, FALSE ); ok( r, "failed to set timer\n"); CloseHandle( handle ); diff --git a/dlls/kernel32/tests/virtual.c b/dlls/kernel32/tests/virtual.c index f576d132d8b..854d3e04e19 100644 --- a/dlls/kernel32/tests/virtual.c +++ b/dlls/kernel32/tests/virtual.c @@ -37,8 +37,6 @@ static HINSTANCE hkernel32, hntdll; static SYSTEM_INFO si; -static LPVOID (WINAPI *pVirtualAllocEx)(HANDLE, LPVOID, SIZE_T, DWORD, DWORD); -static BOOL (WINAPI *pVirtualFreeEx)(HANDLE, LPVOID, SIZE_T, DWORD); static UINT (WINAPI *pGetWriteWatch)(DWORD,LPVOID,SIZE_T,LPVOID*,ULONG_PTR*,ULONG*); static UINT (WINAPI *pResetWriteWatch)(LPVOID,SIZE_T); static NTSTATUS (WINAPI *pNtAreMappedFilesTheSame)(PVOID,PVOID); @@ -84,17 +82,11 @@ static void test_VirtualAllocEx(void) MEMORY_BASIC_INFORMATION info; HANDLE hProcess; - /* not exported in all windows-versions */ - if ((!pVirtualAllocEx) || (!pVirtualFreeEx)) { - win_skip("Virtual{Alloc,Free}Ex not available\n"); - return; - } - hProcess = create_target_process("sleep"); ok(hProcess != NULL, "Can't start process\n"); SetLastError(0xdeadbeef); - addr1 = pVirtualAllocEx(hProcess, NULL, alloc_size, MEM_COMMIT, + addr1 = VirtualAllocEx(hProcess, NULL, alloc_size, MEM_COMMIT, PAGE_EXECUTE_READWRITE); ok(addr1 != NULL, "VirtualAllocEx error %u\n", GetLastError()); @@ -144,7 +136,7 @@ static void test_VirtualAllocEx(void) if (GetLastError() == ERROR_NOACCESS) ok( bytes_read == 0, "%lu bytes written\n", bytes_read ); - b = pVirtualFreeEx(hProcess, addr1, 0, MEM_RELEASE); + b = VirtualFreeEx(hProcess, addr1, 0, MEM_RELEASE); ok(b != 0, "VirtualFreeEx, error %u\n", GetLastError()); VirtualFree( src, 0, MEM_RELEASE ); @@ -155,12 +147,12 @@ static void test_VirtualAllocEx(void) */ SetLastError(0xdeadbeef); - addr1 = pVirtualAllocEx(hProcess, 0, 0, MEM_RESERVE, PAGE_NOACCESS); + addr1 = VirtualAllocEx(hProcess, 0, 0, MEM_RESERVE, PAGE_NOACCESS); ok(addr1 == NULL, "VirtualAllocEx should fail on zero-sized allocation\n"); ok(GetLastError() == ERROR_INVALID_PARAMETER, "got %u, expected ERROR_INVALID_PARAMETER\n", GetLastError()); - addr1 = pVirtualAllocEx(hProcess, 0, 0xFFFC, MEM_RESERVE, PAGE_NOACCESS); + addr1 = VirtualAllocEx(hProcess, 0, 0xFFFC, MEM_RESERVE, PAGE_NOACCESS); ok(addr1 != NULL, "VirtualAllocEx failed\n"); /* test a not committed memory */ @@ -180,7 +172,7 @@ static void test_VirtualAllocEx(void) ok(GetLastError() == ERROR_INVALID_ADDRESS, "got %u, expected ERROR_INVALID_ADDRESS\n", GetLastError()); - addr2 = pVirtualAllocEx(hProcess, addr1, 0x1000, MEM_COMMIT, PAGE_NOACCESS); + addr2 = VirtualAllocEx(hProcess, addr1, 0x1000, MEM_COMMIT, PAGE_NOACCESS); ok(addr1 == addr2, "VirtualAllocEx failed\n"); /* test a committed memory */ @@ -210,20 +202,20 @@ static void test_VirtualAllocEx(void) ok(VirtualProtectEx(hProcess, addr1, 0x1000, PAGE_READWRITE, &old_prot), "VirtualProtectEx failed\n"); ok(old_prot == PAGE_READONLY, "wrong old protection: got %04x instead of PAGE_READONLY\n", old_prot); - ok(!pVirtualFreeEx(hProcess, addr1, 0x10000, 0), + ok(!VirtualFreeEx(hProcess, addr1, 0x10000, 0), "VirtualFreeEx should fail with type 0\n"); ok(GetLastError() == ERROR_INVALID_PARAMETER, "got %u, expected ERROR_INVALID_PARAMETER\n", GetLastError()); - ok(pVirtualFreeEx(hProcess, addr1, 0x10000, MEM_DECOMMIT), "VirtualFreeEx failed\n"); + ok(VirtualFreeEx(hProcess, addr1, 0x10000, MEM_DECOMMIT), "VirtualFreeEx failed\n"); /* if the type is MEM_RELEASE, size must be 0 */ - ok(!pVirtualFreeEx(hProcess, addr1, 1, MEM_RELEASE), + ok(!VirtualFreeEx(hProcess, addr1, 1, MEM_RELEASE), "VirtualFreeEx should fail\n"); ok(GetLastError() == ERROR_INVALID_PARAMETER, "got %u, expected ERROR_INVALID_PARAMETER\n", GetLastError()); - ok(pVirtualFreeEx(hProcess, addr1, 0, MEM_RELEASE), "VirtualFreeEx failed\n"); + ok(VirtualFreeEx(hProcess, addr1, 0, MEM_RELEASE), "VirtualFreeEx failed\n"); TerminateProcess(hProcess, 0); CloseHandle(hProcess); @@ -4249,8 +4241,6 @@ START_TEST(virtual) hkernel32 = GetModuleHandleA("kernel32.dll"); hntdll = GetModuleHandleA("ntdll.dll"); - pVirtualAllocEx = (void *) GetProcAddress(hkernel32, "VirtualAllocEx"); - pVirtualFreeEx = (void *) GetProcAddress(hkernel32, "VirtualFreeEx"); pGetWriteWatch = (void *) GetProcAddress(hkernel32, "GetWriteWatch"); pResetWriteWatch = (void *) GetProcAddress(hkernel32, "ResetWriteWatch"); pGetProcessDEPPolicy = (void *)GetProcAddress( hkernel32, "GetProcessDEPPolicy" ); diff --git a/dlls/kernel32/tests/volume.c b/dlls/kernel32/tests/volume.c index 6f09be154ee..ead06764a11 100644 --- a/dlls/kernel32/tests/volume.c +++ b/dlls/kernel32/tests/volume.c @@ -48,15 +48,11 @@ struct COMPLETE_DVD_MANUFACTURER_DESCRIPTOR C_ASSERT(sizeof(struct COMPLETE_DVD_MANUFACTURER_DESCRIPTOR) == 2053); static HINSTANCE hdll; -static BOOL (WINAPI * pGetVolumeNameForVolumeMountPointA)(LPCSTR, LPSTR, DWORD); -static BOOL (WINAPI * pGetVolumeNameForVolumeMountPointW)(LPCWSTR, LPWSTR, DWORD); static HANDLE (WINAPI *pFindFirstVolumeA)(LPSTR,DWORD); static BOOL (WINAPI *pFindNextVolumeA)(HANDLE,LPSTR,DWORD); static BOOL (WINAPI *pFindVolumeClose)(HANDLE); static UINT (WINAPI *pGetLogicalDriveStringsA)(UINT,LPSTR); static UINT (WINAPI *pGetLogicalDriveStringsW)(UINT,LPWSTR); -static BOOL (WINAPI *pGetVolumeInformationA)(LPCSTR, LPSTR, DWORD, LPDWORD, LPDWORD, LPDWORD, LPSTR, DWORD); -static BOOL (WINAPI *pGetVolumePathNameA)(LPCSTR, LPSTR, DWORD); static BOOL (WINAPI *pGetVolumePathNamesForVolumeNameA)(LPCSTR, LPSTR, DWORD, LPDWORD); static BOOL (WINAPI *pGetVolumePathNamesForVolumeNameW)(LPCWSTR, LPWSTR, DWORD, LPDWORD); static BOOL (WINAPI *pCreateSymbolicLinkA)(const char *, const char *, DWORD); @@ -229,38 +225,32 @@ static void test_GetVolumeNameForVolumeMountPointA(void) DWORD len = sizeof(volume), reti; char temp_path[MAX_PATH]; - /* not present before w2k */ - if (!pGetVolumeNameForVolumeMountPointA) { - win_skip("GetVolumeNameForVolumeMountPointA not found\n"); - return; - } - reti = GetTempPathA(MAX_PATH, temp_path); ok(reti != 0, "GetTempPathA error %d\n", GetLastError()); ok(reti < MAX_PATH, "temp path should fit into MAX_PATH\n"); - ret = pGetVolumeNameForVolumeMountPointA(path, volume, 0); + ret = GetVolumeNameForVolumeMountPointA(path, volume, 0); ok(ret == FALSE, "GetVolumeNameForVolumeMountPointA succeeded\n"); ok(GetLastError() == ERROR_FILENAME_EXCED_RANGE || GetLastError() == ERROR_INVALID_PARAMETER, /* Vista */ "wrong error, last=%d\n", GetLastError()); if (0) { /* these crash on XP */ - ret = pGetVolumeNameForVolumeMountPointA(path, NULL, len); + ret = GetVolumeNameForVolumeMountPointA(path, NULL, len); ok(ret == FALSE, "GetVolumeNameForVolumeMountPointA succeeded\n"); - ret = pGetVolumeNameForVolumeMountPointA(NULL, volume, len); + ret = GetVolumeNameForVolumeMountPointA(NULL, volume, len); ok(ret == FALSE, "GetVolumeNameForVolumeMountPointA succeeded\n"); } - ret = pGetVolumeNameForVolumeMountPointA(path, volume, len); + ret = GetVolumeNameForVolumeMountPointA(path, volume, len); ok(ret == TRUE, "GetVolumeNameForVolumeMountPointA failed\n"); ok(!strncmp( volume, "\\\\?\\Volume{", 11), "GetVolumeNameForVolumeMountPointA failed to return valid string <%s>\n", volume); /* test with too small buffer */ - ret = pGetVolumeNameForVolumeMountPointA(path, volume, 10); + ret = GetVolumeNameForVolumeMountPointA(path, volume, 10); ok(ret == FALSE && GetLastError() == ERROR_FILENAME_EXCED_RANGE, "GetVolumeNameForVolumeMountPointA failed, wrong error returned, was %d, should be ERROR_FILENAME_EXCED_RANGE\n", GetLastError()); @@ -268,7 +258,7 @@ static void test_GetVolumeNameForVolumeMountPointA(void) /* Try on an arbitrary directory */ /* On FAT filesystems it seems that GetLastError() is set to ERROR_INVALID_FUNCTION. */ - ret = pGetVolumeNameForVolumeMountPointA(temp_path, volume, len); + ret = GetVolumeNameForVolumeMountPointA(temp_path, volume, len); ok(ret == FALSE && (GetLastError() == ERROR_NOT_A_REPARSE_POINT || GetLastError() == ERROR_INVALID_FUNCTION), "GetVolumeNameForVolumeMountPointA failed on %s, last=%d\n", @@ -283,14 +273,14 @@ static void test_GetVolumeNameForVolumeMountPointA(void) if (path[0] <= 'z') { path[2] = '\\'; - ret = pGetVolumeNameForVolumeMountPointA(path, volume, len); + ret = GetVolumeNameForVolumeMountPointA(path, volume, len); ok(ret == FALSE && GetLastError() == ERROR_FILE_NOT_FOUND, "GetVolumeNameForVolumeMountPointA failed on %s, last=%d\n", path, GetLastError()); /* Try without trailing \ and on a nonexistent dos drive */ path[2] = 0; - ret = pGetVolumeNameForVolumeMountPointA(path, volume, len); + ret = GetVolumeNameForVolumeMountPointA(path, volume, len); ok(ret == FALSE && GetLastError() == ERROR_INVALID_NAME, "GetVolumeNameForVolumeMountPointA failed on %s, last=%d\n", path, GetLastError()); @@ -303,27 +293,21 @@ static void test_GetVolumeNameForVolumeMountPointW(void) WCHAR volume[MAX_PATH], path[] = {'c',':','\\',0}; DWORD len = ARRAY_SIZE(volume); - /* not present before w2k */ - if (!pGetVolumeNameForVolumeMountPointW) { - win_skip("GetVolumeNameForVolumeMountPointW not found\n"); - return; - } - - ret = pGetVolumeNameForVolumeMountPointW(path, volume, 0); + ret = GetVolumeNameForVolumeMountPointW(path, volume, 0); ok(ret == FALSE, "GetVolumeNameForVolumeMountPointW succeeded\n"); ok(GetLastError() == ERROR_FILENAME_EXCED_RANGE || GetLastError() == ERROR_INVALID_PARAMETER, /* Vista */ "wrong error, last=%d\n", GetLastError()); if (0) { /* these crash on XP */ - ret = pGetVolumeNameForVolumeMountPointW(path, NULL, len); + ret = GetVolumeNameForVolumeMountPointW(path, NULL, len); ok(ret == FALSE, "GetVolumeNameForVolumeMountPointW succeeded\n"); - ret = pGetVolumeNameForVolumeMountPointW(NULL, volume, len); + ret = GetVolumeNameForVolumeMountPointW(NULL, volume, len); ok(ret == FALSE, "GetVolumeNameForVolumeMountPointW succeeded\n"); } - ret = pGetVolumeNameForVolumeMountPointW(path, volume, len); + ret = GetVolumeNameForVolumeMountPointW(path, volume, len); ok(ret == TRUE, "GetVolumeNameForVolumeMountPointW failed\n"); } @@ -413,11 +397,6 @@ static void test_GetVolumeInformationA(void) char windowsdir[MAX_PATH+10]; char currentdir[MAX_PATH+1]; - ok( pGetVolumeInformationA != NULL, "GetVolumeInformationA not found\n"); - if(!pGetVolumeInformationA) { - return; - } - /* get windows drive letter and update strings for testing */ result = GetWindowsDirectoryA(windowsdir, sizeof(windowsdir)); ok(result < sizeof(windowsdir), "windowsdir is abnormally long!\n"); @@ -433,7 +412,7 @@ static void test_GetVolumeInformationA(void) /* check for NO error on no trailing \ when current dir is root dir */ ret = SetCurrentDirectoryA(Root_Slash); ok(ret, "SetCurrentDirectory: error %d\n", GetLastError()); - ret = pGetVolumeInformationA(Root_Colon, vol_name_buf, vol_name_size, NULL, + ret = GetVolumeInformationA(Root_Colon, vol_name_buf, vol_name_size, NULL, NULL, NULL, fs_name_buf, fs_name_len); ok(ret, "GetVolumeInformationA root failed, last error %u\n", GetLastError()); @@ -441,7 +420,7 @@ static void test_GetVolumeInformationA(void) ret = SetCurrentDirectoryA(windowsdir); ok(ret, "SetCurrentDirectory: error %d\n", GetLastError()); SetLastError(0xdeadbeef); - ret = pGetVolumeInformationA(Root_Colon, vol_name_buf, vol_name_size, NULL, + ret = GetVolumeInformationA(Root_Colon, vol_name_buf, vol_name_size, NULL, NULL, NULL, fs_name_buf, fs_name_len); ok(!ret && (GetLastError() == ERROR_INVALID_NAME), "GetVolumeInformationA did%s fail, last error %u\n", ret ? " not":"", GetLastError()); @@ -469,13 +448,13 @@ static void test_GetVolumeInformationA(void) /* windows dir is current on the root drive, call fails */ SetLastError(0xdeadbeef); - ret = pGetVolumeInformationA(Root_Colon, vol_name_buf, vol_name_size, NULL, + ret = GetVolumeInformationA(Root_Colon, vol_name_buf, vol_name_size, NULL, NULL, NULL, fs_name_buf, fs_name_len); ok(!ret && (GetLastError() == ERROR_INVALID_NAME), "GetVolumeInformationA did%s fail, last error %u\n", ret ? " not":"", GetLastError()); /* Try normal drive letter with trailing \ */ - ret = pGetVolumeInformationA(Root_Slash, vol_name_buf, vol_name_size, NULL, + ret = GetVolumeInformationA(Root_Slash, vol_name_buf, vol_name_size, NULL, NULL, NULL, fs_name_buf, fs_name_len); ok(ret, "GetVolumeInformationA with \\ failed, last error %u\n", GetLastError()); @@ -487,7 +466,7 @@ static void test_GetVolumeInformationA(void) /* windows dir is STILL CURRENT on root drive; the call fails as before, */ /* proving that SetCurrentDir did not remember the other drive's directory */ SetLastError(0xdeadbeef); - ret = pGetVolumeInformationA(Root_Colon, vol_name_buf, vol_name_size, NULL, + ret = GetVolumeInformationA(Root_Colon, vol_name_buf, vol_name_size, NULL, NULL, NULL, fs_name_buf, fs_name_len); ok(!ret && (GetLastError() == ERROR_INVALID_NAME), "GetVolumeInformationA did%s fail, last error %u\n", ret ? " not":"", GetLastError()); @@ -497,7 +476,7 @@ static void test_GetVolumeInformationA(void) ok(ret, "SetEnvironmentVariable %s failed\n", Root_Env); /* \ is current on root drive, call succeeds */ - ret = pGetVolumeInformationA(Root_Colon, vol_name_buf, vol_name_size, NULL, + ret = GetVolumeInformationA(Root_Colon, vol_name_buf, vol_name_size, NULL, NULL, NULL, fs_name_buf, fs_name_len); ok(ret, "GetVolumeInformationA failed, last error %u\n", GetLastError()); @@ -508,59 +487,55 @@ static void test_GetVolumeInformationA(void) ok(ret, "SetCurrentDirectory: error %d\n", GetLastError()); /* \ is current on root drive, call succeeds */ - ret = pGetVolumeInformationA(Root_Colon, vol_name_buf, vol_name_size, NULL, + ret = GetVolumeInformationA(Root_Colon, vol_name_buf, vol_name_size, NULL, NULL, NULL, fs_name_buf, fs_name_len); ok(ret, "GetVolumeInformationA failed, last error %u\n", GetLastError()); } /* try null root directory to return "root of the current directory" */ - ret = pGetVolumeInformationA(NULL, vol_name_buf, vol_name_size, NULL, + ret = GetVolumeInformationA(NULL, vol_name_buf, vol_name_size, NULL, NULL, NULL, fs_name_buf, fs_name_len); ok(ret, "GetVolumeInformationA failed on null root dir, last error %u\n", GetLastError()); /* Try normal drive letter with trailing \ */ - ret = pGetVolumeInformationA(Root_Slash, vol_name_buf, vol_name_size, + ret = GetVolumeInformationA(Root_Slash, vol_name_buf, vol_name_size, &vol_serial_num, &max_comp_len, &fs_flags, fs_name_buf, fs_name_len); ok(ret, "GetVolumeInformationA failed, root=%s, last error=%u\n", Root_Slash, GetLastError()); /* try again with drive letter and the "disable parsing" prefix */ SetLastError(0xdeadbeef); - ret = pGetVolumeInformationA(Root_UNC, vol_name_buf, vol_name_size, + ret = GetVolumeInformationA(Root_UNC, vol_name_buf, vol_name_size, &vol_serial_num, &max_comp_len, &fs_flags, fs_name_buf, fs_name_len); ok(ret, "GetVolumeInformationA did%s fail, root=%s, last error=%u\n", ret ? " not":"", Root_UNC, GetLastError()); /* try again with device name space */ Root_UNC[2] = '.'; SetLastError(0xdeadbeef); - ret = pGetVolumeInformationA(Root_UNC, vol_name_buf, vol_name_size, + ret = GetVolumeInformationA(Root_UNC, vol_name_buf, vol_name_size, &vol_serial_num, &max_comp_len, &fs_flags, fs_name_buf, fs_name_len); ok(ret, "GetVolumeInformationA did%s fail, root=%s, last error=%u\n", ret ? " not":"", Root_UNC, GetLastError()); /* try again with a directory off the root - should generate error */ if (windowsdir[strlen(windowsdir)-1] != '\\') strcat(windowsdir, "\\"); SetLastError(0xdeadbeef); - ret = pGetVolumeInformationA(windowsdir, vol_name_buf, vol_name_size, + ret = GetVolumeInformationA(windowsdir, vol_name_buf, vol_name_size, &vol_serial_num, &max_comp_len, &fs_flags, fs_name_buf, fs_name_len); ok(!ret && (GetLastError()==ERROR_DIR_NOT_ROOT), "GetVolumeInformationA did%s fail, root=%s, last error=%u\n", ret ? " not":"", windowsdir, GetLastError()); /* A subdir with trailing \ yields DIR_NOT_ROOT instead of INVALID_NAME */ if (windowsdir[strlen(windowsdir)-1] == '\\') windowsdir[strlen(windowsdir)-1] = 0; SetLastError(0xdeadbeef); - ret = pGetVolumeInformationA(windowsdir, vol_name_buf, vol_name_size, + ret = GetVolumeInformationA(windowsdir, vol_name_buf, vol_name_size, &vol_serial_num, &max_comp_len, &fs_flags, fs_name_buf, fs_name_len); ok(!ret && (GetLastError()==ERROR_INVALID_NAME), "GetVolumeInformationA did%s fail, root=%s, last error=%u\n", ret ? " not":"", windowsdir, GetLastError()); - if (!pGetVolumeNameForVolumeMountPointA) { - win_skip("GetVolumeNameForVolumeMountPointA not found\n"); - return; - } /* get the unique volume name for the windows drive */ - ret = pGetVolumeNameForVolumeMountPointA(Root_Slash, volume, MAX_PATH); + ret = GetVolumeNameForVolumeMountPointA(Root_Slash, volume, MAX_PATH); ok(ret == TRUE, "GetVolumeNameForVolumeMountPointA failed\n"); /* try again with unique volume name */ - ret = pGetVolumeInformationA(volume, vol_name_buf, vol_name_size, + ret = GetVolumeInformationA(volume, vol_name_buf, vol_name_size, &vol_serial_num, &max_comp_len, &fs_flags, fs_name_buf, fs_name_len); ok(ret, "GetVolumeInformationA failed, root=%s, last error=%u\n", volume, GetLastError()); } @@ -578,11 +553,6 @@ static void test_enum_vols(void) BOOL found = FALSE; char windowsdir[MAX_PATH]; - if (!pGetVolumeNameForVolumeMountPointA) { - win_skip("GetVolumeNameForVolumeMountPointA not found\n"); - return; - } - /*get windows drive letter and update strings for testing */ ret = GetWindowsDirectoryA( windowsdir, sizeof(windowsdir) ); ok(ret < sizeof(windowsdir), "windowsdir is abnormally long!\n"); @@ -590,7 +560,7 @@ static void test_enum_vols(void) path[0] = windowsdir[0]; /* get the unique volume name for the windows drive */ - ret = pGetVolumeNameForVolumeMountPointA( path, Volume_1, MAX_PATH ); + ret = GetVolumeNameForVolumeMountPointA( path, Volume_1, MAX_PATH ); ok(ret == TRUE, "GetVolumeNameForVolumeMountPointA failed\n"); ok(strlen(Volume_1) == 49, "GetVolumeNameForVolumeMountPointA returned wrong length name %s\n", Volume_1); @@ -843,13 +813,6 @@ static void test_GetVolumePathNameA(void) DWORD error; UINT i; - /* GetVolumePathNameA is not present before w2k */ - if (!pGetVolumePathNameA) - { - win_skip("required functions not found\n"); - return; - } - for (i=0; i %s\n", volume); @@ -1061,13 +1024,13 @@ static void test_GetVolumePathNamesForVolumeNameW(void) WCHAR volume[MAX_PATH], buffer[MAX_PATH]; DWORD len, error; - if (!pGetVolumePathNamesForVolumeNameW || !pGetVolumeNameForVolumeMountPointW) + if (!pGetVolumePathNamesForVolumeNameW) { win_skip("required functions not found\n"); return; } - ret = pGetVolumeNameForVolumeMountPointW( drive_c, volume, ARRAY_SIZE(volume) ); + ret = GetVolumeNameForVolumeMountPointW( drive_c, volume, ARRAY_SIZE(volume) ); ok(ret, "failed to get volume name %u\n", GetLastError()); SetLastError( 0xdeadbeef ); @@ -1589,15 +1552,11 @@ static void test_GetVolumeInformationByHandle(void) START_TEST(volume) { hdll = GetModuleHandleA("kernel32.dll"); - pGetVolumeNameForVolumeMountPointA = (void *) GetProcAddress(hdll, "GetVolumeNameForVolumeMountPointA"); - pGetVolumeNameForVolumeMountPointW = (void *) GetProcAddress(hdll, "GetVolumeNameForVolumeMountPointW"); pFindFirstVolumeA = (void *) GetProcAddress(hdll, "FindFirstVolumeA"); pFindNextVolumeA = (void *) GetProcAddress(hdll, "FindNextVolumeA"); pFindVolumeClose = (void *) GetProcAddress(hdll, "FindVolumeClose"); pGetLogicalDriveStringsA = (void *) GetProcAddress(hdll, "GetLogicalDriveStringsA"); pGetLogicalDriveStringsW = (void *) GetProcAddress(hdll, "GetLogicalDriveStringsW"); - pGetVolumeInformationA = (void *) GetProcAddress(hdll, "GetVolumeInformationA"); - pGetVolumePathNameA = (void *) GetProcAddress(hdll, "GetVolumePathNameA"); pGetVolumePathNamesForVolumeNameA = (void *) GetProcAddress(hdll, "GetVolumePathNamesForVolumeNameA"); pGetVolumePathNamesForVolumeNameW = (void *) GetProcAddress(hdll, "GetVolumePathNamesForVolumeNameW"); pCreateSymbolicLinkA = (void *) GetProcAddress(hdll, "CreateSymbolicLinkA"); -- 2.28.0