[PATCH 08/22] dlls/advapi32/tests: enable compilation with long types

Eric Pouech eric.pouech at gmail.com
Wed Feb 23 02:10:51 CST 2022


Signed-off-by: Eric Pouech <eric.pouech at gmail.com>

---
 dlls/advapi32/tests/Makefile.in |    1 
 dlls/advapi32/tests/cred.c      |  152 +--
 dlls/advapi32/tests/crypt.c     |  304 +++---
 dlls/advapi32/tests/eventlog.c  |  234 ++--
 dlls/advapi32/tests/lsa.c       |  108 +-
 dlls/advapi32/tests/perf.c      |   52 -
 dlls/advapi32/tests/registry.c  | 1610 +++++++++++++++---------------
 dlls/advapi32/tests/security.c  | 2060 ++++++++++++++++++++-------------------
 dlls/advapi32/tests/service.c   |  658 ++++++------
 9 files changed, 2589 insertions(+), 2590 deletions(-)

diff --git a/dlls/advapi32/tests/Makefile.in b/dlls/advapi32/tests/Makefile.in
index 6a5a28d5df7..2e9b007a91f 100644
--- a/dlls/advapi32/tests/Makefile.in
+++ b/dlls/advapi32/tests/Makefile.in
@@ -1,4 +1,3 @@
-EXTRADEFS = -DWINE_NO_LONG_TYPES
 TESTDLL   = advapi32.dll
 IMPORTS   = ole32 advapi32
 
diff --git a/dlls/advapi32/tests/cred.c b/dlls/advapi32/tests/cred.c
index 854f5a92b1f..24815967ac8 100644
--- a/dlls/advapi32/tests/cred.c
+++ b/dlls/advapi32/tests/cred.c
@@ -51,19 +51,19 @@ static void test_CredReadA(void)
     SetLastError(0xdeadbeef);
     ret = pCredReadA(TEST_TARGET_NAME, -1, 0, &cred);
     ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
-        "CredReadA should have failed with ERROR_INVALID_PARAMETER instead of %d\n",
+        "CredReadA should have failed with ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pCredReadA(TEST_TARGET_NAME, CRED_TYPE_GENERIC, 0xdeadbeef, &cred);
     ok(!ret && ( GetLastError() == ERROR_INVALID_FLAGS || GetLastError() == ERROR_INVALID_PARAMETER ),
-        "CredReadA should have failed with ERROR_INVALID_FLAGS or ERROR_INVALID_PARAMETER instead of %d\n",
+        "CredReadA should have failed with ERROR_INVALID_FLAGS or ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pCredReadA(NULL, CRED_TYPE_GENERIC, 0, &cred);
     ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
-        "CredReadA should have failed with ERROR_INVALID_PARAMETER instead of %d\n",
+        "CredReadA should have failed with ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 }
 
@@ -75,7 +75,7 @@ static void test_CredWriteA(void)
     SetLastError(0xdeadbeef);
     ret = pCredWriteA(NULL, 0);
     ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
-        "CredWriteA should have failed with ERROR_INVALID_PARAMETER instead of %d\n",
+        "CredWriteA should have failed with ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 
     new_cred.Flags = 0;
@@ -93,7 +93,7 @@ static void test_CredWriteA(void)
     SetLastError(0xdeadbeef);
     ret = pCredWriteA(&new_cred, 0);
     ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
-        "CredWriteA should have failed with ERROR_INVALID_PARAMETER instead of %d\n",
+        "CredWriteA should have failed with ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 
     new_cred.TargetName = (char *)TEST_TARGET_NAME;
@@ -105,63 +105,63 @@ static void test_CredWriteA(void)
     {
         ok(GetLastError() == ERROR_SUCCESS ||
            GetLastError() == ERROR_IO_PENDING, /* Vista */
-           "Expected ERROR_IO_PENDING, got %d\n", GetLastError());
+           "Expected ERROR_IO_PENDING, got %ld\n", GetLastError());
     }
     else
     {
         ok(GetLastError() == ERROR_BAD_USERNAME ||
            GetLastError() == ERROR_NO_SUCH_LOGON_SESSION, /* Vista */
            "CredWrite with username without domain should return ERROR_BAD_USERNAME"
-           "or ERROR_NO_SUCH_LOGON_SESSION not %d\n", GetLastError());
+           "or ERROR_NO_SUCH_LOGON_SESSION not %ld\n", GetLastError());
     }
 
     new_cred.UserName = NULL;
     SetLastError(0xdeadbeef);
     ret = pCredWriteA(&new_cred, 0);
     ok(!ret && GetLastError() == ERROR_BAD_USERNAME,
-        "CredWriteA with NULL username should have failed with ERROR_BAD_USERNAME instead of %d\n",
+        "CredWriteA with NULL username should have failed with ERROR_BAD_USERNAME instead of %ld\n",
         GetLastError());
 
     new_cred.UserName = (char *)"winetest";
     new_cred.Persist = CRED_PERSIST_LOCAL_MACHINE;
     SetLastError(0xdeadbeef);
     ret = pCredWriteA(&new_cred, 0);
-    ok(ret || broken(!ret), "CredWriteA failed with error %u\n", GetLastError());
+    ok(ret || broken(!ret), "CredWriteA failed with error %lu\n", GetLastError());
     if (ret)
     {
         ret = pCredDeleteA(TEST_TARGET_NAME, CRED_TYPE_DOMAIN_PASSWORD, 0);
-        ok(ret, "CredDeleteA failed with error %u\n", GetLastError());
+        ok(ret, "CredDeleteA failed with error %lu\n", GetLastError());
     }
     new_cred.Type = CRED_TYPE_GENERIC;
     SetLastError(0xdeadbeef);
     ret = pCredWriteA(&new_cred, 0);
-    ok(ret || broken(!ret), "CredWriteA failed with error %u\n", GetLastError());
+    ok(ret || broken(!ret), "CredWriteA failed with error %lu\n", GetLastError());
     if  (ret)
     {
         ret = pCredDeleteA(TEST_TARGET_NAME, CRED_TYPE_GENERIC, 0);
-        ok(ret, "CredDeleteA failed with error %u\n", GetLastError());
+        ok(ret, "CredDeleteA failed with error %lu\n", GetLastError());
     }
     new_cred.Persist = CRED_PERSIST_SESSION;
     ret = pCredWriteA(&new_cred, 0);
-    ok(ret, "CredWriteA failed with error %u\n", GetLastError());
+    ok(ret, "CredWriteA failed with error %lu\n", GetLastError());
 
     ret = pCredDeleteA(TEST_TARGET_NAME, CRED_TYPE_GENERIC, 0);
-    ok(ret, "CredDeleteA failed with error %u\n", GetLastError());
+    ok(ret, "CredDeleteA failed with error %lu\n", GetLastError());
 
     new_cred.Type = CRED_TYPE_DOMAIN_PASSWORD;
     SetLastError(0xdeadbeef);
     ret = pCredWriteA(&new_cred, 0);
-    ok(ret || broken(!ret), "CredWriteA failed with error %u\n", GetLastError());
+    ok(ret || broken(!ret), "CredWriteA failed with error %lu\n", GetLastError());
     if (ret)
     {
         ret = pCredDeleteA(TEST_TARGET_NAME, CRED_TYPE_DOMAIN_PASSWORD, 0);
-        ok(ret, "CredDeleteA failed with error %u\n", GetLastError());
+        ok(ret, "CredDeleteA failed with error %lu\n", GetLastError());
     }
     new_cred.UserName = NULL;
     SetLastError(0xdeadbeef);
     ret = pCredWriteA(&new_cred, 0);
     ok(!ret, "CredWriteA succeeded\n");
-    ok(GetLastError() == ERROR_BAD_USERNAME, "got %u\n", GetLastError());
+    ok(GetLastError() == ERROR_BAD_USERNAME, "got %lu\n", GetLastError());
 }
 
 static void test_CredDeleteA(void)
@@ -171,13 +171,13 @@ static void test_CredDeleteA(void)
     SetLastError(0xdeadbeef);
     ret = pCredDeleteA(TEST_TARGET_NAME, -1, 0);
     ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
-        "CredDeleteA should have failed with ERROR_INVALID_PARAMETER instead of %d\n",
+        "CredDeleteA should have failed with ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pCredDeleteA(TEST_TARGET_NAME, CRED_TYPE_GENERIC, 0xdeadbeef);
     ok(!ret && ( GetLastError() == ERROR_INVALID_FLAGS || GetLastError() == ERROR_INVALID_PARAMETER /* Vista */ ),
-        "CredDeleteA should have failed with ERROR_INVALID_FLAGS or ERROR_INVALID_PARAMETER instead of %d\n",
+        "CredDeleteA should have failed with ERROR_INVALID_FLAGS or ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 }
 
@@ -208,7 +208,7 @@ if(0)
     SetLastError(0xdeadbeef);
     ret = pCredReadDomainCredentialsA(NULL, 0, &count, &creds);
     ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
-        "CredReadDomainCredentialsA should have failed with ERROR_INVALID_PARAMETER instead of %d\n",
+        "CredReadDomainCredentialsA should have failed with ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 
     SetLastError(0xdeadbeef);
@@ -216,7 +216,7 @@ if(0)
     count = 2;
     ret = pCredReadDomainCredentialsA(&info, 0, &count, &creds);
     ok(!ret && GetLastError() == ERROR_NOT_FOUND,
-        "CredReadDomainCredentialsA should have failed with ERROR_NOT_FOUND instead of %d\n",
+        "CredReadDomainCredentialsA should have failed with ERROR_NOT_FOUND instead of %ld\n",
         GetLastError());
     ok(count ==0 && creds == NULL, "CredReadDomainCredentialsA must not return any result\n");
 
@@ -227,7 +227,7 @@ if(0)
     ok(!ret, "CredReadDomainCredentialsA should have failed\n");
     ok(GetLastError() == ERROR_NOT_FOUND ||
         GetLastError() == ERROR_INVALID_PARAMETER, /* Vista, W2K8 */
-        "Expected ERROR_NOT_FOUND or ERROR_INVALID_PARAMETER instead of %d\n",
+        "Expected ERROR_NOT_FOUND or ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 
     info.DnsServerName = NULL;
@@ -237,7 +237,7 @@ if(0)
     ok(!ret, "CredReadDomainCredentialsA should have failed\n");
     ok(GetLastError() == ERROR_NOT_FOUND ||
         GetLastError() == ERROR_INVALID_PARAMETER, /* Vista, W2K8 */
-        "Expected ERROR_NOT_FOUND or ERROR_INVALID_PARAMETER instead of %d\n",
+        "Expected ERROR_NOT_FOUND or ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 }
 
@@ -246,14 +246,14 @@ static void check_blob(int line, DWORD cred_type, PCREDENTIALA cred)
     if (cred_type == CRED_TYPE_DOMAIN_PASSWORD)
     {
         todo_wine
-        ok_(__FILE__, line)(cred->CredentialBlobSize == 0, "expected CredentialBlobSize of 0 but got %d\n", cred->CredentialBlobSize);
+        ok_(__FILE__, line)(cred->CredentialBlobSize == 0, "expected CredentialBlobSize of 0 but got %ld\n", cred->CredentialBlobSize);
         todo_wine
         ok_(__FILE__, line)(!cred->CredentialBlob, "expected NULL credentials but got %p\n", cred->CredentialBlob);
     }
     else
     {
         DWORD size=sizeof(TEST_PASSWORD);
-        ok_(__FILE__, line)(cred->CredentialBlobSize == size, "expected CredentialBlobSize of %u but got %u\n", size, cred->CredentialBlobSize);
+        ok_(__FILE__, line)(cred->CredentialBlobSize == size, "expected CredentialBlobSize of %lu but got %lu\n", size, cred->CredentialBlobSize);
         ok_(__FILE__, line)(cred->CredentialBlob != NULL, "CredentialBlob should be present\n");
         if (cred->CredentialBlob)
             ok_(__FILE__, line)(!memcmp(cred->CredentialBlob, TEST_PASSWORD, size), "wrong CredentialBlob\n");
@@ -283,7 +283,7 @@ static void test_generic(void)
 
     ret = pCredWriteA(&new_cred, 0);
     ok(ret || broken(GetLastError() == ERROR_NO_SUCH_LOGON_SESSION),
-       "CredWriteA failed with error %d\n", GetLastError());
+       "CredWriteA failed with error %ld\n", GetLastError());
     if (!ret)
     {
         skip("couldn't write generic credentials, skipping tests\n");
@@ -291,7 +291,7 @@ static void test_generic(void)
     }
 
     ret = pCredEnumerateA(NULL, 0, &count, &creds);
-    ok(ret, "CredEnumerateA failed with error %d\n", GetLastError());
+    ok(ret, "CredEnumerateA failed with error %ld\n", GetLastError());
 
     for (i = 0; i < count; i++)
     {
@@ -299,12 +299,12 @@ static void test_generic(void)
         {
             ok(creds[i]->Type == CRED_TYPE_GENERIC ||
                creds[i]->Type == CRED_TYPE_DOMAIN_PASSWORD, /* Vista */
-               "expected creds[%d]->Type CRED_TYPE_GENERIC or CRED_TYPE_DOMAIN_PASSWORD but got %d\n", i, creds[i]->Type);
-            ok(!creds[i]->Flags, "expected creds[%d]->Flags 0 but got 0x%x\n", i, creds[i]->Flags);
-            ok(!strcmp(creds[i]->Comment, "Comment"), "expected creds[%d]->Comment \"Comment\" but got \"%s\"\n", i, creds[i]->Comment);
+               "expected creds[%ld]->Type CRED_TYPE_GENERIC or CRED_TYPE_DOMAIN_PASSWORD but got %ld\n", i, creds[i]->Type);
+            ok(!creds[i]->Flags, "expected creds[%ld]->Flags 0 but got 0x%lx\n", i, creds[i]->Flags);
+            ok(!strcmp(creds[i]->Comment, "Comment"), "expected creds[%ld]->Comment \"Comment\" but got \"%s\"\n", i, creds[i]->Comment);
             check_blob(__LINE__, creds[i]->Type, creds[i]);
-            ok(creds[i]->Persist, "expected creds[%d]->Persist CRED_PERSIST_ENTERPRISE but got %d\n", i, creds[i]->Persist);
-            ok(!strcmp(creds[i]->UserName, "winetest"), "expected creds[%d]->UserName \"winetest\" but got \"%s\"\n", i, creds[i]->UserName);
+            ok(creds[i]->Persist, "expected creds[%ld]->Persist CRED_PERSIST_ENTERPRISE but got %ld\n", i, creds[i]->Persist);
+            ok(!strcmp(creds[i]->UserName, "winetest"), "expected creds[%ld]->UserName \"winetest\" but got \"%s\"\n", i, creds[i]->UserName);
             found = TRUE;
         }
     }
@@ -312,11 +312,11 @@ static void test_generic(void)
     ok(found, "credentials not found\n");
 
     ret = pCredReadA(TEST_TARGET_NAME, CRED_TYPE_GENERIC, 0, &cred);
-    ok(ret, "CredReadA failed with error %d\n", GetLastError());
+    ok(ret, "CredReadA failed with error %ld\n", GetLastError());
     pCredFree(cred);
 
     ret = pCredDeleteA(TEST_TARGET_NAME, CRED_TYPE_GENERIC, 0);
-    ok(ret, "CredDeleteA failed with error %d\n", GetLastError());
+    ok(ret, "CredDeleteA failed with error %ld\n", GetLastError());
 }
 
 static void test_domain_password(DWORD cred_type)
@@ -346,21 +346,21 @@ static void test_domain_password(DWORD cred_type)
              "or are disabled. Skipping\n");
         return;
     }
-    ok(ret, "CredWriteA failed with error %d\n", GetLastError());
+    ok(ret, "CredWriteA failed with error %ld\n", GetLastError());
 
     ret = pCredEnumerateA(NULL, 0, &count, &creds);
-    ok(ret, "CredEnumerateA failed with error %d\n", GetLastError());
+    ok(ret, "CredEnumerateA failed with error %ld\n", GetLastError());
 
     for (i = 0; i < count; i++)
     {
         if (creds[i]->TargetName && !strcmp(creds[i]->TargetName, TEST_TARGET_NAME))
         {
-            ok(creds[i]->Type == cred_type, "expected creds[%d]->Type CRED_TYPE_DOMAIN_PASSWORD but got %d\n", i, creds[i]->Type);
-            ok(!creds[i]->Flags, "expected creds[%d]->Flags 0 but got 0x%x\n", i, creds[i]->Flags);
-            ok(!strcmp(creds[i]->Comment, "Comment"), "expected creds[%d]->Comment \"Comment\" but got \"%s\"\n", i, creds[i]->Comment);
+            ok(creds[i]->Type == cred_type, "expected creds[%ld]->Type CRED_TYPE_DOMAIN_PASSWORD but got %ld\n", i, creds[i]->Type);
+            ok(!creds[i]->Flags, "expected creds[%ld]->Flags 0 but got 0x%lx\n", i, creds[i]->Flags);
+            ok(!strcmp(creds[i]->Comment, "Comment"), "expected creds[%ld]->Comment \"Comment\" but got \"%s\"\n", i, creds[i]->Comment);
             check_blob(__LINE__, cred_type, creds[i]);
-            ok(creds[i]->Persist, "expected creds[%d]->Persist CRED_PERSIST_ENTERPRISE but got %d\n", i, creds[i]->Persist);
-            ok(!strcmp(creds[i]->UserName, "test\\winetest"), "expected creds[%d]->UserName \"winetest\" but got \"%s\"\n", i, creds[i]->UserName);
+            ok(creds[i]->Persist, "expected creds[%ld]->Persist CRED_PERSIST_ENTERPRISE but got %ld\n", i, creds[i]->Persist);
+            ok(!strcmp(creds[i]->UserName, "test\\winetest"), "expected creds[%ld]->UserName \"winetest\" but got \"%s\"\n", i, creds[i]->UserName);
             found = TRUE;
         }
     }
@@ -368,7 +368,7 @@ static void test_domain_password(DWORD cred_type)
     ok(found, "credentials not found\n");
 
     ret = pCredReadA(TEST_TARGET_NAME, cred_type, 0, &cred);
-    ok(ret, "CredReadA failed with error %d\n", GetLastError());
+    ok(ret, "CredReadA failed with error %ld\n", GetLastError());
     if (ret)  /* don't check the values of cred, if CredReadA failed. */
     {
         check_blob(__LINE__, cred_type, cred);
@@ -376,7 +376,7 @@ static void test_domain_password(DWORD cred_type)
     }
 
     ret = pCredDeleteA(TEST_TARGET_NAME, cred_type, 0);
-    ok(ret, "CredDeleteA failed with error %d\n", GetLastError());
+    ok(ret, "CredDeleteA failed with error %ld\n", GetLastError());
 }
 
 static void test_CredMarshalCredentialA(void)
@@ -397,7 +397,7 @@ static void test_CredMarshalCredentialA(void)
     ret = pCredMarshalCredentialA( 0, NULL, NULL );
     error = GetLastError();
     ok( !ret, "unexpected success\n" );
-    ok( error == ERROR_INVALID_PARAMETER, "got %u\n", error );
+    ok( error == ERROR_INVALID_PARAMETER, "got %lu\n", error );
 
     memset( cert.rgbHashOfCert, 0, sizeof(cert.rgbHashOfCert) );
     cert.cbSize = sizeof(cert);
@@ -405,28 +405,28 @@ static void test_CredMarshalCredentialA(void)
     ret = pCredMarshalCredentialA( 0, &cert, NULL );
     error = GetLastError();
     ok( !ret, "unexpected success\n" );
-    ok( error == ERROR_INVALID_PARAMETER, "got %u\n", error );
+    ok( error == ERROR_INVALID_PARAMETER, "got %lu\n", error );
 
     str = (char *)0xdeadbeef;
     SetLastError( 0xdeadbeef );
     ret = pCredMarshalCredentialA( 0, &cert, &str );
     error = GetLastError();
     ok( !ret, "unexpected success\n" );
-    ok( error == ERROR_INVALID_PARAMETER, "got %u\n", error );
+    ok( error == ERROR_INVALID_PARAMETER, "got %lu\n", error );
     ok( str == (char *)0xdeadbeef, "got %p\n", str );
 
     SetLastError( 0xdeadbeef );
     ret = pCredMarshalCredentialA( CertCredential, NULL, NULL );
     error = GetLastError();
     ok( !ret, "unexpected success\n" );
-    ok( error == ERROR_INVALID_PARAMETER, "got %u\n", error );
+    ok( error == ERROR_INVALID_PARAMETER, "got %lu\n", error );
 
     if (0) { /* crash */
     SetLastError( 0xdeadbeef );
     ret = pCredMarshalCredentialA( CertCredential, &cert, NULL );
     error = GetLastError();
     ok( !ret, "unexpected success\n" );
-    ok( error == ERROR_INVALID_PARAMETER, "got %u\n", error );
+    ok( error == ERROR_INVALID_PARAMETER, "got %lu\n", error );
     }
 
     cert.cbSize = 0;
@@ -435,13 +435,13 @@ static void test_CredMarshalCredentialA(void)
     ret = pCredMarshalCredentialA( CertCredential, &cert, &str );
     error = GetLastError();
     ok( !ret, "unexpected success\n" );
-    ok( error == ERROR_INVALID_PARAMETER, "got %u\n", error );
+    ok( error == ERROR_INVALID_PARAMETER, "got %lu\n", error );
     ok( str == (char *)0xdeadbeef, "got %p\n", str );
 
     cert.cbSize = sizeof(cert) + 4;
     str = NULL;
     ret = pCredMarshalCredentialA( CertCredential, &cert, &str );
-    ok( ret, "unexpected failure %u\n", GetLastError() );
+    ok( ret, "unexpected failure %lu\n", GetLastError() );
     ok( str != NULL, "str not set\n" );
     ok( !lstrcmpA( str, "@@BAAAAAAAAAAAAAAAAAAAAAAAAAAA" ), "got %s\n", str );
     pCredFree( str );
@@ -450,7 +450,7 @@ static void test_CredMarshalCredentialA(void)
     cert.rgbHashOfCert[0] = 2;
     str = NULL;
     ret = pCredMarshalCredentialA( CertCredential, &cert, &str );
-    ok( ret, "unexpected failure %u\n", GetLastError() );
+    ok( ret, "unexpected failure %lu\n", GetLastError() );
     ok( str != NULL, "str not set\n" );
     ok( !lstrcmpA( str, "@@BCAAAAAAAAAAAAAAAAAAAAAAAAAA" ), "got %s\n", str );
     pCredFree( str );
@@ -458,7 +458,7 @@ static void test_CredMarshalCredentialA(void)
     cert.rgbHashOfCert[0] = 255;
     str = NULL;
     ret = pCredMarshalCredentialA( CertCredential, &cert, &str );
-    ok( ret, "unexpected failure %u\n", GetLastError() );
+    ok( ret, "unexpected failure %lu\n", GetLastError() );
     ok( str != NULL, "str not set\n" );
     ok( !lstrcmpA( str, "@@B-DAAAAAAAAAAAAAAAAAAAAAAAAA" ), "got %s\n", str );
     pCredFree( str );
@@ -467,7 +467,7 @@ static void test_CredMarshalCredentialA(void)
     cert.rgbHashOfCert[1] = 1;
     str = NULL;
     ret = pCredMarshalCredentialA( CertCredential, &cert, &str );
-    ok( ret, "unexpected failure %u\n", GetLastError() );
+    ok( ret, "unexpected failure %lu\n", GetLastError() );
     ok( str != NULL, "str not set\n" );
     ok( !lstrcmpA( str, "@@BBEAAAAAAAAAAAAAAAAAAAAAAAAA" ), "got %s\n", str );
     pCredFree( str );
@@ -477,7 +477,7 @@ static void test_CredMarshalCredentialA(void)
     cert.rgbHashOfCert[2] = 1;
     str = NULL;
     ret = pCredMarshalCredentialA( CertCredential, &cert, &str );
-    ok( ret, "unexpected failure %u\n", GetLastError() );
+    ok( ret, "unexpected failure %lu\n", GetLastError() );
     ok( str != NULL, "str not set\n" );
     ok( !lstrcmpA( str, "@@BBEQAAAAAAAAAAAAAAAAAAAAAAAA" ), "got %s\n", str );
     pCredFree( str );
@@ -489,7 +489,7 @@ static void test_CredMarshalCredentialA(void)
     cert.rgbHashOfCert[3] = 'e';
     str = NULL;
     ret = pCredMarshalCredentialA( CertCredential, &cert, &str );
-    ok( ret, "unexpected failure %u\n", GetLastError() );
+    ok( ret, "unexpected failure %lu\n", GetLastError() );
     ok( str != NULL, "str not set\n" );
     ok( !lstrcmpA( str, "@@BXlmblBAAAAAAAAAAAAAAAAAAAAA" ), "got %s\n", str );
     pCredFree( str );
@@ -497,7 +497,7 @@ static void test_CredMarshalCredentialA(void)
     memset( cert.rgbHashOfCert, 0xff, sizeof(cert.rgbHashOfCert) );
     str = NULL;
     ret = pCredMarshalCredentialA( CertCredential, &cert, &str );
-    ok( ret, "unexpected failure %u\n", GetLastError() );
+    ok( ret, "unexpected failure %lu\n", GetLastError() );
     ok( str != NULL, "str not set\n" );
     ok( !lstrcmpA( str, "@@B--------------------------P" ), "got %s\n", str );
     pCredFree( str );
@@ -508,7 +508,7 @@ static void test_CredMarshalCredentialA(void)
     ret = pCredMarshalCredentialA( UsernameTargetCredential, &username, &str );
     error = GetLastError();
     ok( !ret, "unexpected success\n" );
-    ok( error == ERROR_INVALID_PARAMETER, "got %u\n", error );
+    ok( error == ERROR_INVALID_PARAMETER, "got %lu\n", error );
     ok( str == (char *)0xdeadbeef, "got %p\n", str );
 
     username.UserName = emptyW;
@@ -517,13 +517,13 @@ static void test_CredMarshalCredentialA(void)
     ret = pCredMarshalCredentialA( UsernameTargetCredential, &username, &str );
     error = GetLastError();
     ok( !ret, "unexpected success\n" );
-    ok( error == ERROR_INVALID_PARAMETER, "got %u\n", error );
+    ok( error == ERROR_INVALID_PARAMETER, "got %lu\n", error );
     ok( str == (char *)0xdeadbeef, "got %p\n", str );
 
     username.UserName = tW;
     str = NULL;
     ret = pCredMarshalCredentialA( UsernameTargetCredential, &username, &str );
-    ok( ret, "unexpected failure %u\n", GetLastError() );
+    ok( ret, "unexpected failure %lu\n", GetLastError() );
     ok( str != NULL, "str not set\n" );
     ok( !lstrcmpA( str, "@@CCAAAAA0BA" ), "got %s\n", str );
     pCredFree( str );
@@ -531,7 +531,7 @@ static void test_CredMarshalCredentialA(void)
     username.UserName = teW;
     str = NULL;
     ret = pCredMarshalCredentialA( UsernameTargetCredential, &username, &str );
-    ok( ret, "unexpected failure %u\n", GetLastError() );
+    ok( ret, "unexpected failure %lu\n", GetLastError() );
     ok( str != NULL, "str not set\n" );
     ok( !lstrcmpA( str, "@@CEAAAAA0BQZAA" ), "got %s\n", str );
     pCredFree( str );
@@ -539,7 +539,7 @@ static void test_CredMarshalCredentialA(void)
     username.UserName = tesW;
     str = NULL;
     ret = pCredMarshalCredentialA( UsernameTargetCredential, &username, &str );
-    ok( ret, "unexpected failure %u\n", GetLastError() );
+    ok( ret, "unexpected failure %lu\n", GetLastError() );
     ok( str != NULL, "str not set\n" );
     ok( !lstrcmpA( str, "@@CGAAAAA0BQZAMHA" ), "got %s\n", str );
     pCredFree( str );
@@ -547,7 +547,7 @@ static void test_CredMarshalCredentialA(void)
     username.UserName = testW;
     str = NULL;
     ret = pCredMarshalCredentialA( UsernameTargetCredential, &username, &str );
-    ok( ret, "unexpected failure %u\n", GetLastError() );
+    ok( ret, "unexpected failure %lu\n", GetLastError() );
     ok( str != NULL, "str not set\n" );
     ok( !lstrcmpA( str, "@@CIAAAAA0BQZAMHA0BA" ), "got %s\n", str );
     pCredFree( str );
@@ -555,7 +555,7 @@ static void test_CredMarshalCredentialA(void)
     username.UserName = test1W;
     str = NULL;
     ret = pCredMarshalCredentialA( UsernameTargetCredential, &username, &str );
-    ok( ret, "unexpected failure %u\n", GetLastError() );
+    ok( ret, "unexpected failure %lu\n", GetLastError() );
     ok( str != NULL, "str not set\n" );
     ok( !lstrcmpA( str, "@@CKAAAAA0BQZAMHA0BQMAA" ), "got %s\n", str );
     pCredFree( str );
@@ -627,14 +627,14 @@ static void test_CredUnmarshalCredentialA(void)
     ret = pCredUnmarshalCredentialA( NULL, NULL, NULL );
     error = GetLastError();
     ok( !ret, "unexpected success\n" );
-    ok( error == ERROR_INVALID_PARAMETER, "got %u\n", error );
+    ok( error == ERROR_INVALID_PARAMETER, "got %lu\n", error );
 
     cert = NULL;
     SetLastError( 0xdeadbeef );
     ret = pCredUnmarshalCredentialA( NULL, NULL, (void **)&cert );
     error = GetLastError();
     ok( !ret, "unexpected success\n" );
-    ok( error == ERROR_INVALID_PARAMETER, "got %u\n", error );
+    ok( error == ERROR_INVALID_PARAMETER, "got %lu\n", error );
 
     type = 0;
     cert = NULL;
@@ -642,20 +642,20 @@ static void test_CredUnmarshalCredentialA(void)
     ret = pCredUnmarshalCredentialA( NULL, &type, (void **)&cert );
     error = GetLastError();
     ok( !ret, "unexpected success\n" );
-    ok( error == ERROR_INVALID_PARAMETER, "got %u\n", error );
+    ok( error == ERROR_INVALID_PARAMETER, "got %lu\n", error );
 
     if (0) { /* crash */
     SetLastError( 0xdeadbeef );
     ret = pCredUnmarshalCredentialA( "@@BAAAAAAAAAAAAAAAAAAAAAAAAAAA", &type, NULL );
     error = GetLastError();
     ok( !ret, "unexpected success\n" );
-    ok( error == ERROR_INVALID_PARAMETER, "got %u\n", error );
+    ok( error == ERROR_INVALID_PARAMETER, "got %lu\n", error );
 
     SetLastError( 0xdeadbeef );
     ret = pCredUnmarshalCredentialA( "@@BAAAAAAAAAAAAAAAAAAAAAAAAAAA", NULL, (void **)&cert );
     error = GetLastError();
     ok( !ret, "unexpected success\n" );
-    ok( error == ERROR_INVALID_PARAMETER, "got %u\n", error );
+    ok( error == ERROR_INVALID_PARAMETER, "got %lu\n", error );
     }
 
     for (i = 0; i < ARRAY_SIZE(tests); i++)
@@ -667,7 +667,7 @@ static void test_CredUnmarshalCredentialA(void)
         error = GetLastError();
         if (tests[i].unmarshaled)
         {
-            ok(ret, "[%u] unexpected failure %u\n", i, error);
+            ok(ret, "[%u] unexpected failure %lu\n", i, error);
             ok(type == tests[i].type, "[%u] got %u\n", i, type);
             ok(p != NULL, "[%u] returned pointer is NULL\n", i);
             if (tests[i].type == CertCredential)
@@ -675,7 +675,7 @@ static void test_CredUnmarshalCredentialA(void)
                 cert = p;
                 hash = tests[i].unmarshaled;
                 ok(cert->cbSize == sizeof(*cert),
-                   "[%u] wrong size %u\n", i, cert->cbSize);
+                   "[%u] wrong size %lu\n", i, cert->cbSize);
                 for (j = 0; j < sizeof(cert->rgbHashOfCert); j++)
                     ok(cert->rgbHashOfCert[j] == hash[j], "[%u] wrong data\n", i);
             }
@@ -690,7 +690,7 @@ static void test_CredUnmarshalCredentialA(void)
         else
         {
             ok(!ret, "[%u] unexpected success\n", i);
-            ok(error == ERROR_INVALID_PARAMETER, "[%u] got %u\n", i, error);
+            ok(error == ERROR_INVALID_PARAMETER, "[%u] got %lu\n", i, error);
             ok(type == tests[i].type, "[%u] got %u\n", i, type);
             ok(p == NULL, "[%u] returned pointer is not NULL\n", i);
         }
@@ -752,11 +752,11 @@ static void test_CredIsMarshaledCredentialA(void)
         SetLastError(0xdeadbeef);
         res = pCredIsMarshaledCredentialA(ptr[i]);
         if (expected)
-            ok(res != FALSE, "%d: got %d and %u for %s (expected TRUE)\n", i, res, GetLastError(), ptr[i]);
+            ok(res != FALSE, "%d: got %d and %lu for %s (expected TRUE)\n", i, res, GetLastError(), ptr[i]);
         else
         {
             /* Windows returns ERROR_INVALID_PARAMETER here, but that's not documented */
-            ok(!res, "%d: got %d and %u for %s (expected FALSE)\n", i, res, GetLastError(), ptr[i]);
+            ok(!res, "%d: got %d and %lu for %s (expected FALSE)\n", i, res, GetLastError(), ptr[i]);
         }
     }
 }
@@ -789,10 +789,10 @@ START_TEST(cred)
         BOOL ret;
         DWORD i;
         ret = pCredGetSessionTypes(CRED_TYPE_MAXIMUM, persists);
-        ok(ret, "CredGetSessionTypes failed with error %d\n", GetLastError());
-        ok(persists[0] == CRED_PERSIST_NONE, "persists[0] = %u instead of CRED_PERSIST_NONE\n", persists[0]);
+        ok(ret, "CredGetSessionTypes failed with error %ld\n", GetLastError());
+        ok(persists[0] == CRED_PERSIST_NONE, "persists[0] = %lu instead of CRED_PERSIST_NONE\n", persists[0]);
         for (i=0; i < CRED_TYPE_MAXIMUM; i++)
-            ok(persists[i] <= CRED_PERSIST_ENTERPRISE, "bad value for persists[%u]: %u\n", i, persists[i]);
+            ok(persists[i] <= CRED_PERSIST_ENTERPRISE, "bad value for persists[%lu]: %lu\n", i, persists[i]);
     }
     else
         memset(persists, CRED_PERSIST_ENTERPRISE, sizeof(persists));
diff --git a/dlls/advapi32/tests/crypt.c b/dlls/advapi32/tests/crypt.c
index 6df47cd626b..449dad35ed6 100644
--- a/dlls/advapi32/tests/crypt.c
+++ b/dlls/advapi32/tests/crypt.c
@@ -72,7 +72,7 @@ static void init_environment(void)
         CryptAcquireContextA(&hProv, szKeySet, szRsaBaseProv, PROV_RSA_FULL, CRYPT_NEWKEYSET);
     }
     ret = CryptReleaseContext(hProv, 0);
-    ok(ret, "got %u\n", GetLastError());
+    ok(ret, "got %lu\n", GetLastError());
 
     /* Ensure that container "wine_test_keyset" does exist in default PROV_RSA_FULL type provider */
     if (!CryptAcquireContextA(&hProv, szKeySet, NULL, PROV_RSA_FULL, 0))
@@ -80,13 +80,13 @@ static void init_environment(void)
         CryptAcquireContextA(&hProv, szKeySet, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET);
     }
     ret = CryptReleaseContext(hProv, 0);
-    ok(ret, "got %u\n", GetLastError());
+    ok(ret, "got %lu\n", GetLastError());
 
     /* Ensure that container "wine_test_bad_keyset" does not exist. */
     if (CryptAcquireContextA(&hProv, szBadKeySet, szRsaBaseProv, PROV_RSA_FULL, 0))
     {
         ret = CryptReleaseContext(hProv, 0);
-        ok(ret, "got %u\n", GetLastError());
+        ok(ret, "got %lu\n", GetLastError());
 
         CryptAcquireContextA(&hProv, szBadKeySet, szRsaBaseProv, PROV_RSA_FULL, CRYPT_DELETEKEYSET);
     }
@@ -101,7 +101,7 @@ static void clean_up_environment(void)
     if (CryptAcquireContextA(&hProv, szKeySet, szRsaBaseProv, PROV_RSA_FULL, 0))
     {
         ret = CryptReleaseContext(hProv, 0);
-        ok(ret, "got %u\n", GetLastError());
+        ok(ret, "got %lu\n", GetLastError());
 
         CryptAcquireContextA(&hProv, szKeySet, szRsaBaseProv, PROV_RSA_FULL, CRYPT_DELETEKEYSET);
     }
@@ -110,7 +110,7 @@ static void clean_up_environment(void)
     if (CryptAcquireContextA(&hProv, szKeySet, NULL, PROV_RSA_FULL, 0))
     {
         ret = CryptReleaseContext(hProv, 0);
-        ok(ret, "got %u\n", GetLastError());
+        ok(ret, "got %lu\n", GetLastError());
 
         CryptAcquireContextA(&hProv, szKeySet, NULL, PROV_RSA_FULL, CRYPT_DELETEKEYSET);
     }
@@ -119,7 +119,7 @@ static void clean_up_environment(void)
     if (CryptAcquireContextA(&hProv, szBadKeySet, szRsaBaseProv, PROV_RSA_FULL, 0))
     {
         ret = CryptReleaseContext(hProv, 0);
-        ok(ret, "got %u\n", GetLastError());
+        ok(ret, "got %lu\n", GetLastError());
 
         CryptAcquireContextA(&hProv, szBadKeySet, szRsaBaseProv, PROV_RSA_FULL, CRYPT_DELETEKEYSET);
     }
@@ -137,47 +137,47 @@ static void test_CryptReleaseContext(void)
     SetLastError(0xdeadbeef);
     ret = CryptReleaseContext(0, 0);
     ok(!ret, "CryptReleaseContext succeeded unexpectedly\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got %u\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = CryptReleaseContext(0, ~0);
     ok(!ret, "CryptReleaseContext succeeded unexpectedly\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got %u\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got %lu\n", GetLastError());
 
     /* Additional refcount */
 
     ret = CryptAcquireContextA(&prov, szKeySet, szRsaBaseProv, PROV_RSA_FULL, 0);
-    ok(ret, "got %u\n", GetLastError());
+    ok(ret, "got %lu\n", GetLastError());
 
     ret = CryptContextAddRef(prov, NULL, 0);
-    ok(ret, "got %u\n", GetLastError());
+    ok(ret, "got %lu\n", GetLastError());
 
     ret = CryptContextAddRef(0, NULL, 0);
-    ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, "got %u\n", GetLastError());
+    ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, "got %lu\n", GetLastError());
     ret = CryptContextAddRef(0xdeadbeef, NULL, 0);
-    ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, "got %u\n", GetLastError());
+    ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, "got %lu\n", GetLastError());
 
     ret = CryptReleaseContext(prov, 0);
-    ok(ret, "got %u\n", GetLastError());
+    ok(ret, "got %lu\n", GetLastError());
 
     /* Nonzero flags, which allow release nonetheless */
 
     SetLastError(0xdeadbeef);
     ret = CryptReleaseContext(prov, ~0);
     ok(!ret, "CryptReleaseContext succeeded unexpectedly\n");
-    ok(GetLastError() == NTE_BAD_FLAGS, "got %u\n", GetLastError());
+    ok(GetLastError() == NTE_BAD_FLAGS, "got %lu\n", GetLastError());
 
     /* Obsolete provider */
 
     SetLastError(0xdeadbeef);
     ret = CryptReleaseContext(prov, 0);
     ok(!ret, "CryptReleaseContext succeeded unexpectedly\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got %u\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = CryptReleaseContext(prov, ~0);
     ok(!ret, "CryptReleaseContext succeeded unexpectedly\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got %u\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got %lu\n", GetLastError());
 }
 
 static void test_acquire_context(void)
@@ -191,19 +191,19 @@ static void test_acquire_context(void)
 	 * but since this is likely to change between CSP versions, we don't check
 	 * this. Please don't change the order of tests. */
 	result = CryptAcquireContextA(&hProv, NULL, NULL, 0, 0);
-	ok(!result && GetLastError()==NTE_BAD_PROV_TYPE, "%d\n", GetLastError());
+	ok(!result && GetLastError()==NTE_BAD_PROV_TYPE, "%ld\n", GetLastError());
 	
 	result = CryptAcquireContextA(&hProv, NULL, NULL, 1000, 0);
-	ok(!result && GetLastError()==NTE_BAD_PROV_TYPE, "%d\n", GetLastError());
+	ok(!result && GetLastError()==NTE_BAD_PROV_TYPE, "%ld\n", GetLastError());
 
 	result = CryptAcquireContextA(&hProv, NULL, NULL, NON_DEF_PROV_TYPE, 0);
-	ok(!result && GetLastError()==NTE_PROV_TYPE_NOT_DEF, "%d\n", GetLastError());
+	ok(!result && GetLastError()==NTE_PROV_TYPE_NOT_DEF, "%ld\n", GetLastError());
 	
 	result = CryptAcquireContextA(&hProv, szKeySet, szNonExistentProv, PROV_RSA_FULL, 0);
-	ok(!result && GetLastError()==NTE_KEYSET_NOT_DEF, "%d\n", GetLastError());
+	ok(!result && GetLastError()==NTE_KEYSET_NOT_DEF, "%ld\n", GetLastError());
 
 	result = CryptAcquireContextA(&hProv, szKeySet, szRsaBaseProv, NON_DEF_PROV_TYPE, 0);
-	ok(!result && GetLastError()==NTE_PROV_TYPE_NO_MATCH, "%d\n", GetLastError());
+	ok(!result && GetLastError()==NTE_PROV_TYPE_NO_MATCH, "%ld\n", GetLastError());
 	
 
 if (0)
@@ -212,7 +212,7 @@ if (0)
 	   result = TRUE, GetLastError() == ERROR_INVALID_PARAMETER */
 	SetLastError(0xdeadbeef);
 	result = CryptAcquireContextA(NULL, szKeySet, szRsaBaseProv, PROV_RSA_FULL, 0);
-	ok(!result && GetLastError()==ERROR_INVALID_PARAMETER, "%d/%d\n", result, GetLastError());
+	ok(!result && GetLastError()==ERROR_INVALID_PARAMETER, "%d/%ld\n", result, GetLastError());
 }
 	
 	/* Last not least, try to really acquire a context. */
@@ -224,12 +224,12 @@ if (0)
 		      GLE == ERROR_SUCCESS            || 
 		      GLE == ERROR_RING2_STACK_IN_USE || 
 		      GLE == NTE_FAIL                 ||
-		      GLE == ERROR_NOT_LOGGED_ON), "%d/%d\n", result, GLE);
+		      GLE == ERROR_NOT_LOGGED_ON), "%d/%ld\n", result, GLE);
 
 	if (hProv)
 	{
 	    result = CryptReleaseContext(hProv, 0);
-	    ok(result, "got %u\n", GetLastError());
+	    ok(result, "got %lu\n", GetLastError());
 	}
 
 	/* Try again, witch an empty ("\0") szProvider parameter */
@@ -241,12 +241,12 @@ if (0)
 		      GLE == ERROR_SUCCESS            || 
 		      GLE == ERROR_RING2_STACK_IN_USE || 
 		      GLE == NTE_FAIL                 ||
-		      GLE == ERROR_NOT_LOGGED_ON), "%d/%d\n", result, GetLastError());
+		      GLE == ERROR_NOT_LOGGED_ON), "%d/%ld\n", result, GetLastError());
 
 	if (hProv)
 	{
 	    result = CryptReleaseContext(hProv, 0);
-	    ok(result, "got %u\n", GetLastError());
+	    ok(result, "got %lu\n", GetLastError());
 	}
 }
 
@@ -271,203 +271,203 @@ static void test_incorrect_api_usage(void)
     
     result = CryptAcquireContextA(&hProv, szBadKeySet, szRsaBaseProv,
                                    PROV_RSA_FULL, CRYPT_NEWKEYSET);
-    ok (result, "%08x\n", GetLastError());
+    ok (result, "%08lx\n", GetLastError());
     if (!result) return;
 
     /* Looks like native handles are just pointers. */
     ok(!!*(void **)hProv, "Got zero *(void **)hProv.\n");
 
     result = CryptCreateHash(hProv, CALG_SHA, 0, 0, &hHash);
-    ok (result, "%d\n", GetLastError());
+    ok (result, "%ld\n", GetLastError());
     if (!result) return;
 
     result = CryptDeriveKey(0, CALG_RC4, hHash, 0, &hKey2);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptDeriveKey(hProv, CALG_RC4, 0, 0, &hKey2);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptHashData(0, &temp, 1, 0);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptGenKey(hProv, CALG_RC4, 0, &hKey);
-    ok (result, "%d\n", GetLastError());
+    ok (result, "%ld\n", GetLastError());
     if (!result) return;
 
     result = pCryptHashSessionKey(hHash, 0, 0);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = pCryptHashSessionKey(0, hKey, 0);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptDestroyHash(hHash);
-    ok (result, "%08x\n", GetLastError());
+    ok (result, "%08lx\n", GetLastError());
 
     result = CryptDestroyHash(0);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptCreateHash(0xdeadbeef, CALG_SHA, 0, 0, &hHash);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptCreateHash(0, CALG_SHA, 0, 0, &hHash);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptGenKey(0, CALG_RC4, 0, &hKey);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     dwLen = 1;
     result = CryptDecrypt(hKey, 0, TRUE, 0, &temp, &dwLen);
-    ok (result, "%d\n", GetLastError());
+    ok (result, "%ld\n", GetLastError());
     result = CryptDecrypt(hKey, 0xdeadbeef, TRUE, 0, &temp, &dwLen);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
     result = CryptDecrypt(0, 0, TRUE, 0, &temp, &dwLen);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
     result = CryptDecrypt(0xdeadbeef, 0, TRUE, 0, &temp, &dwLen);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptEncrypt(hKey, 0, TRUE, 0, &temp, &dwLen, sizeof(temp));
-    ok (result, "%d\n", GetLastError());
+    ok (result, "%ld\n", GetLastError());
     result = CryptEncrypt(hKey, 0xdeadbeef, TRUE, 0, &temp, &dwLen, sizeof(temp));
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
     result = CryptEncrypt(0, 0, TRUE, 0, &temp, &dwLen, sizeof(temp));
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
     result = CryptEncrypt(0xdeadbeef, 0, TRUE, 0, &temp, &dwLen, sizeof(temp));
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     dwLen = 1;
     result = CryptExportKey(hKey, 0xdeadbeef, 0, 0, &temp, &dwLen);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptDestroyKey(hKey);
-    ok (result, "%d\n", GetLastError());
+    ok (result, "%ld\n", GetLastError());
 
     result = CryptGenKey(hProv, CALG_RC4, 0, &hKey2);
-    ok (result, "%d\n", GetLastError());
+    ok (result, "%ld\n", GetLastError());
     if (!result) return;
 
     result = CryptDestroyKey(hKey2);
-    ok (result, "%d\n", GetLastError());
+    ok (result, "%ld\n", GetLastError());
 
     result = CryptDestroyKey(0);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     dwTemp = CRYPT_MODE_ECB;    
     result = CryptSetKeyParam(hKey2, KP_MODE, (BYTE*)&dwTemp, sizeof(DWORD));
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     hProv2 = 0xdeadbeef;
     result = CryptAcquireContextA(&hProv2, szBadKeySet, NULL, PROV_RSA_FULL,
                                    CRYPT_DELETEKEYSET);
-    ok (result, "%d\n", GetLastError());
-    ok (hProv2 == 0, "%ld\n", hProv2);
+    ok (result, "%ld\n", GetLastError());
+    ok (hProv2 == 0, "%Id\n", hProv2);
     if (!result) return;
 
     result = CryptReleaseContext(hProv, 0);
-    ok(result, "got %u\n", GetLastError());
+    ok(result, "got %lu\n", GetLastError());
     if (!result) return;
 
     result = pCryptGenRandom(0, 1, &temp);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = pCryptGenRandom(hProv, 1, &temp);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptContextAddRef(hProv, NULL, 0);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptCreateHash(hProv, CALG_SHA, 0, 0, &hHash2);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     dwLen = 1;
     result = CryptDecrypt(hKey, 0, TRUE, 0, &temp, &dwLen);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     dwLen = 1;
     result = CryptEncrypt(hKey, 0, TRUE, 0, &temp, &dwLen, 1);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptDeriveKey(hProv, CALG_RC4, hHash, 0, &hKey2);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = pCryptDuplicateHash(hHash, NULL, 0, &hHash2);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptDuplicateKey(hKey, NULL, 0, &hKey2);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     dwLen = 1;
     result = CryptExportKey(hKey, 0, 0, 0, &temp, &dwLen);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptGenKey(hProv, CALG_RC4, 0, &hKey2);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     dwLen = 1;
     result = CryptGetHashParam(hHash, 0, &temp, &dwLen, 0);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     dwLen = 1;
     result = CryptGetKeyParam(hKey, 0, &temp, &dwLen, 0);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     dwLen = 1;
     result = CryptGetProvParam(hProv, 0, &temp, &dwLen, 0);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptGetUserKey(0, 0, &hKey2);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
     
     result = CryptGetUserKey(hProv, 0, &hKey2);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptHashData(hHash, &temp, 1, 0);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = pCryptHashSessionKey(hHash, hKey, 0);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptImportKey(hProv, &temp, 1, 0, 0, &hKey2);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     if (pCryptSignHashW)
     {
         dwLen = 1;
         result = pCryptSignHashW(hHash, 0, NULL, 0, &temp, &dwLen);
         ok (!result && (GetLastError() == ERROR_INVALID_PARAMETER ||
-            GetLastError() == ERROR_CALL_NOT_IMPLEMENTED), "%d\n", GetLastError());
+            GetLastError() == ERROR_CALL_NOT_IMPLEMENTED), "%ld\n", GetLastError());
         result = pCryptSignHashW(hHash, 0, NULL, 0, &temp, &dwLen);
         ok (!result && (GetLastError() == ERROR_INVALID_PARAMETER ||
-            GetLastError() == ERROR_CALL_NOT_IMPLEMENTED), "%d\n", GetLastError());
+            GetLastError() == ERROR_CALL_NOT_IMPLEMENTED), "%ld\n", GetLastError());
     }
     else
         win_skip("CryptSignHashW is not available\n");
 
     result = CryptSetKeyParam(hKey, 0, &temp, 1);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptSetHashParam(hHash, 0, &temp, 1);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptSetProvParam(0, 0, &temp, 1);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     result = CryptSetProvParam(hProv, 0, &temp, 1);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 
     if (pCryptVerifySignatureW)
     {
         result = pCryptVerifySignatureW(hHash, &temp, 1, hKey, NULL, 0);
         ok (!result && (GetLastError() == ERROR_INVALID_PARAMETER ||
-            GetLastError() == ERROR_CALL_NOT_IMPLEMENTED), "%d\n", GetLastError());
+            GetLastError() == ERROR_CALL_NOT_IMPLEMENTED), "%ld\n", GetLastError());
     }
     else
         win_skip("CryptVerifySignatureW is not available\n");
 
     result = CryptDestroyHash(hHash);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
     
     result = CryptDestroyKey(hKey);
-    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+    ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 }
 
 static const BYTE privKey[] = {
@@ -518,51 +518,51 @@ static void test_verify_sig(void)
 		return;
 	}
 	ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
-	 "Expected ERROR_INVALID_PARAMETER, got %08x\n", GetLastError());
+	 "Expected ERROR_INVALID_PARAMETER, got %08lx\n", GetLastError());
 	ret = CryptAcquireContextA(&prov, szKeySet, NULL, PROV_RSA_FULL,
 	 CRYPT_NEWKEYSET);
 	if (!ret && GetLastError() == NTE_EXISTS)
 		ret = CryptAcquireContextA(&prov, szKeySet, NULL, PROV_RSA_FULL, 0);
-	ok(ret, "CryptAcquireContextA failed: %08x\n", GetLastError());
+	ok(ret, "CryptAcquireContextA failed: %08lx\n", GetLastError());
 	ret = CryptImportKey(prov, (LPBYTE)privKey, sizeof(privKey), 0, 0, &key);
-	ok(ret, "CryptImportKey failed: %08x\n", GetLastError());
+	ok(ret, "CryptImportKey failed: %08lx\n", GetLastError());
 	ret = CryptCreateHash(prov, CALG_MD5, 0, 0, &hash);
-	ok(ret, "CryptCreateHash failed: %08x\n", GetLastError());
+	ok(ret, "CryptCreateHash failed: %08lx\n", GetLastError());
 	SetLastError(0xdeadbeef);
 	ret = pCryptVerifySignatureW(hash, NULL, 0, 0, NULL, 0);
 	ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
-	 "Expected ERROR_INVALID_PARAMETER, got %08x\n", GetLastError());
+	 "Expected ERROR_INVALID_PARAMETER, got %08lx\n", GetLastError());
 	SetLastError(0xdeadbeef);
 	ret = pCryptVerifySignatureW(0, NULL, 0, key, NULL, 0);
 	ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
-	 "Expected ERROR_INVALID_PARAMETER, got %08x\n", GetLastError());
+	 "Expected ERROR_INVALID_PARAMETER, got %08lx\n", GetLastError());
 	SetLastError(0xdeadbeef);
 	ret = pCryptVerifySignatureW(hash, NULL, 0, key, NULL, 0);
 	ok(!ret && (GetLastError() == NTE_BAD_SIGNATURE ||
 	 GetLastError() == ERROR_INVALID_PARAMETER),
-	 "Expected NTE_BAD_SIGNATURE or ERROR_INVALID_PARAMETER, got %08x\n",
+	 "Expected NTE_BAD_SIGNATURE or ERROR_INVALID_PARAMETER, got %08lx\n",
 	 GetLastError());
 	SetLastError(0xdeadbeef);
 	ret = pCryptVerifySignatureW(hash, NULL, sizeof(bogus), key, NULL, 0);
 	ok(!ret && (GetLastError() == NTE_BAD_SIGNATURE ||
 	 GetLastError() == ERROR_INVALID_PARAMETER),
-	 "Expected NTE_BAD_SIGNATURE or ERROR_INVALID_PARAMETER, got %08x\n",
+	 "Expected NTE_BAD_SIGNATURE or ERROR_INVALID_PARAMETER, got %08lx\n",
 	 GetLastError());
 	SetLastError(0xdeadbeef);
 	ret = pCryptVerifySignatureW(hash, bogus, 0, key, NULL, 0);
 	ok(!ret && GetLastError() == NTE_BAD_SIGNATURE,
-	 "Expected NTE_BAD_SIGNATURE, got %08x\n", GetLastError());
+	 "Expected NTE_BAD_SIGNATURE, got %08lx\n", GetLastError());
 	SetLastError(0xdeadbeef);
 	ret = pCryptVerifySignatureW(hash, bogus, sizeof(bogus), key, NULL, 0);
 	ok(!ret &&
          (GetLastError() == NTE_BAD_SIGNATURE ||
          broken(GetLastError() == NTE_BAD_HASH_STATE /* older NT4 */)),
-	 "Expected NTE_BAD_SIGNATURE, got %08x\n", GetLastError());
+	 "Expected NTE_BAD_SIGNATURE, got %08lx\n", GetLastError());
 	CryptDestroyKey(key);
 	CryptDestroyHash(hash);
 
 	ret = CryptReleaseContext(prov, 0);
-	ok(ret, "got %u\n", GetLastError());
+	ok(ret, "got %lu\n", GetLastError());
 }
 
 static BOOL FindProvRegVals(DWORD dwIndex, DWORD *pdwProvType, LPSTR *pszProvName, 
@@ -626,11 +626,11 @@ static void test_enum_providers(void)
 	
 	/* check pdwReserved flag for NULL */
 	result = pCryptEnumProvidersA(dwIndex, &notNull, 0, &type, NULL, &providerLen);
-	ok(!result && GetLastError()==ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
+	ok(!result && GetLastError()==ERROR_INVALID_PARAMETER, "%ld\n", GetLastError());
 	
 	/* check dwFlags == 0 */
 	result = pCryptEnumProvidersA(dwIndex, NULL, notZeroFlags, &type, NULL, &providerLen);
-	ok(!result && GetLastError()==NTE_BAD_FLAGS, "%d\n", GetLastError());
+	ok(!result && GetLastError()==NTE_BAD_FLAGS, "%ld\n", GetLastError());
 	
 	/* alloc provider to half the size required
 	 * cbName holds the size required */
@@ -639,7 +639,7 @@ static void test_enum_providers(void)
 		return;
 
 	result = pCryptEnumProvidersA(dwIndex, NULL, 0, &type, provider, &providerLen);
-	ok(!result && GetLastError()==ERROR_MORE_DATA, "expected %i, got %d\n",
+	ok(!result && GetLastError()==ERROR_MORE_DATA, "expected %i, got %ld\n",
 		ERROR_MORE_DATA, GetLastError());
 
 	LocalFree(provider);
@@ -657,7 +657,7 @@ static void test_enum_providers(void)
 	 * ERROR_NO_MORE_ITEMS */
 	for (count = 0; count < provCount + 1; count++)
 		result = pCryptEnumProvidersA(count, NULL, 0, &type, NULL, &providerLen);
-	ok(!result && GetLastError()==ERROR_NO_MORE_ITEMS, "expected %i, got %d\n", 
+	ok(!result && GetLastError()==ERROR_NO_MORE_ITEMS, "expected %i, got %ld\n", 
 			ERROR_NO_MORE_ITEMS, GetLastError());
 	
 	/* check expected versus actual values returned */
@@ -668,20 +668,20 @@ static void test_enum_providers(void)
 		
 	providerLen = -1;
 	result = pCryptEnumProvidersA(dwIndex, NULL, 0, &type, provider, &providerLen);
-	ok(result, "expected TRUE, got %d\n", result);
-	ok(type==dwType, "expected %d, got %d\n", dwType, type);
+	ok(result, "expected TRUE, got %ld\n", result);
+	ok(type==dwType, "expected %ld, got %ld\n", dwType, type);
 	if (pszProvName)
 	    ok(!strcmp(pszProvName, provider), "expected %s, got %s\n", pszProvName, provider);
-	ok(cbName==providerLen, "expected %d, got %d\n", cbName, providerLen);
+	ok(cbName==providerLen, "expected %ld, got %ld\n", cbName, providerLen);
 
 	providerLen = -1000;
 	provider[0] = 0;
 	result = pCryptEnumProvidersA(dwIndex, NULL, 0, &type, provider, &providerLen);
-	ok(result, "expected TRUE, got %d\n", result);
-	ok(type==dwType, "expected %d, got %d\n", dwType, type);
+	ok(result, "expected TRUE, got %ld\n", result);
+	ok(type==dwType, "expected %ld, got %ld\n", dwType, type);
 	if (pszProvName)
 	    ok(!strcmp(pszProvName, provider), "expected %s, got %s\n", pszProvName, provider);
-	ok(cbName==providerLen, "expected %d, got %d\n", cbName, providerLen);
+	ok(cbName==providerLen, "expected %ld, got %ld\n", cbName, providerLen);
 
 	LocalFree(pszProvName);
 	LocalFree(provider);
@@ -779,12 +779,12 @@ static void test_enum_provider_types(void)
 
 	/* check pdwReserved for NULL */
 	result = pCryptEnumProviderTypesA(index, &notNull, 0, &provType, typeName, &typeNameSize);
-	ok(!result && GetLastError()==ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n",
+	ok(!result && GetLastError()==ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n",
 		GetLastError());
 
 	/* check dwFlags == zero */
 	result = pCryptEnumProviderTypesA(index, NULL, notZeroFlags, &provType, typeName, &typeNameSize);
-	ok(!result && GetLastError()==NTE_BAD_FLAGS, "expected ERROR_INVALID_PARAMETER, got %d\n",
+	ok(!result && GetLastError()==NTE_BAD_FLAGS, "expected ERROR_INVALID_PARAMETER, got %ld\n",
 		GetLastError());
 
 	/* This test fails under Win2k SP4:
@@ -799,7 +799,7 @@ static void test_enum_provider_types(void)
 
 		SetLastError(0xdeadbeef);
 		result = pCryptEnumProviderTypesA(index, NULL, 0, &provType, typeName, &typeNameSize);
-		ok(!result && GetLastError()==ERROR_MORE_DATA, "expected 0/ERROR_MORE_DATA, got %d/%d\n",
+		ok(!result && GetLastError()==ERROR_MORE_DATA, "expected 0/ERROR_MORE_DATA, got %ld/%ld\n",
 			result, GetLastError());
 
 		LocalFree(typeName);
@@ -812,28 +812,28 @@ static void test_enum_provider_types(void)
 	while(pCryptEnumProviderTypesA(typeCount++, NULL, 0, &provType, NULL, &typeNameSize))
 		;
 	typeCount--;
-	ok(typeCount==dwTypeCount, "expected %d, got %d\n", dwTypeCount, typeCount);
+	ok(typeCount==dwTypeCount, "expected %ld, got %ld\n", dwTypeCount, typeCount);
 
 	/* loop past the actual number of provider types to get the error
 	 * ERROR_NO_MORE_ITEMS */
 	for (typeCount = 0; typeCount < dwTypeCount + 1; typeCount++)
 		result = pCryptEnumProviderTypesA(typeCount, NULL, 0, &provType, NULL, &typeNameSize);
-	ok(!result && GetLastError()==ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %d\n",
+	ok(!result && GetLastError()==ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %ld\n",
 		GetLastError());
 
 	/* check expected versus actual values returned */
 	result = pCryptEnumProviderTypesA(index, NULL, 0, &provType, NULL, &typeNameSize);
-	ok(result && typeNameSize==cbTypeName, "expected %d, got %d\n", cbTypeName, typeNameSize);
+	ok(result && typeNameSize==cbTypeName, "expected %ld, got %ld\n", cbTypeName, typeNameSize);
 	if (!(typeName = LocalAlloc(LMEM_ZEROINIT, typeNameSize)))
 		goto cleanup;
 
 	typeNameSize = 0xdeadbeef;
 	result = pCryptEnumProviderTypesA(index, NULL, 0, &provType, typeName, &typeNameSize);
-	ok(result, "expected TRUE, got %d\n", result);
-	ok(provType==dwProvType, "expected %d, got %d\n", dwProvType, provType);
+	ok(result, "expected TRUE, got %ld\n", result);
+	ok(provType==dwProvType, "expected %ld, got %ld\n", dwProvType, provType);
 	if (pszTypeName)
 		ok(!strcmp(pszTypeName, typeName), "expected %s, got %s\n", pszTypeName, typeName);
-	ok(typeNameSize==cbTypeName, "expected %d, got %d\n", cbTypeName, typeNameSize);
+	ok(typeNameSize==cbTypeName, "expected %ld, got %ld\n", cbTypeName, typeNameSize);
 
 	LocalFree(typeName);
 cleanup:
@@ -920,13 +920,13 @@ static void test_get_default_provider(void)
 	
 	/* check pdwReserved for NULL */
 	result = pCryptGetDefaultProviderA(provType, &notNull, flags, provName, &provNameSize);
-	ok(!result && GetLastError()==ERROR_INVALID_PARAMETER, "expected %i, got %d\n",
+	ok(!result && GetLastError()==ERROR_INVALID_PARAMETER, "expected %i, got %ld\n",
 		ERROR_INVALID_PARAMETER, GetLastError());
 	
 	/* check for invalid flag */
 	flags = 0xdeadbeef;
 	result = pCryptGetDefaultProviderA(provType, NULL, flags, provName, &provNameSize);
-	ok(!result && GetLastError()==NTE_BAD_FLAGS, "expected %d, got %d\n",
+	ok(!result && GetLastError()==NTE_BAD_FLAGS, "expected %ld, got %ld\n",
 		NTE_BAD_FLAGS, GetLastError());
 	flags = CRYPT_MACHINE_DEFAULT;
 	
@@ -935,7 +935,7 @@ static void test_get_default_provider(void)
 	result = pCryptGetDefaultProviderA(provType, NULL, flags, provName, &provNameSize);
 	ok(!result && (GetLastError() == NTE_BAD_PROV_TYPE ||
 	               GetLastError() == ERROR_INVALID_PARAMETER),
-		"expected NTE_BAD_PROV_TYPE or ERROR_INVALID_PARAMETER, got %d/%d\n",
+		"expected NTE_BAD_PROV_TYPE or ERROR_INVALID_PARAMETER, got %ld/%ld\n",
 		result, GetLastError());
 	provType = PROV_RSA_FULL;
 	
@@ -948,14 +948,14 @@ static void test_get_default_provider(void)
 		return;
 	
 	result = pCryptGetDefaultProviderA(provType, NULL, flags, provName, &provNameSize);
-	ok(!result && GetLastError()==ERROR_MORE_DATA, "expected %i, got %d\n",
+	ok(!result && GetLastError()==ERROR_MORE_DATA, "expected %i, got %ld\n",
 		ERROR_MORE_DATA, GetLastError());
 		
 	LocalFree(provName);
 	
 	/* check expected versus actual values returned */
 	result = pCryptGetDefaultProviderA(provType, NULL, flags, NULL, &provNameSize);
-	ok(result && provNameSize==cbProvName, "expected %d, got %d\n", cbProvName, provNameSize);
+	ok(result && provNameSize==cbProvName, "expected %ld, got %ld\n", cbProvName, provNameSize);
 	provNameSize = cbProvName;
 	
 	if (!(provName = LocalAlloc(LMEM_ZEROINIT, provNameSize)))
@@ -963,10 +963,10 @@ static void test_get_default_provider(void)
 	
 	provNameSize = 0xdeadbeef;
 	result = pCryptGetDefaultProviderA(provType, NULL, flags, provName, &provNameSize);
-	ok(result, "expected TRUE, got %d\n", result);
+	ok(result, "expected TRUE, got %ld\n", result);
 	if(pszProvName)
 	    ok(!strcmp(pszProvName, provName), "expected %s, got %s\n", pszProvName, provName);
-	ok(provNameSize==cbProvName, "expected %d, got %d\n", cbProvName, provNameSize);
+	ok(provNameSize==cbProvName, "expected %ld, got %ld\n", cbProvName, provNameSize);
 
 	LocalFree(pszProvName);
 	LocalFree(provName);
@@ -994,11 +994,11 @@ static void test_set_provider_ex(void)
         if (!(curProvName = LocalAlloc(LMEM_ZEROINIT, curlen)))
             return;
         result = pCryptGetDefaultProviderA(PROV_RSA_FULL, NULL, CRYPT_MACHINE_DEFAULT, curProvName, &curlen);
-        ok(result, "%d\n", GetLastError());
+        ok(result, "%ld\n", GetLastError());
 
 	/* check pdwReserved for NULL */
 	result = pCryptSetProviderExA(MS_DEF_PROV_A, PROV_RSA_FULL, &notNull, CRYPT_MACHINE_DEFAULT);
-	ok(!result && GetLastError()==ERROR_INVALID_PARAMETER, "expected %i, got %d\n",
+	ok(!result && GetLastError()==ERROR_INVALID_PARAMETER, "expected %i, got %ld\n",
 		ERROR_INVALID_PARAMETER, GetLastError());
 
 	/* remove the default provider and then set it to MS_DEF_PROV/PROV_RSA_FULL */
@@ -1007,31 +1007,31 @@ static void test_set_provider_ex(void)
 	if (!result)
 	{
                 ok( GetLastError() == ERROR_ACCESS_DENIED || broken(GetLastError() == ERROR_INVALID_PARAMETER),
-                    "wrong error %u\n", GetLastError() );
+                    "wrong error %lu\n", GetLastError() );
 		skip("Not enough rights to remove the default provider\n");
                 LocalFree(curProvName);
 		return;
 	}
 
 	result = pCryptSetProviderExA(MS_DEF_PROV_A, PROV_RSA_FULL, NULL, CRYPT_MACHINE_DEFAULT);
-	ok(result, "%d\n", GetLastError());
+	ok(result, "%ld\n", GetLastError());
 	
 	/* call CryptGetDefaultProvider to see if they match */
 	result = pCryptGetDefaultProviderA(PROV_RSA_FULL, NULL, CRYPT_MACHINE_DEFAULT, NULL, &cbProvName);
-	ok(result, "%d\n", GetLastError());
+	ok(result, "%ld\n", GetLastError());
 	if (!(pszProvName = LocalAlloc(LMEM_ZEROINIT, cbProvName)))
 		goto reset;
 
 	result = pCryptGetDefaultProviderA(PROV_RSA_FULL, NULL, CRYPT_MACHINE_DEFAULT, pszProvName, &cbProvName);
 	ok(result && !strcmp(MS_DEF_PROV_A, pszProvName), "expected %s, got %s\n", MS_DEF_PROV_A, pszProvName);
-	ok(result && cbProvName==(strlen(MS_DEF_PROV_A) + 1), "expected %i, got %d\n", (lstrlenA(MS_DEF_PROV_A) + 1), cbProvName);
+	ok(result && cbProvName==(strlen(MS_DEF_PROV_A) + 1), "expected %i, got %ld\n", (lstrlenA(MS_DEF_PROV_A) + 1), cbProvName);
 
 	LocalFree(pszProvName);
 
 reset:
         /* Set the provider back to its original */
         result = pCryptSetProviderExA(curProvName, PROV_RSA_FULL, NULL, CRYPT_MACHINE_DEFAULT);
-        ok(result, "%d\n", GetLastError());
+        ok(result, "%ld\n", GetLastError());
         LocalFree(curProvName);
 }
 
@@ -1059,7 +1059,7 @@ static void test_machine_guid(void)
    {
        restoreGuid = TRUE;
        r = RegDeleteValueA(key, "MachineGuid");
-       ok(!r || broken(r == ERROR_ACCESS_DENIED) /*win8*/, "RegDeleteValueA failed: %d\n", r);
+       ok(!r || broken(r == ERROR_ACCESS_DENIED) /*win8*/, "RegDeleteValueA failed: %ld\n", r);
        if (r == ERROR_ACCESS_DENIED)
        {
            skip("broken virtualization on HKLM\\Software\\Microsoft\\Cryptography\n");
@@ -1068,14 +1068,14 @@ static void test_machine_guid(void)
        }
    }
    else
-       ok(r == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %d\n",
+       ok(r == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %ld\n",
           r);
    /* Create and release a provider */
    ret = CryptAcquireContextA(&hCryptProv, szKeySet, NULL, PROV_RSA_FULL, 0);
    ok(ret || broken(!ret && GetLastError() == NTE_KEYSET_ENTRY_BAD /* NT4 */),
-      "CryptAcquireContextA failed: %08x\n", GetLastError());
+      "CryptAcquireContextA failed: %08lx\n", GetLastError());
    ret = CryptReleaseContext(hCryptProv, 0);
-   ok(ret, "got %u\n", GetLastError());
+   ok(ret, "got %lu\n", GetLastError());
 
    if (restoreGuid)
        RegSetValueExA(key, "MachineGuid", 0, REG_SZ, (const BYTE *)originalGuid,
@@ -1105,7 +1105,7 @@ static void test_rc2_keylen(void)
     SetLastError(0xdeadbeef);
     ret = CryptAcquireContextA(&provider, NULL, NULL,
                                 PROV_RSA_FULL, CRYPT_VERIFYCONTEXT);
-    ok(ret, "CryptAcquireContext error %u\n", GetLastError());
+    ok(ret, "CryptAcquireContext error %lu\n", GetLastError());
     if (ret)
     {
         key_blob.header.bType = PLAINTEXTKEYBLOB;
@@ -1122,18 +1122,18 @@ static void test_rc2_keylen(void)
         /* CRYPT_IPSEC_HMAC_KEY is not supported on W2K and lower */
         ok(ret ||
            broken(!ret && GetLastError() == NTE_BAD_FLAGS),
-           "CryptImportKey error %08x\n", GetLastError());
+           "CryptImportKey error %08lx\n", GetLastError());
         if (ret)
             CryptDestroyKey(hkey);
 
         ret = CryptReleaseContext(provider, 0);
-        ok(ret, "got %u\n", GetLastError());
+        ok(ret, "got %lu\n", GetLastError());
     }
 
     SetLastError(0xdeadbeef);
     ret = CryptAcquireContextA(&provider, NULL, MS_DEF_PROV_A,
                                 PROV_RSA_FULL, CRYPT_VERIFYCONTEXT);
-    ok(ret, "CryptAcquireContext error %08x\n", GetLastError());
+    ok(ret, "CryptAcquireContext error %08lx\n", GetLastError());
 
     if (ret)
     {
@@ -1145,7 +1145,7 @@ static void test_rc2_keylen(void)
                     GetLastError() == NTE_BAD_LEN || /* Win7 */
                     GetLastError() == NTE_BAD_TYPE || /* W2K */
                     GetLastError() == NTE_PERM), /* Win9x, WinMe and NT4 */
-           "unexpected error %08x\n", GetLastError());
+           "unexpected error %08lx\n", GetLastError());
         /* but importing an 56-bit (7-byte) key does.. */
         key_blob.key_size = 7;
         SetLastError(0xdeadbeef);
@@ -1154,7 +1154,7 @@ static void test_rc2_keylen(void)
         ok(ret ||
            broken(!ret && GetLastError() == NTE_BAD_TYPE) || /* W2K */
            broken(!ret && GetLastError() == NTE_PERM), /* Win9x, WinMe and NT4 */
-           "CryptAcquireContext error %08x\n", GetLastError());
+           "CryptAcquireContext error %08lx\n", GetLastError());
         if (ret)
             CryptDestroyKey(hkey);
         /* as does importing a 16-byte key with the base provider when
@@ -1167,18 +1167,18 @@ static void test_rc2_keylen(void)
         /* CRYPT_IPSEC_HMAC_KEY is not supported on W2K and lower */
         ok(ret ||
            broken(!ret && GetLastError() == NTE_BAD_FLAGS),
-           "CryptImportKey error %08x\n", GetLastError());
+           "CryptImportKey error %08lx\n", GetLastError());
         if (ret)
             CryptDestroyKey(hkey);
 
         ret = CryptReleaseContext(provider, 0);
-        ok(ret, "got %u\n", GetLastError());
+        ok(ret, "got %lu\n", GetLastError());
     }
 
     key_blob.key_size = sizeof(key);
     SetLastError(0xdeadbeef);
     ret = CryptAcquireContextA(&provider, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT);
-    ok(ret, "CryptAcquireContext error %08x\n", GetLastError());
+    ok(ret, "CryptAcquireContext error %08lx\n", GetLastError());
 
     if (ret)
     {
@@ -1190,7 +1190,7 @@ static void test_rc2_keylen(void)
                 0, CRYPT_IPSEC_HMAC_KEY, &hkey);
         ok(ret ||
            broken(!ret && GetLastError() == NTE_BAD_FLAGS),
-           "CryptImportKey error %08x\n", GetLastError());
+           "CryptImportKey error %08lx\n", GetLastError());
         if (ret)
             CryptDestroyKey(hkey);
 
@@ -1203,12 +1203,12 @@ static void test_rc2_keylen(void)
                 0, CRYPT_IPSEC_HMAC_KEY, &hkey);
         ok(ret ||
            broken(!ret && GetLastError() == NTE_BAD_FLAGS),
-           "CryptImportKey error %08x\n", GetLastError());
+           "CryptImportKey error %08lx\n", GetLastError());
         if (ret)
             CryptDestroyKey(hkey);
 
         ret = CryptReleaseContext(provider, 0);
-        ok(ret, "got %u\n", GetLastError());
+        ok(ret, "got %lu\n", GetLastError());
     }
 }
 
@@ -1231,7 +1231,7 @@ static void test_SystemFunction036(void)
     {
         SetLastError(0xdeadbeef);
         ret = pSystemFunction036(NULL, 5);
-        trace("ret = %d, GetLastError() = %d\n", ret, GetLastError());
+        trace("ret = %d, GetLastError() = %ld\n", ret, GetLastError());
     }
 
     ret = pSystemFunction036(&test, 0);
@@ -1250,29 +1250,29 @@ static void test_container_sd(void)
 
     ret = CryptAcquireContextA(&prov, "winetest", "Microsoft Enhanced Cryptographic Provider v1.0",
                                PROV_RSA_FULL, CRYPT_MACHINE_KEYSET|CRYPT_NEWKEYSET);
-    ok(ret, "got %u\n", GetLastError());
+    ok(ret, "got %lu\n", GetLastError());
 
     len = 0;
     SetLastError(0xdeadbeef);
     ret = CryptGetProvParam(prov, PP_KEYSET_SEC_DESCR, NULL, &len, OWNER_SECURITY_INFORMATION);
     err = GetLastError();
-    ok(ret, "got %u\n", err);
-    ok(err == ERROR_INSUFFICIENT_BUFFER || broken(err == ERROR_INVALID_PARAMETER), "got %u\n", err);
+    ok(ret, "got %lu\n", err);
+    ok(err == ERROR_INSUFFICIENT_BUFFER || broken(err == ERROR_INVALID_PARAMETER), "got %lu\n", err);
     ok(len, "expected len > 0\n");
 
     sd = HeapAlloc(GetProcessHeap(), 0, len);
     ret = CryptGetProvParam(prov, PP_KEYSET_SEC_DESCR, (BYTE *)sd, &len, OWNER_SECURITY_INFORMATION);
-    ok(ret, "got %u\n", GetLastError());
+    ok(ret, "got %lu\n", GetLastError());
     HeapFree(GetProcessHeap(), 0, sd);
 
     ret = CryptReleaseContext(prov, 0);
-    ok(ret, "got %u\n", GetLastError());
+    ok(ret, "got %lu\n", GetLastError());
 
     prov = 0xdeadbeef;
     ret = CryptAcquireContextA(&prov, "winetest", "Microsoft Enhanced Cryptographic Provider v1.0",
                                PROV_RSA_FULL, CRYPT_MACHINE_KEYSET|CRYPT_DELETEKEYSET);
-    ok(ret, "got %u\n", GetLastError());
-    ok(prov == 0, "got %ld\n", prov);
+    ok(ret, "got %lu\n", GetLastError());
+    ok(prov == 0, "got %Id\n", prov);
 }
 
 START_TEST(crypt)
diff --git a/dlls/advapi32/tests/eventlog.c b/dlls/advapi32/tests/eventlog.c
index 7e66e9ad8d7..793addf3d29 100644
--- a/dlls/advapi32/tests/eventlog.c
+++ b/dlls/advapi32/tests/eventlog.c
@@ -70,7 +70,7 @@ static BOOL create_backup(const char *filename)
         win_skip( "Can't open event log\n" );
         return FALSE;
     }
-    ok(handle != NULL, "OpenEventLogA(Application) failed : %d\n", GetLastError());
+    ok(handle != NULL, "OpenEventLogA(Application) failed : %ld\n", GetLastError());
 
     DeleteFileA(filename);
     rc = BackupEventLogA(handle, filename);
@@ -80,12 +80,12 @@ static BOOL create_backup(const char *filename)
         CloseEventLog(handle);
         return FALSE;
     }
-    ok(rc, "BackupEventLogA failed, le=%u\n", GetLastError());
+    ok(rc, "BackupEventLogA failed, le=%lu\n", GetLastError());
     CloseEventLog(handle);
 
     attribs = GetFileAttributesA(filename);
     todo_wine
-    ok(attribs != INVALID_FILE_ATTRIBUTES, "Expected a backup file attribs=%#x le=%u\n", attribs, GetLastError());
+    ok(attribs != INVALID_FILE_ATTRIBUTES, "Expected a backup file attribs=%#lx le=%lu\n", attribs, GetLastError());
     return TRUE;
 }
 
@@ -99,46 +99,46 @@ static void test_open_close(void)
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_HANDLE ||
        GetLastError() == ERROR_NOACCESS, /* W2K */
-       "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     handle = OpenEventLogA(NULL, NULL);
     ok(handle == NULL, "Didn't expect a handle\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     handle = OpenEventLogA("IDontExist", NULL);
     ok(handle == NULL, "Didn't expect a handle\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     handle = OpenEventLogA("IDontExist", "deadbeef");
     ok(handle == NULL, "Didn't expect a handle\n");
     ok(GetLastError() == RPC_S_SERVER_UNAVAILABLE ||
        GetLastError() == RPC_S_INVALID_NET_ADDR, /* Some Vista and Win7 */
-       "Expected RPC_S_SERVER_UNAVAILABLE, got %d\n", GetLastError());
+       "Expected RPC_S_SERVER_UNAVAILABLE, got %ld\n", GetLastError());
 
     /* This one opens the Application log */
     handle = OpenEventLogA(NULL, "deadbeef");
-    ok(handle != NULL, "Expected a handle : %d\n", GetLastError());
+    ok(handle != NULL, "Expected a handle : %ld\n", GetLastError());
     ret = CloseEventLog(handle);
-    ok(ret, "Expected success : %d\n", GetLastError());
+    ok(ret, "Expected success : %ld\n", GetLastError());
     /* Close a second time */
     SetLastError(0xdeadbeef);
     ret = CloseEventLog(handle);
     todo_wine
     {
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
     }
 
     /* Empty servername should be read as local server */
     handle = OpenEventLogA("", "Application");
-    ok(handle != NULL, "Expected a handle : %d\n", GetLastError());
+    ok(handle != NULL, "Expected a handle : %ld\n", GetLastError());
     CloseEventLog(handle);
 
     handle = OpenEventLogA(NULL, "Application");
-    ok(handle != NULL, "Expected a handle : %d\n", GetLastError());
+    ok(handle != NULL, "Expected a handle : %ld\n", GetLastError());
     CloseEventLog(handle);
 }
 
@@ -159,47 +159,47 @@ static void test_info(void)
     SetLastError(0xdeadbeef);
     ret = pGetEventLogInformation(NULL, 1, NULL, 0, NULL);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_LEVEL, "Expected ERROR_INVALID_LEVEL, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_LEVEL, "Expected ERROR_INVALID_LEVEL, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pGetEventLogInformation(NULL, EVENTLOG_FULL_INFO, NULL, 0, NULL);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     handle = OpenEventLogA(NULL, "Application");
-    ok(handle != NULL, "OpenEventLogA(Application) failed : %d\n", GetLastError());
+    ok(handle != NULL, "OpenEventLogA(Application) failed : %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pGetEventLogInformation(handle, EVENTLOG_FULL_INFO, NULL, 0, NULL);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == RPC_X_NULL_REF_POINTER, "Expected RPC_X_NULL_REF_POINTER, got %d\n", GetLastError());
+    ok(GetLastError() == RPC_X_NULL_REF_POINTER, "Expected RPC_X_NULL_REF_POINTER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pGetEventLogInformation(handle, EVENTLOG_FULL_INFO, NULL, 0, &needed);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == RPC_X_NULL_REF_POINTER, "Expected RPC_X_NULL_REF_POINTER, got %d\n", GetLastError());
+    ok(GetLastError() == RPC_X_NULL_REF_POINTER, "Expected RPC_X_NULL_REF_POINTER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pGetEventLogInformation(handle, EVENTLOG_FULL_INFO, efi, 0, NULL);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == RPC_X_NULL_REF_POINTER, "Expected RPC_X_NULL_REF_POINTER, got %d\n", GetLastError());
+    ok(GetLastError() == RPC_X_NULL_REF_POINTER, "Expected RPC_X_NULL_REF_POINTER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     needed = 0xdeadbeef;
     efi->dwFull = 0xdeadbeef;
     ret = pGetEventLogInformation(handle, EVENTLOG_FULL_INFO, efi, 0, &needed);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
-    ok(needed == sizeof(EVENTLOG_FULL_INFORMATION), "Expected sizeof(EVENTLOG_FULL_INFORMATION), got %d\n", needed);
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
+    ok(needed == sizeof(EVENTLOG_FULL_INFORMATION), "Expected sizeof(EVENTLOG_FULL_INFORMATION), got %ld\n", needed);
     ok(efi->dwFull == 0xdeadbeef, "Expected no change to the dwFull member\n");
 
     /* Not that we care, but on success last error is set to ERROR_IO_PENDING */
     efi->dwFull = 0xdeadbeef;
     needed = sizeof(buffer);
     ret = pGetEventLogInformation(handle, EVENTLOG_FULL_INFO, efi, needed, &needed);
-    ok(ret, "Expected success : %d\n", GetLastError());
-    ok(needed == sizeof(EVENTLOG_FULL_INFORMATION), "Expected sizeof(EVENTLOG_FULL_INFORMATION), got %d\n", needed);
-    ok(efi->dwFull == 0 || efi->dwFull == 1, "Expected 0 (not full) or 1 (full), got %d\n", efi->dwFull);
+    ok(ret, "Expected success : %ld\n", GetLastError());
+    ok(needed == sizeof(EVENTLOG_FULL_INFORMATION), "Expected sizeof(EVENTLOG_FULL_INFORMATION), got %ld\n", needed);
+    ok(efi->dwFull == 0 || efi->dwFull == 1, "Expected 0 (not full) or 1 (full), got %ld\n", efi->dwFull);
 
     CloseEventLog(handle);
 }
@@ -214,26 +214,26 @@ static void test_count(void)
     SetLastError(0xdeadbeef);
     ret = GetNumberOfEventLogRecords(NULL, NULL);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     count = 0xdeadbeef;
     ret = GetNumberOfEventLogRecords(NULL, &count);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
     ok(count == 0xdeadbeef, "Expected count to stay unchanged\n");
 
     handle = OpenEventLogA(NULL, "Application");
-    ok(handle != NULL, "OpenEventLogA(Application) failed : %d\n", GetLastError());
+    ok(handle != NULL, "OpenEventLogA(Application) failed : %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = GetNumberOfEventLogRecords(handle, NULL);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     count = 0xdeadbeef;
     ret = GetNumberOfEventLogRecords(handle, &count);
-    ok(ret, "Expected success : %d\n", GetLastError());
+    ok(ret, "Expected success : %ld\n", GetLastError());
     ok(count != 0xdeadbeef, "Expected the number of records\n");
 
     CloseEventLog(handle);
@@ -243,14 +243,14 @@ static void test_count(void)
     {
         handle = OpenBackupEventLogA(NULL, backup);
         todo_wine
-        ok(handle != NULL, "Expected a handle, le=%d\n", GetLastError());
+        ok(handle != NULL, "Expected a handle, le=%ld\n", GetLastError());
 
         /* Does GetNumberOfEventLogRecords work with backup eventlogs? */
         count = 0xdeadbeef;
         ret = GetNumberOfEventLogRecords(handle, &count);
         todo_wine
         {
-        ok(ret, "Expected success : %d\n", GetLastError());
+        ok(ret, "Expected success : %ld\n", GetLastError());
         ok(count != 0xdeadbeef, "Expected the number of records\n");
         }
 
@@ -269,13 +269,13 @@ static void test_oldest(void)
     SetLastError(0xdeadbeef);
     ret = GetOldestEventLogRecord(NULL, NULL);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     oldest = 0xdeadbeef;
     ret = GetOldestEventLogRecord(NULL, &oldest);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
     ok(oldest == 0xdeadbeef, "Expected oldest to stay unchanged\n");
 
     handle = OpenEventLogA(NULL, "Application");
@@ -284,16 +284,16 @@ static void test_oldest(void)
         win_skip( "Can't open event log\n" );
         return;
     }
-    ok(handle != NULL, "OpenEventLogA(Application) failed : %d\n", GetLastError());
+    ok(handle != NULL, "OpenEventLogA(Application) failed : %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = GetOldestEventLogRecord(handle, NULL);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     oldest = 0xdeadbeef;
     ret = GetOldestEventLogRecord(handle, &oldest);
-    ok(ret, "Expected success : %d\n", GetLastError());
+    ok(ret, "Expected success : %ld\n", GetLastError());
     ok(oldest != 0xdeadbeef, "Expected the number of the oldest record\n");
 
     CloseEventLog(handle);
@@ -310,7 +310,7 @@ static void test_oldest(void)
         ret = GetOldestEventLogRecord(handle, &oldest);
         todo_wine
         {
-        ok(ret, "Expected success : %d\n", GetLastError());
+        ok(ret, "Expected success : %ld\n", GetLastError());
         ok(oldest != 0xdeadbeef, "Expected the number of the oldest record\n");
         }
 
@@ -329,7 +329,7 @@ static void test_backup(void)
     SetLastError(0xdeadbeef);
     ret = BackupEventLogA(NULL, NULL);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = BackupEventLogA(NULL, backup);
@@ -342,12 +342,12 @@ static void test_backup(void)
         win_skip( "Can't open event log\n" );
         return;
     }
-    ok(handle != NULL, "OpenEventLogA(Application) failed : %d\n", GetLastError());
+    ok(handle != NULL, "OpenEventLogA(Application) failed : %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = BackupEventLogA(handle, NULL);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     ret = BackupEventLogA(handle, backup);
     if (!ret && GetLastError() == ERROR_PRIVILEGE_NOT_HELD)
@@ -356,7 +356,7 @@ static void test_backup(void)
         CloseEventLog(handle);
         return;
     }
-    ok(ret, "Expected success : %d\n", GetLastError());
+    ok(ret, "Expected success : %ld\n", GetLastError());
     todo_wine
     ok(GetFileAttributesA(backup) != INVALID_FILE_ATTRIBUTES, "Expected a backup file\n");
 
@@ -366,7 +366,7 @@ static void test_backup(void)
     todo_wine
     {
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_ALREADY_EXISTS, "Expected ERROR_ALREADY_EXISTS, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_ALREADY_EXISTS, "Expected ERROR_ALREADY_EXISTS, got %ld\n", GetLastError());
     }
 
     CloseEventLog(handle);
@@ -379,7 +379,7 @@ static void test_backup(void)
     ret = BackupEventLogA(handle, backup2);
     todo_wine
     {
-    ok(ret, "Expected success : %d\n", GetLastError());
+    ok(ret, "Expected success : %ld\n", GetLastError());
     ok(GetFileAttributesA(backup2) != INVALID_FILE_ATTRIBUTES, "Expected a backup file\n");
     }
 
@@ -399,7 +399,7 @@ static void test_read(void)
     ret = ReadEventLogA(NULL, 0, 0, NULL, 0, NULL, NULL);
     ok(!ret, "Expected failure\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     read = 0xdeadbeef;
     SetLastError(0xdeadbeef);
@@ -407,7 +407,7 @@ static void test_read(void)
     ok(!ret, "Expected failure\n");
     ok(read == 0xdeadbeef, "Expected 'read' parameter to remain unchanged\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     needed = 0xdeadbeef;
     SetLastError(0xdeadbeef);
@@ -415,26 +415,26 @@ static void test_read(void)
     ok(!ret, "Expected failure\n");
     ok(needed == 0xdeadbeef, "Expected 'needed' parameter to remain unchanged\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* 'read' and 'needed' are only filled when the needed buffer size is passed back or when the call succeeds */
     SetLastError(0xdeadbeef);
     ret = ReadEventLogA(NULL, 0, 0, NULL, 0, &read, &needed);
     ok(!ret, "Expected failure\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = ReadEventLogA(NULL, EVENTLOG_SEQUENTIAL_READ | EVENTLOG_FORWARDS_READ, 0, NULL, 0, NULL, NULL);
     ok(!ret, "Expected failure\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = ReadEventLogA(NULL, EVENTLOG_SEQUENTIAL_READ | EVENTLOG_FORWARDS_READ, 0, NULL, 0, &read, &needed);
     ok(!ret, "Expected failure\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     buf = NULL;
     SetLastError(0xdeadbeef);
@@ -442,7 +442,7 @@ static void test_read(void)
                         0, buf, sizeof(EVENTLOGRECORD), &read, &needed);
     ok(!ret, "Expected failure\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     buf = HeapAlloc(GetProcessHeap(), 0, sizeof(EVENTLOGRECORD));
     SetLastError(0xdeadbeef);
@@ -450,7 +450,7 @@ static void test_read(void)
                         0, buf, sizeof(EVENTLOGRECORD), &read, &needed);
     ok(!ret, "Expected failure\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
     HeapFree(GetProcessHeap(), 0, buf);
 
     handle = OpenEventLogA(NULL, "Application");
@@ -459,7 +459,7 @@ static void test_read(void)
         win_skip( "Can't open event log\n" );
         return;
     }
-    ok(handle != NULL, "OpenEventLogA(Application) failed : %d\n", GetLastError());
+    ok(handle != NULL, "OpenEventLogA(Application) failed : %ld\n", GetLastError());
 
     /* Show that we need the proper dwFlags with a (for the rest) proper call */
     buf = HeapAlloc(GetProcessHeap(), 0, sizeof(EVENTLOGRECORD));
@@ -468,40 +468,40 @@ static void test_read(void)
     ret = ReadEventLogA(handle, 0, 0, buf, sizeof(EVENTLOGRECORD), &read, &needed);
     ok(!ret, "Expected failure\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = ReadEventLogA(handle, EVENTLOG_SEQUENTIAL_READ, 0, buf, sizeof(EVENTLOGRECORD), &read, &needed);
     ok(!ret, "Expected failure\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = ReadEventLogA(handle, EVENTLOG_SEEK_READ, 0, buf, sizeof(EVENTLOGRECORD), &read, &needed);
     ok(!ret, "Expected failure\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = ReadEventLogA(handle, EVENTLOG_SEQUENTIAL_READ | EVENTLOG_FORWARDS_READ | EVENTLOG_BACKWARDS_READ,
                         0, buf, sizeof(EVENTLOGRECORD), &read, &needed);
     ok(!ret, "Expected failure\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = ReadEventLogA(handle, EVENTLOG_SEEK_READ | EVENTLOG_FORWARDS_READ | EVENTLOG_BACKWARDS_READ,
                         0, buf, sizeof(EVENTLOGRECORD), &read, &needed);
     ok(!ret, "Expected failure\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = ReadEventLogA(handle, EVENTLOG_SEEK_READ | EVENTLOG_SEQUENTIAL_READ | EVENTLOG_FORWARDS_READ,
                         0, buf, sizeof(EVENTLOGRECORD), &read, &needed);
     ok(!ret, "Expected failure\n");
     todo_wine
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     HeapFree(GetProcessHeap(), 0, buf);
 
@@ -524,7 +524,7 @@ static void test_read(void)
     ok(!ret, "Expected failure\n");
     ok(read == 0, "Expected no bytes read\n");
     ok(needed > sizeof(EVENTLOGRECORD), "Expected the needed buffersize to be bigger than sizeof(EVENTLOGRECORD)\n");
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     /* Read the first record */
     toread = needed;
@@ -532,7 +532,7 @@ static void test_read(void)
     read = needed = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     ret = ReadEventLogA(handle, EVENTLOG_SEQUENTIAL_READ | EVENTLOG_FORWARDS_READ, 0, buf, toread, &read, &needed);
-    ok(ret, "Expected success : %d\n", GetLastError());
+    ok(ret, "Expected success : %ld\n", GetLastError());
     ok(read == toread ||
        broken(read < toread), /* NT4 wants a buffer size way bigger than just 1 record */
        "Expected the requested size to be read\n");
@@ -552,7 +552,7 @@ static void test_openbackup(void)
     SetLastError(0xdeadbeef);
     handle = OpenBackupEventLogA(NULL, NULL);
     ok(handle == NULL, "Didn't expect a handle\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     handle = OpenBackupEventLogA(NULL, "idontexist.evt");
@@ -560,19 +560,19 @@ static void test_openbackup(void)
     ok(GetLastError() == ERROR_FILE_NOT_FOUND ||
        GetLastError() == ERROR_ACCESS_DENIED ||
        GetLastError() == RPC_S_SERVER_UNAVAILABLE,
-       "got %d\n", GetLastError());
+       "got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     handle = OpenBackupEventLogA("IDontExist", NULL);
     ok(handle == NULL, "Didn't expect a handle\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     handle = OpenBackupEventLogA("IDontExist", "idontexist.evt");
     ok(handle == NULL, "Didn't expect a handle\n");
     ok(GetLastError() == RPC_S_SERVER_UNAVAILABLE ||
        GetLastError() == RPC_S_INVALID_NET_ADDR, /* Some Vista and Win7 */
-       "Expected RPC_S_SERVER_UNAVAILABLE, got %d\n", GetLastError());
+       "Expected RPC_S_SERVER_UNAVAILABLE, got %ld\n", GetLastError());
 
     /* Make a backup eventlog to work with */
     if (create_backup(backup))
@@ -589,7 +589,7 @@ static void test_openbackup(void)
         ok(handle == NULL, "Didn't expect a handle\n");
         ok(GetLastError() == RPC_S_SERVER_UNAVAILABLE ||
            GetLastError() == RPC_S_INVALID_NET_ADDR, /* Some Vista and Win7 */
-           "Expected RPC_S_SERVER_UNAVAILABLE, got %d\n", GetLastError());
+           "Expected RPC_S_SERVER_UNAVAILABLE, got %ld\n", GetLastError());
 
         /* Empty servername should be read as local server */
         handle = OpenBackupEventLogA("", backup);
@@ -619,7 +619,7 @@ static void test_openbackup(void)
        GetLastError() == ERROR_ACCESS_DENIED ||
        GetLastError() == RPC_S_SERVER_UNAVAILABLE ||
        GetLastError() == ERROR_EVENTLOG_FILE_CORRUPT, /* Vista and Win7 */
-       "got %d\n", GetLastError());
+       "got %ld\n", GetLastError());
     CloseEventLog(handle);
     DeleteFileA(backup);
 
@@ -632,7 +632,7 @@ static void test_openbackup(void)
     ok(GetLastError() == ERROR_EVENTLOG_FILE_CORRUPT ||
        GetLastError() == ERROR_ACCESS_DENIED ||
        GetLastError() == RPC_S_SERVER_UNAVAILABLE,
-       "got %d\n", GetLastError());
+       "got %ld\n", GetLastError());
     CloseEventLog(handle);
     DeleteFileA(backup);
 }
@@ -647,7 +647,7 @@ static void test_clear(void)
     SetLastError(0xdeadbeef);
     ret = ClearEventLogA(NULL, NULL);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     /* Make a backup eventlog to work with */
     if (!create_backup(backup))
@@ -656,7 +656,7 @@ static void test_clear(void)
     SetLastError(0xdeadbeef);
     ret = ClearEventLogA(NULL, backup);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     handle = OpenBackupEventLogA(NULL, backup);
     todo_wine
@@ -671,19 +671,19 @@ static void test_clear(void)
      */
     ok(GetLastError() == ERROR_INVALID_HANDLE ||
        GetLastError() == ERROR_ACCESS_DENIED, /* Vista+ */
-       "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     /* Show that ClearEventLog only works for real eventlogs. */
     SetLastError(0xdeadbeef);
     ret = ClearEventLogA(handle, backup2);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
     ok(GetFileAttributesA(backup2) == INVALID_FILE_ATTRIBUTES, "Expected no backup file\n");
 
     SetLastError(0xdeadbeef);
     ret = ClearEventLogA(handle, NULL);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     CloseEventLog(handle);
     todo_wine
@@ -832,7 +832,7 @@ static void test_readwrite(void)
     {
         win_skip("Win7 fails when using incorrect event types\n");
         ret = ReportEventA(handle, 0, 0, 0, NULL, 0, 0, NULL, NULL);
-        ok(ret, "Expected success : %d\n", GetLastError());
+        ok(ret, "Expected success : %ld\n", GetLastError());
     }
     else
     {
@@ -840,7 +840,7 @@ static void test_readwrite(void)
         DWORD read, needed = 0;
         EVENTLOGRECORD *record;
 
-        ok(ret, "Expected success : %d\n", GetLastError());
+        ok(ret, "Expected success : %ld\n", GetLastError());
 
         /* Needed to catch earlier Vista (with no ServicePack for example) */
         buf = HeapAlloc(GetProcessHeap(), 0, sizeof(EVENTLOGRECORD));
@@ -891,22 +891,22 @@ static void test_readwrite(void)
         ret = ReportEventA(handle, read_write[i].evt_type, read_write[i].evt_cat,
                            read_write[i].evt_id, run_sidtests ? user : NULL,
                            read_write[i].evt_numstrings, 0, read_write[i].evt_strings, NULL);
-        ok(ret, "Expected ReportEvent success : %d\n", GetLastError());
+        ok(ret, "Expected ReportEvent success : %ld\n", GetLastError());
 
         count = 0xdeadbeef;
         SetLastError(0xdeadbeef);
         ret = GetNumberOfEventLogRecords(handle, &count);
-        ok(ret, "Expected GetNumberOfEventLogRecords success : %d\n", GetLastError());
+        ok(ret, "Expected GetNumberOfEventLogRecords success : %ld\n", GetLastError());
         todo_wine
-        ok(count == (i + 1), "Expected %d records, got %d\n", i + 1, count);
+        ok(count == (i + 1), "Expected %ld records, got %ld\n", i + 1, count);
 
         oldest = 0xdeadbeef;
         ret = GetOldestEventLogRecord(handle, &oldest);
-        ok(ret, "Expected GetOldestEventLogRecord success : %d\n", GetLastError());
+        ok(ret, "Expected GetOldestEventLogRecord success : %ld\n", GetLastError());
         todo_wine
         ok(oldest == 1 ||
            (oldest > 1 && oldest != 0xdeadbeef), /* Vista SP1+, W2K8 and Win7 */
-           "Expected oldest to be 1 or higher, got %d\n", oldest);
+           "Expected oldest to be 1 or higher, got %ld\n", oldest);
         if (oldest > 1 && oldest != 0xdeadbeef)
             on_vista = TRUE;
 
@@ -915,15 +915,15 @@ static void test_readwrite(void)
             ret = CloseEventLog(handle);
         else
             ret = DeregisterEventSource(handle);
-        ok(ret, "Expected success : %d\n", GetLastError());
+        ok(ret, "Expected success : %ld\n", GetLastError());
     }
 
     handle = OpenEventLogA(NULL, eventlogname);
     count = 0xdeadbeef;
     ret = GetNumberOfEventLogRecords(handle, &count);
-    ok(ret, "Expected success : %d\n", GetLastError());
+    ok(ret, "Expected success : %ld\n", GetLastError());
     todo_wine
-    ok(count == i, "Expected %d records, got %d\n", i, count);
+    ok(count == i, "Expected %ld records, got %ld\n", i, count);
     CloseEventLog(handle);
 
     if (count == 0)
@@ -954,7 +954,7 @@ static void test_readwrite(void)
 
     /* Read all events from our created eventlog, one by one */
     handle = OpenEventLogA(NULL, eventlogname);
-    ok(handle != NULL, "Failed to open Event Log, got %d\n", GetLastError());
+    ok(handle != NULL, "Failed to open Event Log, got %ld\n", GetLastError());
     i = 0;
     for (;;)
     {
@@ -974,26 +974,26 @@ static void test_readwrite(void)
         if (!ret && GetLastError() != ERROR_INSUFFICIENT_BUFFER)
         {
             HeapFree(GetProcessHeap(), 0, buf);
-            ok(GetLastError() == ERROR_HANDLE_EOF, "record %d, got %d\n", i, GetLastError());
+            ok(GetLastError() == ERROR_HANDLE_EOF, "record %ld, got %ld\n", i, GetLastError());
             break;
         }
 
         buf = HeapReAlloc(GetProcessHeap(), 0, buf, needed);
         ret = ReadEventLogA(handle, EVENTLOG_SEQUENTIAL_READ | EVENTLOG_FORWARDS_READ,
                             0, buf, needed, &read, &needed);
-        ok(ret, "Expected success: %d\n", GetLastError());
+        ok(ret, "Expected success: %ld\n", GetLastError());
 
         record = (EVENTLOGRECORD *)buf;
 
         ok(record->Length == read,
-           "Expected %d, got %d\n", read, record->Length);
+           "Expected %ld, got %ld\n", read, record->Length);
         ok(record->Reserved == 0x654c664c,
-           "Expected 0x654c664c, got %d\n", record->Reserved);
+           "Expected 0x654c664c, got %ld\n", record->Reserved);
         ok(record->RecordNumber == i + 1 ||
            (on_vista && (record->RecordNumber > i + 1)),
-           "Expected %d or higher, got %d\n", i + 1, record->RecordNumber);
+           "Expected %ld or higher, got %ld\n", i + 1, record->RecordNumber);
         ok(record->EventID == read_write[i].evt_id,
-           "Expected %d, got %d\n", read_write[i].evt_id, record->EventID);
+           "Expected %ld, got %ld\n", read_write[i].evt_id, record->EventID);
         ok(record->EventType == read_write[i].evt_type,
            "Expected %d, got %d\n", read_write[i].evt_type, record->EventType);
         ok(record->NumStrings == read_write[i].evt_numstrings,
@@ -1028,15 +1028,15 @@ static void test_readwrite(void)
 
         if (run_sidtests)
         {
-            ok(record->UserSidLength == sidsize, "Expected %d, got %d\n", sidsize, record->UserSidLength);
+            ok(record->UserSidLength == sidsize, "Expected %ld, got %ld\n", sidsize, record->UserSidLength);
         }
         else
         {
             ok(record->StringOffset == record->UserSidOffset, "Expected offsets to be the same\n");
-            ok(record->UserSidLength == 0, "Expected 0, got %d\n", record->UserSidLength);
+            ok(record->UserSidLength == 0, "Expected 0, got %ld\n", record->UserSidLength);
         }
 
-        ok(record->DataLength == 0, "Expected 0, got %d\n", record->DataLength);
+        ok(record->DataLength == 0, "Expected 0, got %ld\n", record->DataLength);
 
         ptr = (char *)((BYTE *)buf + record->StringOffset);
         for (k = 0; k < record->NumStrings; k++)
@@ -1055,16 +1055,16 @@ static void test_readwrite(void)
 
     /* Test clearing a real eventlog */
     handle = OpenEventLogA(NULL, eventlogname);
-    ok(handle != NULL, "Failed to open Event Log, got %d\n", GetLastError());
+    ok(handle != NULL, "Failed to open Event Log, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = ClearEventLogA(handle, NULL);
-    ok(ret, "Expected success : %d\n", GetLastError());
+    ok(ret, "Expected success : %ld\n", GetLastError());
 
     count = 0xdeadbeef;
     ret = GetNumberOfEventLogRecords(handle, &count);
-    ok(ret, "Expected success : %d\n", GetLastError());
-    ok(count == 0, "Expected an empty eventlog, got %d records\n", count);
+    ok(ret, "Expected success : %ld\n", GetLastError());
+    ok(count == 0, "Expected an empty eventlog, got %ld records\n", count);
 
     CloseEventLog(handle);
 
@@ -1111,7 +1111,7 @@ static void test_autocreation(void)
     {
         char sources_verify[sizeof(eventsources)];
 
-        ok(type == REG_MULTI_SZ, "Expected a REG_MULTI_SZ, got %d\n", type);
+        ok(type == REG_MULTI_SZ, "Expected a REG_MULTI_SZ, got %ld\n", type);
 
         /* Build the expected string */
         memset(sources_verify, 0, sizeof(sources_verify));
@@ -1124,7 +1124,7 @@ static void test_autocreation(void)
         lstrcpyA(p, eventlogname);
 
         ok(!memcmp(sources, sources_verify, size),
-           "Expected a correct 'Sources' value (size : %d)\n", size);
+           "Expected a correct 'Sources' value (size : %ld)\n", size);
     }
 
     RegCloseKey(eventkey);
@@ -1179,13 +1179,13 @@ static void cleanup_eventlog(void)
     RegDeleteValueA(key, "Sources");
     RegCloseKey(key);
     lret = RegDeleteKeyA(HKEY_LOCAL_MACHINE, winesvc);
-    ok(lret == ERROR_SUCCESS, "Could not delete the registry tree : %d\n", lret);
+    ok(lret == ERROR_SUCCESS, "Could not delete the registry tree : %ld\n", lret);
 
     /* A handle to the eventlog is locked by services.exe. We can only
      * delete the eventlog file after reboot.
      */
     bret = MoveFileExA(eventlogfile, NULL, MOVEFILE_DELAY_UNTIL_REBOOT);
-    ok(bret, "Expected MoveFileEx to succeed: %d\n", GetLastError());
+    ok(bret, "Expected MoveFileEx to succeed: %ld\n", GetLastError());
 }
 
 static void test_trace_event_params(void)
@@ -1203,25 +1203,25 @@ static void test_trace_event_params(void)
     }
 
     uret = pEventRegister(NULL, NULL, NULL, &reg_handle);
-    todo_wine ok(uret == ERROR_INVALID_PARAMETER, "EventRegister gave wrong error: %#x\n", uret);
+    todo_wine ok(uret == ERROR_INVALID_PARAMETER, "EventRegister gave wrong error: %#lx\n", uret);
 
     uret = pEventRegister(&test_guid, NULL, NULL, NULL);
-    ok(uret == ERROR_INVALID_PARAMETER, "EventRegister gave wrong error: %#x\n", uret);
+    ok(uret == ERROR_INVALID_PARAMETER, "EventRegister gave wrong error: %#lx\n", uret);
 
     uret = pEventRegister(&test_guid, NULL, NULL, &reg_handle);
-    ok(uret == ERROR_SUCCESS, "EventRegister gave wrong error: %#x\n", uret);
+    ok(uret == ERROR_SUCCESS, "EventRegister gave wrong error: %#lx\n", uret);
 
     uret = pEventWriteString(0, 0, 0, emptyW);
-    todo_wine ok(uret == ERROR_INVALID_HANDLE, "EventWriteString gave wrong error: %#x\n", uret);
+    todo_wine ok(uret == ERROR_INVALID_HANDLE, "EventWriteString gave wrong error: %#lx\n", uret);
 
     uret = pEventWriteString(reg_handle, 0, 0, NULL);
-    todo_wine ok(uret == ERROR_INVALID_PARAMETER, "EventWriteString gave wrong error: %#x\n", uret);
+    todo_wine ok(uret == ERROR_INVALID_PARAMETER, "EventWriteString gave wrong error: %#lx\n", uret);
 
     uret = pEventUnregister(0);
-    todo_wine ok(uret == ERROR_INVALID_HANDLE, "EventUnregister gave wrong error: %#x\n", uret);
+    todo_wine ok(uret == ERROR_INVALID_HANDLE, "EventUnregister gave wrong error: %#lx\n", uret);
 
     uret = pEventUnregister(reg_handle);
-    ok(uret == ERROR_SUCCESS, "EventUnregister gave wrong error: %#x\n", uret);
+    ok(uret == ERROR_SUCCESS, "EventUnregister gave wrong error: %#lx\n", uret);
 }
 
 static void test_start_trace(void)
@@ -1248,37 +1248,37 @@ static void test_start_trace(void)
     todo_wine
     ok(ret == ERROR_BAD_LENGTH ||
        ret == ERROR_INVALID_PARAMETER, /* XP and 2k3 */
-       "Expected ERROR_BAD_LENGTH, got %d\n", ret);
+       "Expected ERROR_BAD_LENGTH, got %ld\n", ret);
     properties->Wnode.BufferSize = buffersize;
 
     ret = StartTraceA(&handle, "this name is too long", properties);
     todo_wine
-    ok(ret == ERROR_BAD_LENGTH, "Expected ERROR_BAD_LENGTH, got %d\n", ret);
+    ok(ret == ERROR_BAD_LENGTH, "Expected ERROR_BAD_LENGTH, got %ld\n", ret);
 
     ret = StartTraceA(&handle, sessionname, NULL);
     todo_wine
-    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", ret);
 
     ret = StartTraceA(NULL, sessionname, properties);
     todo_wine
-    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", ret);
 
     properties->LogFileNameOffset = 1;
     ret = StartTraceA(&handle, sessionname, properties);
     todo_wine
-    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", ret);
     properties->LogFileNameOffset = sizeof(EVENT_TRACE_PROPERTIES) + sizeof(sessionname);
 
     properties->LoggerNameOffset = 1;
     ret = StartTraceA(&handle, sessionname, properties);
     todo_wine
-    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", ret);
     properties->LoggerNameOffset = sizeof(EVENT_TRACE_PROPERTIES);
 
     properties->LogFileMode = EVENT_TRACE_FILE_MODE_SEQUENTIAL | EVENT_TRACE_FILE_MODE_CIRCULAR;
     ret = StartTraceA(&handle, sessionname, properties);
     todo_wine
-    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", ret);
     properties->LogFileMode = EVENT_TRACE_FILE_MODE_NONE;
     /* XP creates a file we can't delete, so change the filepath to something else */
     strcpy((char *)properties + properties->LogFileNameOffset, filepath2);
@@ -1286,13 +1286,13 @@ static void test_start_trace(void)
     properties->Wnode.Guid = SystemTraceControlGuid;
     ret = StartTraceA(&handle, sessionname, properties);
     todo_wine
-    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", ret);
     memset(&properties->Wnode.Guid, 0, sizeof(properties->Wnode.Guid));
 
     properties->LogFileNameOffset = 0;
     ret = StartTraceA(&handle, sessionname, properties);
     todo_wine
-    ok(ret == ERROR_BAD_PATHNAME, "Expected ERROR_BAD_PATHNAME, got %d\n", ret);
+    ok(ret == ERROR_BAD_PATHNAME, "Expected ERROR_BAD_PATHNAME, got %ld\n", ret);
     properties->LogFileNameOffset = sizeof(EVENT_TRACE_PROPERTIES) + sizeof(sessionname);
 
     ret = StartTraceA(&handle, sessionname, properties);
@@ -1301,13 +1301,13 @@ static void test_start_trace(void)
         skip("need admin rights\n");
         goto done;
     }
-    ok(ret == ERROR_SUCCESS, "Expected success, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected success, got %ld\n", ret);
 
     ret = StartTraceA(&handle, sessionname, properties);
     todo_wine
     ok(ret == ERROR_ALREADY_EXISTS ||
        ret == ERROR_SHARING_VIOLATION, /* 2k3 */
-       "Expected ERROR_ALREADY_EXISTS, got %d\n", ret);
+       "Expected ERROR_ALREADY_EXISTS, got %ld\n", ret);
 
     /* clean up */
     ControlTraceA(handle, sessionname, properties, EVENT_TRACE_CONTROL_STOP);
diff --git a/dlls/advapi32/tests/lsa.c b/dlls/advapi32/tests/lsa.c
index f8c822a7de2..5c00298d41e 100644
--- a/dlls/advapi32/tests/lsa.c
+++ b/dlls/advapi32/tests/lsa.c
@@ -52,13 +52,13 @@ static void test_lsa(void)
 
     status = LsaOpenPolicy( NULL, &object_attributes, POLICY_ALL_ACCESS, &handle);
     ok(status == STATUS_SUCCESS || status == STATUS_ACCESS_DENIED,
-       "LsaOpenPolicy(POLICY_ALL_ACCESS) returned 0x%08x\n", status);
+       "LsaOpenPolicy(POLICY_ALL_ACCESS) returned 0x%08lx\n", status);
 
     /* try a more restricted access mask if necessary */
     if (status == STATUS_ACCESS_DENIED) {
         trace("LsaOpenPolicy(POLICY_ALL_ACCESS) failed, trying POLICY_VIEW_LOCAL_INFORMATION|POLICY_LOOKUP_NAMES\n");
         status = LsaOpenPolicy( NULL, &object_attributes, POLICY_VIEW_LOCAL_INFORMATION|POLICY_LOOKUP_NAMES, &handle);
-        ok(status == STATUS_SUCCESS, "LsaOpenPolicy(POLICY_VIEW_LOCAL_INFORMATION|POLICY_LOOKUP_NAMES) returned 0x%08x\n", status);
+        ok(status == STATUS_SUCCESS, "LsaOpenPolicy(POLICY_VIEW_LOCAL_INFORMATION|POLICY_LOOKUP_NAMES) returned 0x%08lx\n", status);
     }
 
     if (status == STATUS_SUCCESS) {
@@ -73,12 +73,12 @@ static void test_lsa(void)
         if (status == STATUS_ACCESS_DENIED)
             skip("Not enough rights to retrieve PolicyAuditEventsInformation\n");
         else
-            ok(status == STATUS_SUCCESS, "LsaQueryInformationPolicy(PolicyAuditEventsInformation) failed, returned 0x%08x\n", status);
+            ok(status == STATUS_SUCCESS, "LsaQueryInformationPolicy(PolicyAuditEventsInformation) failed, returned 0x%08lx\n", status);
         if (status == STATUS_SUCCESS)
             LsaFreeMemory(audit_events_info);
 
         status = LsaQueryInformationPolicy(handle, PolicyPrimaryDomainInformation, (void **)&primary_domain_info);
-        ok(status == STATUS_SUCCESS, "LsaQueryInformationPolicy(PolicyPrimaryDomainInformation) failed, returned 0x%08x\n", status);
+        ok(status == STATUS_SUCCESS, "LsaQueryInformationPolicy(PolicyPrimaryDomainInformation) failed, returned 0x%08lx\n", status);
         if (status == STATUS_SUCCESS) {
             if (primary_domain_info->Sid) {
                 LPSTR strsid;
@@ -105,14 +105,14 @@ static void test_lsa(void)
         }
 
         status = LsaQueryInformationPolicy(handle, PolicyAccountDomainInformation, (void **)&account_domain_info);
-        ok(status == STATUS_SUCCESS, "LsaQueryInformationPolicy(PolicyAccountDomainInformation) failed, returned 0x%08x\n", status);
+        ok(status == STATUS_SUCCESS, "LsaQueryInformationPolicy(PolicyAccountDomainInformation) failed, returned 0x%08lx\n", status);
         if (status == STATUS_SUCCESS)
             LsaFreeMemory(account_domain_info);
 
         /* This isn't supported in NT4 */
         status = LsaQueryInformationPolicy(handle, PolicyDnsDomainInformation, (void **)&dns_domain_info);
         ok(status == STATUS_SUCCESS || status == STATUS_INVALID_PARAMETER,
-           "LsaQueryInformationPolicy(PolicyDnsDomainInformation) failed, returned 0x%08x\n", status);
+           "LsaQueryInformationPolicy(PolicyDnsDomainInformation) failed, returned 0x%08lx\n", status);
         if (status == STATUS_SUCCESS) {
             if (dns_domain_info->Sid || !IsEqualGUID(&dns_domain_info->DomainGuid, &GUID_NULL)) {
                 LPSTR strsid = NULL;
@@ -159,15 +159,15 @@ static void test_lsa(void)
 
         /* We need a valid SID to pass to LsaEnumerateAccountRights */
         ret = OpenProcessToken( GetCurrentProcess(), TOKEN_QUERY, &token );
-        ok(ret, "Unable to obtain process token, error %u\n", GetLastError( ));
+        ok(ret, "Unable to obtain process token, error %lu\n", GetLastError( ));
         if (ret) {
             char buffer[64];
             DWORD len;
             TOKEN_USER *token_user = (TOKEN_USER *) buffer;
             ret = GetTokenInformation( token, TokenUser, (LPVOID) token_user, sizeof(buffer), &len );
-            ok(ret || GetLastError( ) == ERROR_INSUFFICIENT_BUFFER, "Unable to obtain token information, error %u\n", GetLastError( ));
+            ok(ret || GetLastError( ) == ERROR_INSUFFICIENT_BUFFER, "Unable to obtain token information, error %lu\n", GetLastError( ));
             if (! ret && GetLastError( ) == ERROR_INSUFFICIENT_BUFFER) {
-                trace("Resizing buffer to %u.\n", len);
+                trace("Resizing buffer to %lu.\n", len);
                 token_user = LocalAlloc( 0, len );
                 if (token_user != NULL)
                     ret = GetTokenInformation( token, TokenUser, (LPVOID) token_user, len, &len );
@@ -179,7 +179,7 @@ static void test_lsa(void)
                 rights = (PLSA_UNICODE_STRING) 0xdeadbeaf;
                 rights_count = 0xcafecafe;
                 status = LsaEnumerateAccountRights(handle, token_user->User.Sid, &rights, &rights_count);
-                ok(status == STATUS_SUCCESS || status == STATUS_OBJECT_NAME_NOT_FOUND, "Unexpected status 0x%x\n", status);
+                ok(status == STATUS_SUCCESS || status == STATUS_OBJECT_NAME_NOT_FOUND, "Unexpected status 0x%lx\n", status);
                 if (status == STATUS_SUCCESS)
                     LsaFreeMemory( rights );
                 else
@@ -191,7 +191,7 @@ static void test_lsa(void)
         }
 
         status = LsaClose(handle);
-        ok(status == STATUS_SUCCESS, "LsaClose() failed, returned 0x%08x\n", status);
+        ok(status == STATUS_SUCCESS, "LsaClose() failed, returned 0x%08lx\n", status);
     }
 }
 
@@ -208,7 +208,7 @@ static void get_sid_info(PSID psid, LPSTR *user, LPSTR *dom)
     user_size = dom_size = 257;
     account[0] = domain[0] = 0;
     ret = LookupAccountSidA(NULL, psid, account, &user_size, domain, &dom_size, &use);
-    ok(ret, "LookupAccountSidA failed %u\n", GetLastError());
+    ok(ret, "LookupAccountSidA failed %lu\n", GetLastError());
 }
 
 static void test_LsaLookupNames2(void)
@@ -236,14 +236,14 @@ static void test_LsaLookupNames2(void)
 
     status = LsaOpenPolicy(NULL, &attrs, POLICY_ALL_ACCESS, &handle);
     ok(status == STATUS_SUCCESS || status == STATUS_ACCESS_DENIED,
-       "LsaOpenPolicy(POLICY_ALL_ACCESS) returned 0x%08x\n", status);
+       "LsaOpenPolicy(POLICY_ALL_ACCESS) returned 0x%08lx\n", status);
 
     /* try a more restricted access mask if necessary */
     if (status == STATUS_ACCESS_DENIED)
     {
         trace("LsaOpenPolicy(POLICY_ALL_ACCESS) failed, trying POLICY_VIEW_LOCAL_INFORMATION\n");
         status = LsaOpenPolicy(NULL, &attrs, POLICY_LOOKUP_NAMES, &handle);
-        ok(status == STATUS_SUCCESS, "LsaOpenPolicy(POLICY_VIEW_LOCAL_INFORMATION) returned 0x%08x\n", status);
+        ok(status == STATUS_SUCCESS, "LsaOpenPolicy(POLICY_VIEW_LOCAL_INFORMATION) returned 0x%08lx\n", status);
     }
     if (status != STATUS_SUCCESS)
     {
@@ -267,10 +267,10 @@ static void test_LsaLookupNames2(void)
     sids = NULL;
     domains = NULL;
     status = LsaLookupNames2(handle, 0, 1, &name[0], &domains, &sids);
-    ok(status == STATUS_SUCCESS, "expected STATUS_SUCCESS, got %x)\n", status);
+    ok(status == STATUS_SUCCESS, "expected STATUS_SUCCESS, got %lx)\n", status);
     ok(sids[0].Use == SidTypeWellKnownGroup, "expected SidTypeWellKnownGroup, got %u\n", sids[0].Use);
-    ok(sids[0].Flags == 0, "expected 0, got 0x%08x\n", sids[0].Flags);
-    ok(domains->Entries == 1, "expected 1, got %u\n", domains->Entries);
+    ok(sids[0].Flags == 0, "expected 0, got 0x%08lx\n", sids[0].Flags);
+    ok(domains->Entries == 1, "expected 1, got %lu\n", domains->Entries);
     get_sid_info(sids[0].Sid, &account, &sid_dom);
     ok(!strcmp(account, "LOCAL SERVICE"), "expected \"LOCAL SERVICE\", got \"%s\"\n", account);
     ok(!strcmp(sid_dom, "NT AUTHORITY"), "expected \"NT AUTHORITY\", got \"%s\"\n", sid_dom);
@@ -281,10 +281,10 @@ static void test_LsaLookupNames2(void)
     sids = NULL;
     domains = NULL;
     status = LsaLookupNames2(handle, 0, 1, &name[1], &domains, &sids);
-    ok(status == STATUS_NONE_MAPPED, "expected STATUS_NONE_MAPPED, got %x)\n", status);
+    ok(status == STATUS_NONE_MAPPED, "expected STATUS_NONE_MAPPED, got %lx)\n", status);
     ok(sids[0].Use == SidTypeUnknown, "expected SidTypeUnknown, got %u\n", sids[0].Use);
-    ok(sids[0].Flags == 0, "expected 0, got 0x%08x\n", sids[0].Flags);
-    ok(domains->Entries == 0, "expected 0, got %u\n", domains->Entries);
+    ok(sids[0].Flags == 0, "expected 0, got 0x%08lx\n", sids[0].Flags);
+    ok(domains->Entries == 0, "expected 0, got %lu\n", domains->Entries);
     LsaFreeMemory(sids);
     LsaFreeMemory(domains);
 
@@ -292,10 +292,10 @@ static void test_LsaLookupNames2(void)
     sids = NULL;
     domains = NULL;
     status = LsaLookupNames2(handle, 0, 1, &name[2], &domains, &sids);
-    ok(status == STATUS_SUCCESS, "expected STATUS_SUCCESS, got %x)\n", status);
+    ok(status == STATUS_SUCCESS, "expected STATUS_SUCCESS, got %lx)\n", status);
     ok(sids[0].Use == SidTypeWellKnownGroup, "expected SidTypeWellKnownGroup, got %u\n", sids[0].Use);
-    ok(sids[0].Flags == 0, "expected 0, got 0x%08x\n", sids[0].Flags);
-    ok(domains->Entries == 1, "expected 1, got %u\n", domains->Entries);
+    ok(sids[0].Flags == 0, "expected 0, got 0x%08lx\n", sids[0].Flags);
+    ok(domains->Entries == 1, "expected 1, got %lu\n", domains->Entries);
     get_sid_info(sids[0].Sid, &account, &sid_dom);
     ok(!strcmp(account, "LOCAL SERVICE"), "expected \"LOCAL SERVICE\", got \"%s\"\n", account);
     ok(!strcmp(sid_dom, "NT AUTHORITY"), "expected \"NT AUTHORITY\", got \"%s\"\n", sid_dom);
@@ -306,12 +306,12 @@ static void test_LsaLookupNames2(void)
     sids = NULL;
     domains = NULL;
     status = LsaLookupNames2(handle, 0, 3, name, &domains, &sids);
-    ok(status == STATUS_SOME_NOT_MAPPED, "expected STATUS_SOME_NOT_MAPPED, got %x)\n", status);
+    ok(status == STATUS_SOME_NOT_MAPPED, "expected STATUS_SOME_NOT_MAPPED, got %lx)\n", status);
     ok(sids[0].Use == SidTypeWellKnownGroup, "expected SidTypeWellKnownGroup, got %u\n", sids[0].Use);
     ok(sids[1].Use == SidTypeUnknown, "expected SidTypeUnknown, got %u\n", sids[1].Use);
     ok(sids[2].Use == SidTypeWellKnownGroup, "expected SidTypeWellKnownGroup, got %u\n", sids[2].Use);
-    ok(sids[0].DomainIndex == 0, "expected 0, got %u\n", sids[0].DomainIndex);
-    ok(domains->Entries == 1, "expected 1, got %u\n", domains->Entries);
+    ok(sids[0].DomainIndex == 0, "expected 0, got %lu\n", sids[0].DomainIndex);
+    ok(domains->Entries == 1, "expected 1, got %lu\n", domains->Entries);
     LsaFreeMemory(sids);
     LsaFreeMemory(domains);
 
@@ -320,15 +320,15 @@ static void test_LsaLookupNames2(void)
     HeapFree(GetProcessHeap(), 0, name[2].Buffer);
 
     status = LsaClose(handle);
-    ok(status == STATUS_SUCCESS, "LsaClose() failed, returned 0x%08x\n", status);
+    ok(status == STATUS_SUCCESS, "LsaClose() failed, returned 0x%08lx\n", status);
 }
 
 static void check_unicode_string_(int line, const LSA_UNICODE_STRING *string, const WCHAR *expect)
 {
     ok_(__FILE__, line)(string->Length == wcslen(string->Buffer) * sizeof(WCHAR),
-            "expected %u, got %u\n", wcslen(string->Buffer) * sizeof(WCHAR), string->Length);
+            "expected %Iu, got %u\n", wcslen(string->Buffer) * sizeof(WCHAR), string->Length);
     ok_(__FILE__, line)(string->MaximumLength == string->Length + sizeof(WCHAR),
-            "expected %u, got %u\n", string->Length + sizeof(WCHAR), string->MaximumLength);
+            "expected %Iu, got %u\n", string->Length + sizeof(WCHAR), string->MaximumLength);
     ok_(__FILE__, line)(!wcsicmp(string->Buffer, expect), "expected %s, got %s\n",
             debugstr_w(expect), debugstr_w(string->Buffer));
 }
@@ -351,30 +351,30 @@ static void test_LsaLookupSids(void)
     PSID sid;
 
     status = LsaOpenPolicy(NULL, &attrs, POLICY_LOOKUP_NAMES, &policy);
-    ok(status == STATUS_SUCCESS, "got 0x%08x\n", status);
+    ok(status == STATUS_SUCCESS, "got 0x%08lx\n", status);
 
     ret = OpenProcessToken(GetCurrentProcess(), MAXIMUM_ALLOWED, &token);
-    ok(ret, "OpenProcessToken() failed, error %u\n", GetLastError());
+    ok(ret, "OpenProcessToken() failed, error %lu\n", GetLastError());
 
     ret = GetTokenInformation(token, TokenUser, user, sizeof(user_buffer), &size);
-    ok(ret, "GetTokenInformation() failed, error %u\n", GetLastError());
+    ok(ret, "GetTokenInformation() failed, error %lu\n", GetLastError());
 
     size = ARRAY_SIZE(computer_name);
     ret = GetComputerNameW(computer_name, &size);
-    ok(ret, "GetComputerName() failed, error %u\n", GetLastError());
+    ok(ret, "GetComputerName() failed, error %lu\n", GetLastError());
 
     size = ARRAY_SIZE(user_name);
     ret = GetUserNameW(user_name, &size);
-    ok(ret, "GetUserName() failed, error %u\n", GetLastError());
+    ok(ret, "GetUserName() failed, error %lu\n", GetLastError());
 
     status = LsaLookupSids(policy, 1, &user->User.Sid, &list, &names);
-    ok(status == STATUS_SUCCESS, "got 0x%08x\n", status);
+    ok(status == STATUS_SUCCESS, "got 0x%08lx\n", status);
 
-    ok(list->Entries == 1, "got %d\n", list->Entries);
+    ok(list->Entries == 1, "got %ld\n", list->Entries);
     check_unicode_string(&list->Domains[0].Name, computer_name);
 
     ok(names[0].Use == SidTypeUser, "got type %u\n", names[0].Use);
-    ok(!names[0].DomainIndex, "got index %u\n", names[0].DomainIndex);
+    ok(!names[0].DomainIndex, "got index %lu\n", names[0].DomainIndex);
     check_unicode_string(&names[0].Name, user_name);
 
     LsaFreeMemory(names);
@@ -382,16 +382,16 @@ static void test_LsaLookupSids(void)
     CloseHandle(token);
 
     ret = ConvertStringSidToSidA("S-1-1-0", &sid);
-    ok(ret, "ConvertStringSidToSidA() failed, error %u\n", GetLastError());
+    ok(ret, "ConvertStringSidToSidA() failed, error %lu\n", GetLastError());
 
     status = LsaLookupSids(policy, 1, &sid, &list, &names);
-    ok(status == STATUS_SUCCESS, "got 0x%08x\n", status);
+    ok(status == STATUS_SUCCESS, "got 0x%08lx\n", status);
 
-    ok(list->Entries == 1, "got %d\n", list->Entries);
+    ok(list->Entries == 1, "got %ld\n", list->Entries);
     check_unicode_string(&list->Domains[0].Name, L"");
 
     ok(names[0].Use == SidTypeWellKnownGroup, "got type %u\n", names[0].Use);
-    ok(!names[0].DomainIndex, "got index %u\n", names[0].DomainIndex);
+    ok(!names[0].DomainIndex, "got index %lu\n", names[0].DomainIndex);
 
     /* The group name gets translated... but not in all locales */
     size = ARRAY_SIZE(langW);
@@ -413,15 +413,15 @@ static void test_LsaLookupSids(void)
     FreeSid(sid);
 
     ret = ConvertStringSidToSidA("S-1-1234-5678-1234-5678", &sid);
-    ok(ret, "ConvertStringSidToSidA() failed, error %u\n", GetLastError());
+    ok(ret, "ConvertStringSidToSidA() failed, error %lu\n", GetLastError());
 
     status = LsaLookupSids(policy, 1, &sid, &list, &names);
-    ok(status == STATUS_NONE_MAPPED, "got 0x%08x\n", status);
+    ok(status == STATUS_NONE_MAPPED, "got 0x%08lx\n", status);
 
-    ok(!list->Entries, "got %d\n", list->Entries);
+    ok(!list->Entries, "got %ld\n", list->Entries);
 
     ok(names[0].Use == SidTypeUnknown, "got type %u\n", names[0].Use);
-    ok(names[0].DomainIndex == -1, "got index %u\n", names[0].DomainIndex);
+    ok(names[0].DomainIndex == -1, "got index %lu\n", names[0].DomainIndex);
     check_unicode_string(&names[0].Name, L"S-1-1234-5678-1234-5678");
 
     LsaFreeMemory(names);
@@ -429,7 +429,7 @@ static void test_LsaLookupSids(void)
     FreeSid(sid);
 
     status = LsaClose(policy);
-    ok(status == STATUS_SUCCESS, "got 0x%08x\n", status);
+    ok(status == STATUS_SUCCESS, "got 0x%08lx\n", status);
 }
 
 static void test_LsaLookupPrivilegeName(void)
@@ -444,24 +444,24 @@ static void test_LsaLookupPrivilegeName(void)
     attrs.Length = sizeof(attrs);
 
     status = LsaOpenPolicy(NULL, &attrs, POLICY_LOOKUP_NAMES, &policy);
-    ok(status == STATUS_SUCCESS, "Failed to open policy, %#x.\n", status);
+    ok(status == STATUS_SUCCESS, "Failed to open policy, %#lx.\n", status);
 
     name = (void *)0xdeadbeef;
     status = LsaLookupPrivilegeName(policy, NULL, &name);
-    ok(status != STATUS_SUCCESS, "Unexpected status %#x.\n", status);
+    ok(status != STATUS_SUCCESS, "Unexpected status %#lx.\n", status);
     ok(name == (void *)0xdeadbeef, "Unexpected name pointer.\n");
 
     name = (void *)0xdeadbeef;
     luid.HighPart = 1;
     luid.LowPart = SE_CREATE_TOKEN_PRIVILEGE;
     status = LsaLookupPrivilegeName(policy, &luid, &name);
-    ok(status == STATUS_NO_SUCH_PRIVILEGE, "Unexpected status %#x.\n", status);
+    ok(status == STATUS_NO_SUCH_PRIVILEGE, "Unexpected status %#lx.\n", status);
     ok(name == NULL, "Unexpected name pointer.\n");
 
     luid.HighPart = 0;
     luid.LowPart = SE_CREATE_TOKEN_PRIVILEGE;
     status = LsaLookupPrivilegeName(policy, &luid, &name);
-    ok(status == 0, "got %#x.\n", status);
+    ok(status == 0, "got %#lx.\n", status);
     LsaFreeMemory(name);
 }
 
@@ -481,11 +481,11 @@ static void test_LsaGetUserName(void)
 
     size = ARRAY_SIZE(user);
     ret = GetUserNameW(user, &size);
-    ok(ret, "GetUserName error %u\n", GetLastError());
+    ok(ret, "GetUserName error %lu\n", GetLastError());
 
     size = ARRAY_SIZE(computer);
     ret = GetComputerNameW(computer, &size);
-    ok(ret, "GetComputerName error %u\n", GetLastError());
+    ok(ret, "GetComputerName error %lu\n", GetLastError());
 
     if (0) /* crashes under Windows */
         status = pLsaGetUserName(NULL, NULL);
@@ -494,12 +494,12 @@ static void test_LsaGetUserName(void)
         status = pLsaGetUserName(NULL, &lsa_domain);
 
     status = pLsaGetUserName(&lsa_user, NULL);
-    ok(!status, "got %#x\n", status);
+    ok(!status, "got %#lx\n", status);
     check_unicode_string(lsa_user, user);
     LsaFreeMemory(lsa_user);
 
     status = pLsaGetUserName(&lsa_user, &lsa_domain);
-    ok(!status, "got %#x\n", status);
+    ok(!status, "got %#lx\n", status);
     ok(!lstrcmpW(user, lsa_user->Buffer), "%s != %s\n", wine_dbgstr_w(user), wine_dbgstr_wn(lsa_user->Buffer, lsa_user->Length/sizeof(WCHAR)));
     check_unicode_string(lsa_user, user);
     check_unicode_string(lsa_domain, computer);
diff --git a/dlls/advapi32/tests/perf.c b/dlls/advapi32/tests/perf.c
index a0862e65ea4..fc07a09d327 100644
--- a/dlls/advapi32/tests/perf.c
+++ b/dlls/advapi32/tests/perf.c
@@ -64,26 +64,26 @@ void test_provider_init(void)
 
     prov = (HANDLE)0xdeadbeef;
     ret = PerfStartProvider(NULL, test_provider_callback, &prov);
-    ok(ret == ERROR_INVALID_PARAMETER, "Got unexpected ret %u.\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "Got unexpected ret %lu.\n", ret);
     ok(prov == (HANDLE)0xdeadbeef, "Got unexpected prov %p.\n", prov);
 
     prov = (HANDLE)0xdeadbeef;
     ret = PerfStartProvider(&test_guid, test_provider_callback, NULL);
-    ok(ret == ERROR_INVALID_PARAMETER, "Got unexpected ret %u.\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "Got unexpected ret %lu.\n", ret);
     ok(prov == (HANDLE)0xdeadbeef, "Got unexpected prov %p.\n", prov);
 
     prov = (HANDLE)0xdeadbeef;
     ret = PerfStartProvider(&test_guid, test_provider_callback, &prov);
-    ok(!ret, "Got unexpected ret %u.\n", ret);
+    ok(!ret, "Got unexpected ret %lu.\n", ret);
     ok(prov != (HANDLE)0xdeadbeef, "Provider handle is not set.\n");
 
     prov2 = prov;
     ret = PerfStartProvider(&test_guid, test_provider_callback, &prov2);
-    ok(!ret, "Got unexpected ret %u.\n", ret);
+    ok(!ret, "Got unexpected ret %lu.\n", ret);
     ok(prov2 != prov, "Got the same provider handle.\n");
 
     ret = PerfStopProvider(prov2);
-    ok(!ret, "Got unexpected ret %u.\n", ret);
+    ok(!ret, "Got unexpected ret %lu.\n", ret);
 
     if (0)
     {
@@ -93,7 +93,7 @@ void test_provider_init(void)
 
     /* Provider handle is a pointer and not a kernel object handle. */
     bret = DuplicateHandle(GetCurrentProcess(), prov, GetCurrentProcess(), &prov2, 0, FALSE, DUPLICATE_SAME_ACCESS);
-    ok(!bret && GetLastError() == ERROR_INVALID_HANDLE, "Got unexpected bret %d, err %u.\n", bret, GetLastError());
+    ok(!bret && GetLastError() == ERROR_INVALID_HANDLE, "Got unexpected bret %d, err %lu.\n", bret, GetLastError());
     bret = IsBadWritePtr(prov, 8);
     ok(!bret, "Handle does not point to the data.\n");
 
@@ -102,14 +102,14 @@ void test_provider_init(void)
     pc_template.counterset.NumCounters = 0;
     pc_template.counterset.InstanceType = PERF_COUNTERSET_SINGLE_INSTANCE;
     ret = PerfSetCounterSetInfo(prov, &pc_template.counterset, sizeof(pc_template.counterset));
-    ok(ret == ERROR_INVALID_PARAMETER, "Got unexpected ret %u.\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "Got unexpected ret %lu.\n", ret);
 
     pc_template.counterset.CounterSetGuid = test_set_guid;
     pc_template.counterset.ProviderGuid = test_guid;
     pc_template.counterset.NumCounters = 2;
     pc_template.counterset.InstanceType = PERF_COUNTERSET_SINGLE_INSTANCE;
     ret = PerfSetCounterSetInfo(prov, &pc_template.counterset, sizeof(pc_template));
-    ok(!ret, "Got unexpected ret %u.\n", ret);
+    ok(!ret, "Got unexpected ret %lu.\n", ret);
 
     pc_template.counterset.CounterSetGuid = test_set_guid2;
     /* Looks like ProviderGuid doesn't need to match provider. */
@@ -117,50 +117,50 @@ void test_provider_init(void)
     pc_template.counterset.NumCounters = 1;
     pc_template.counterset.InstanceType = PERF_COUNTERSET_SINGLE_INSTANCE;
     ret = PerfSetCounterSetInfo(prov, &pc_template.counterset, sizeof(pc_template));
-    ok(!ret, "Got unexpected ret %u.\n", ret);
+    ok(!ret, "Got unexpected ret %lu.\n", ret);
 
     ret = PerfSetCounterSetInfo(prov, &pc_template.counterset, sizeof(pc_template));
-    ok(ret == ERROR_ALREADY_EXISTS, "Got unexpected ret %u.\n", ret);
+    ok(ret == ERROR_ALREADY_EXISTS, "Got unexpected ret %lu.\n", ret);
 
     SetLastError(0xdeadbeef);
     instance = PerfCreateInstance(prov, NULL, L"1", 1);
     ok(!instance, "Got unexpected instance %p.\n", instance);
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Got unexpected error %u.\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Got unexpected error %lu.\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     instance = PerfCreateInstance(prov, &test_guid, L"1", 1);
     ok(!instance, "Got unexpected instance %p.\n", instance);
-    ok(GetLastError() == ERROR_NOT_FOUND, "Got unexpected error %u.\n", GetLastError());
+    ok(GetLastError() == ERROR_NOT_FOUND, "Got unexpected error %lu.\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     instance = PerfCreateInstance(prov, &test_guid, NULL, 1);
     ok(!instance, "Got unexpected instance %p.\n", instance);
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Got unexpected error %u.\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Got unexpected error %lu.\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     instance = PerfCreateInstance(prov, &test_set_guid, L"11", 1);
     ok(!!instance, "Got NULL instance.\n");
-    ok(GetLastError() == 0xdeadbeef, "Got unexpected error %u.\n", GetLastError());
-    ok(instance->InstanceId == 1, "Got unexpected InstanceId %u.\n", instance->InstanceId);
-    ok(instance->InstanceNameSize == 6, "Got unexpected InstanceNameSize %u.\n", instance->InstanceNameSize);
+    ok(GetLastError() == 0xdeadbeef, "Got unexpected error %lu.\n", GetLastError());
+    ok(instance->InstanceId == 1, "Got unexpected InstanceId %lu.\n", instance->InstanceId);
+    ok(instance->InstanceNameSize == 6, "Got unexpected InstanceNameSize %lu.\n", instance->InstanceNameSize);
     ok(IsEqualGUID(&instance->CounterSetGuid, &test_set_guid), "Got unexpected guid %s.\n",
             debugstr_guid(&instance->CounterSetGuid));
 
     ok(instance->InstanceNameOffset == sizeof(*instance) + sizeof(UINT64) * 2,
-            "Got unexpected InstanceNameOffset %u.\n", instance->InstanceNameOffset);
+            "Got unexpected InstanceNameOffset %lu.\n", instance->InstanceNameOffset);
     ok(!lstrcmpW((WCHAR *)((BYTE *)instance + instance->InstanceNameOffset), L"11"),
             "Got unexpected instance name %s.\n",
             debugstr_w((WCHAR *)((BYTE *)instance + instance->InstanceNameOffset)));
     size = ((sizeof(*instance) + sizeof(UINT64) * 2 + instance->InstanceNameSize) + 7) & ~7;
-    ok(size == instance->dwSize, "Got unexpected size %u, instance->dwSize %u.\n", size, instance->dwSize);
+    ok(size == instance->dwSize, "Got unexpected size %lu, instance->dwSize %lu.\n", size, instance->dwSize);
 
     ret = PerfSetCounterRefValue(prov, instance, 1, &counter1);
-    ok(!ret, "Got unexpected ret %u.\n", ret);
+    ok(!ret, "Got unexpected ret %lu.\n", ret);
     ret = PerfSetCounterRefValue(prov, instance, 2, &counter2);
-    ok(!ret, "Got unexpected ret %u.\n", ret);
+    ok(!ret, "Got unexpected ret %lu.\n", ret);
 
     ret = PerfSetCounterRefValue(prov, instance, 0, &counter2);
-    ok(ret == ERROR_NOT_FOUND, "Got unexpected ret %u.\n", ret);
+    ok(ret == ERROR_NOT_FOUND, "Got unexpected ret %lu.\n", ret);
 
     ok(*(void **)(instance + 1) == &counter1, "Got unexpected counter value %p.\n",
             *(void **)(instance + 1));
@@ -168,24 +168,24 @@ void test_provider_init(void)
             "Got unexpected counter value %p.\n", *(void **)(instance + 1));
 
     ret = PerfDeleteInstance(prov, instance);
-    ok(!ret, "Got unexpected ret %u.\n", ret);
+    ok(!ret, "Got unexpected ret %lu.\n", ret);
 
     ret = PerfStopProvider(prov);
-    ok(!ret, "Got unexpected ret %u.\n", ret);
+    ok(!ret, "Got unexpected ret %lu.\n", ret);
 
     memset( &prov_context, 0, sizeof(prov_context) );
     prov = (HANDLE)0xdeadbeef;
     ret = PerfStartProviderEx( &test_guid, &prov_context, &prov );
-    ok(ret == ERROR_INVALID_PARAMETER, "Got unexpected ret %u.\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "Got unexpected ret %lu.\n", ret);
     ok(prov == (HANDLE)0xdeadbeef, "Got unexpected prov %p.\n", prov);
 
     prov_context.ContextSize = sizeof(prov_context) + 1;
     ret = PerfStartProviderEx( &test_guid, &prov_context, &prov );
-    ok(!ret, "Got unexpected ret %u.\n", ret);
+    ok(!ret, "Got unexpected ret %lu.\n", ret);
     ok(prov != (HANDLE)0xdeadbeef, "Provider handle is not set.\n");
 
     ret = PerfStopProvider(prov);
-    ok(!ret, "Got unexpected ret %u.\n", ret);
+    ok(!ret, "Got unexpected ret %lu.\n", ret);
 }
 
 START_TEST(perf)
diff --git a/dlls/advapi32/tests/registry.c b/dlls/advapi32/tests/registry.c
index af4ed1e8465..6152a313803 100644
--- a/dlls/advapi32/tests/registry.c
+++ b/dlls/advapi32/tests/registry.c
@@ -134,7 +134,7 @@ static void setup_main_key(void)
     if (!RegOpenKeyA( HKEY_CURRENT_USER, "Software\\Wine\\Test", &hkey_main )) delete_key( hkey_main );
 
     ret = RegCreateKeyA( HKEY_CURRENT_USER, "Software\\Wine\\Test", &hkey_main );
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 }
 
 static void check_user_privs(void)
@@ -143,7 +143,7 @@ static void check_user_privs(void)
     HKEY hkey = (HKEY)0xdeadbeef;
 
     ret = RegOpenKeyExA( HKEY_LOCAL_MACHINE, "Software", 0, KEY_READ|KEY_WRITE, &hkey);
-    ok(ret == ERROR_SUCCESS || ret == ERROR_ACCESS_DENIED, "expected success or access denied, got %i\n", ret);
+    ok(ret == ERROR_SUCCESS || ret == ERROR_ACCESS_DENIED, "expected success or access denied, got %li\n", ret);
     if (ret == ERROR_SUCCESS)
     {
         ok(hkey != NULL, "RegOpenKeyExA succeeded but returned NULL hkey\n");
@@ -174,32 +174,32 @@ static void _test_hkey_main_Value_A(int line, LPCSTR name, LPCSTR string,
     SetLastError(0xdeadbeef);
     ret = RegQueryValueExA(hkey_main, name, NULL, &type, NULL, &cbData);
     GLE = GetLastError();
-    lok(ret == ERROR_SUCCESS, "RegQueryValueExA/1 failed: %d, GLE=%d\n", ret, GLE);
+    lok(ret == ERROR_SUCCESS, "RegQueryValueExA/1 failed: %ld, GLE=%ld\n", ret, GLE);
     /* It is wrong for the Ansi version to not be implemented */
-    ok(GLE == 0xdeadbeef, "RegQueryValueExA set GLE = %u\n", GLE);
+    ok(GLE == 0xdeadbeef, "RegQueryValueExA set GLE = %lu\n", GLE);
     if(GLE == ERROR_CALL_NOT_IMPLEMENTED) return;
 
     str_byte_len = (string ? lstrlenA(string) : 0) + 1;
-    lok(type == REG_SZ, "RegQueryValueExA/1 returned type %d\n", type);
-    lok(cbData == full_byte_len, "cbData=%d instead of %d or %d\n", cbData, full_byte_len, str_byte_len);
+    lok(type == REG_SZ, "RegQueryValueExA/1 returned type %ld\n", type);
+    lok(cbData == full_byte_len, "cbData=%ld instead of %ld or %ld\n", cbData, full_byte_len, str_byte_len);
 
     value = HeapAlloc(GetProcessHeap(), 0, cbData+1);
     memset(value, 0xbd, cbData+1);
     type=0xdeadbeef;
     ret = RegQueryValueExA(hkey_main, name, NULL, &type, value, &cbData);
     GLE = GetLastError();
-    lok(ret == ERROR_SUCCESS, "RegQueryValueExA/2 failed: %d, GLE=%d\n", ret, GLE);
+    lok(ret == ERROR_SUCCESS, "RegQueryValueExA/2 failed: %ld, GLE=%ld\n", ret, GLE);
     if (!string)
     {
         /* When cbData == 0, RegQueryValueExA() should not modify the buffer */
-        lok(*value == 0xbd, "RegQueryValueExA overflowed: cbData=%u *value=%02x\n", cbData, *value);
+        lok(*value == 0xbd, "RegQueryValueExA overflowed: cbData=%lu *value=%02x\n", cbData, *value);
     }
     else
     {
-        lok(memcmp(value, string, cbData) == 0, "RegQueryValueExA/2 failed: %s/%d != %s/%d\n",
+        lok(memcmp(value, string, cbData) == 0, "RegQueryValueExA/2 failed: %s/%ld != %s/%ld\n",
            debugstr_an((char*)value, cbData), cbData,
            debugstr_an(string, full_byte_len), full_byte_len);
-        lok(*(value+cbData) == 0xbd, "RegQueryValueExA/2 overflowed at offset %u: %02x != bd\n", cbData, *(value+cbData));
+        lok(*(value+cbData) == 0xbd, "RegQueryValueExA/2 overflowed at offset %lu: %02x != bd\n", cbData, *(value+cbData));
     }
     HeapFree(GetProcessHeap(), 0, value);
 }
@@ -219,16 +219,16 @@ static void _test_hkey_main_Value_W(int line, LPCWSTR name, LPCWSTR string,
     SetLastError(0xdeadbeef);
     ret = RegQueryValueExW(hkey_main, name, NULL, &type, NULL, &cbData);
     GLE = GetLastError();
-    lok(ret == ERROR_SUCCESS, "RegQueryValueExW/1 failed: %d, GLE=%d\n", ret, GLE);
+    lok(ret == ERROR_SUCCESS, "RegQueryValueExW/1 failed: %ld, GLE=%ld\n", ret, GLE);
     if(GLE == ERROR_CALL_NOT_IMPLEMENTED)
     {
         win_skip("RegQueryValueExW() is not implemented\n");
         return;
     }
 
-    lok(type == REG_SZ, "RegQueryValueExW/1 returned type %d\n", type);
+    lok(type == REG_SZ, "RegQueryValueExW/1 returned type %ld\n", type);
     lok(cbData == full_byte_len,
-        "cbData=%d instead of %d\n", cbData, full_byte_len);
+        "cbData=%ld instead of %ld\n", cbData, full_byte_len);
 
     /* Give enough space to overflow by one WCHAR */
     value = HeapAlloc(GetProcessHeap(), 0, cbData+2);
@@ -236,16 +236,16 @@ static void _test_hkey_main_Value_W(int line, LPCWSTR name, LPCWSTR string,
     type=0xdeadbeef;
     ret = RegQueryValueExW(hkey_main, name, NULL, &type, value, &cbData);
     GLE = GetLastError();
-    lok(ret == ERROR_SUCCESS, "RegQueryValueExW/2 failed: %d, GLE=%d\n", ret, GLE);
+    lok(ret == ERROR_SUCCESS, "RegQueryValueExW/2 failed: %ld, GLE=%ld\n", ret, GLE);
     if (string)
     {
-        lok(memcmp(value, string, cbData) == 0, "RegQueryValueExW failed: %s/%d != %s/%d\n",
+        lok(memcmp(value, string, cbData) == 0, "RegQueryValueExW failed: %s/%ld != %s/%ld\n",
            wine_dbgstr_wn((WCHAR*)value, cbData / sizeof(WCHAR)), cbData,
            wine_dbgstr_wn(string, full_byte_len / sizeof(WCHAR)), full_byte_len);
     }
     /* This implies that when cbData == 0, RegQueryValueExW() should not modify the buffer */
-    lok(*(value+cbData) == 0xbd, "RegQueryValueExW/2 overflowed at %u: %02x != bd\n", cbData, *(value+cbData));
-    lok(*(value+cbData+1) == 0xbd, "RegQueryValueExW/2 overflowed at %u+1: %02x != bd\n", cbData, *(value+cbData+1));
+    lok(*(value+cbData) == 0xbd, "RegQueryValueExW/2 overflowed at %lu: %02x != bd\n", cbData, *(value+cbData));
+    lok(*(value+cbData+1) == 0xbd, "RegQueryValueExW/2 overflowed at %lu+1: %02x != bd\n", cbData, *(value+cbData+1));
     HeapFree(GetProcessHeap(), 0, value);
 }
 
@@ -271,65 +271,65 @@ static void test_set_value(void)
     {
         /* Crashes on NT4, Windows 2000 and XP SP1 */
         ret = RegSetValueA(hkey_main, NULL, REG_SZ, NULL, 0);
-        ok(ret == ERROR_INVALID_PARAMETER, "RegSetValueA should have failed with ERROR_INVALID_PARAMETER instead of %d\n", ret);
+        ok(ret == ERROR_INVALID_PARAMETER, "RegSetValueA should have failed with ERROR_INVALID_PARAMETER instead of %ld\n", ret);
     }
 
     ret = RegSetValueA(hkey_main, NULL, REG_SZ, string1A, sizeof(string1A));
-    ok(ret == ERROR_SUCCESS, "RegSetValueA failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueA failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(NULL, string1A, sizeof(string1A));
     test_hkey_main_Value_W(NULL, string1W, sizeof(string1W));
 
     /* RegSetValueA ignores the size passed in */
     ret = RegSetValueA(hkey_main, NULL, REG_SZ, string1A, 4);
-    ok(ret == ERROR_SUCCESS, "RegSetValueA failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueA failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(NULL, string1A, sizeof(string1A));
     test_hkey_main_Value_W(NULL, string1W, sizeof(string1W));
 
     /* stops at first null */
     ret = RegSetValueA(hkey_main, NULL, REG_SZ, string2A, sizeof(string2A));
-    ok(ret == ERROR_SUCCESS, "RegSetValueA failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueA failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(NULL, substring2A, sizeof(substring2A));
     test_hkey_main_Value_W(NULL, substring2W, sizeof(substring2W));
 
     /* only REG_SZ is supported on NT*/
     ret = RegSetValueA(hkey_main, NULL, REG_BINARY, string2A, sizeof(string2A));
-    ok(ret == ERROR_INVALID_PARAMETER, "got %d (expected ERROR_INVALID_PARAMETER)\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "got %ld (expected ERROR_INVALID_PARAMETER)\n", ret);
 
     ret = RegSetValueA(hkey_main, NULL, REG_EXPAND_SZ, string2A, sizeof(string2A));
-    ok(ret == ERROR_INVALID_PARAMETER, "got %d (expected ERROR_INVALID_PARAMETER)\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "got %ld (expected ERROR_INVALID_PARAMETER)\n", ret);
 
     ret = RegSetValueA(hkey_main, NULL, REG_MULTI_SZ, string2A, sizeof(string2A));
-    ok(ret == ERROR_INVALID_PARAMETER, "got %d (expected ERROR_INVALID_PARAMETER)\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "got %ld (expected ERROR_INVALID_PARAMETER)\n", ret);
 
     /* Test RegSetValueExA with a 'zero-byte' string (as Office 2003 does).
      * Surprisingly enough we're supposed to get zero bytes out of it.
      */
     ret = RegSetValueExA(hkey_main, name1A, 0, REG_SZ, (const BYTE *)emptyA, 0);
-    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(name1A, NULL, 0);
     test_hkey_main_Value_W(name1W, NULL, 0);
 
     /* test RegSetValueExA with an empty string */
     ret = RegSetValueExA(hkey_main, name1A, 0, REG_SZ, (const BYTE *)emptyA, sizeof(emptyA));
-    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(name1A, emptyA, sizeof(emptyA));
     test_hkey_main_Value_W(name1W, emptyW, sizeof(emptyW));
 
     /* test RegSetValueExA with off-by-one size */
     ret = RegSetValueExA(hkey_main, name1A, 0, REG_SZ, (const BYTE *)string1A, sizeof(string1A)-sizeof(string1A[0]));
-    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(name1A, string1A, sizeof(string1A));
     test_hkey_main_Value_W(name1W, string1W, sizeof(string1W));
 
     /* test RegSetValueExA with normal string */
     ret = RegSetValueExA(hkey_main, name1A, 0, REG_SZ, (const BYTE *)string1A, sizeof(string1A));
-    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(name1A, string1A, sizeof(string1A));
     test_hkey_main_Value_W(name1W, string1W, sizeof(string1W));
 
     /* test RegSetValueExA with intrazeroed string */
     ret = RegSetValueExA(hkey_main, name2A, 0, REG_SZ, (const BYTE *)string2A, sizeof(string2A));
-    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(name2A, string2A, sizeof(string2A));
     test_hkey_main_Value_W(name2W, string2W, sizeof(string2W));
 
@@ -337,79 +337,79 @@ static void test_set_value(void)
     {
         /* Crashes on NT4, Windows 2000 and XP SP1 */
         ret = RegSetValueW(hkey_main, NULL, REG_SZ, NULL, 0);
-        ok(ret == ERROR_INVALID_PARAMETER, "RegSetValueW should have failed with ERROR_INVALID_PARAMETER instead of %d\n", ret);
+        ok(ret == ERROR_INVALID_PARAMETER, "RegSetValueW should have failed with ERROR_INVALID_PARAMETER instead of %ld\n", ret);
 
         RegSetValueExA(hkey_main, name2A, 0, REG_SZ, (const BYTE *)1, 1);
         RegSetValueExA(hkey_main, name2A, 0, REG_DWORD, (const BYTE *)1, 1);
     }
 
     ret = RegSetValueW(hkey_main, NULL, REG_SZ, string1W, sizeof(string1W));
-    ok(ret == ERROR_SUCCESS, "RegSetValueW failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueW failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(NULL, string1A, sizeof(string1A));
     test_hkey_main_Value_W(NULL, string1W, sizeof(string1W));
 
     ret = RegSetValueW(hkey_main, name1W, REG_SZ, string1W, sizeof(string1W));
-    ok(ret == ERROR_SUCCESS, "RegSetValueW failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueW failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(name1A, string1A, sizeof(string1A));
     test_hkey_main_Value_W(name1W, string1W, sizeof(string1W));
 
     /* RegSetValueW ignores the size passed in */
     ret = RegSetValueW(hkey_main, NULL, REG_SZ, string1W, 4 * sizeof(string1W[0]));
-    ok(ret == ERROR_SUCCESS, "RegSetValueW failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueW failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(NULL, string1A, sizeof(string1A));
     test_hkey_main_Value_W(NULL, string1W, sizeof(string1W));
 
     /* stops at first null */
     ret = RegSetValueW(hkey_main, NULL, REG_SZ, string2W, sizeof(string2W));
-    ok(ret == ERROR_SUCCESS, "RegSetValueW failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueW failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(NULL, substring2A, sizeof(substring2A));
     test_hkey_main_Value_W(NULL, substring2W, sizeof(substring2W));
 
     /* only REG_SZ is supported */
     ret = RegSetValueW(hkey_main, NULL, REG_BINARY, string2W, sizeof(string2W));
-    ok(ret == ERROR_INVALID_PARAMETER, "RegSetValueW should have returned ERROR_INVALID_PARAMETER instead of %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "RegSetValueW should have returned ERROR_INVALID_PARAMETER instead of %ld\n", ret);
     ret = RegSetValueW(hkey_main, NULL, REG_EXPAND_SZ, string2W, sizeof(string2W));
-    ok(ret == ERROR_INVALID_PARAMETER, "RegSetValueW should have returned ERROR_INVALID_PARAMETER instead of %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "RegSetValueW should have returned ERROR_INVALID_PARAMETER instead of %ld\n", ret);
     ret = RegSetValueW(hkey_main, NULL, REG_MULTI_SZ, string2W, sizeof(string2W));
-    ok(ret == ERROR_INVALID_PARAMETER, "RegSetValueW should have returned ERROR_INVALID_PARAMETER instead of %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "RegSetValueW should have returned ERROR_INVALID_PARAMETER instead of %ld\n", ret);
 
     /* test RegSetValueExW with off-by-one size */
     ret = RegSetValueExW(hkey_main, name1W, 0, REG_SZ, (const BYTE *)string1W, sizeof(string1W)-sizeof(string1W[0]));
-    ok(ret == ERROR_SUCCESS, "RegSetValueExW failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueExW failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(name1A, string1A, sizeof(string1A));
     test_hkey_main_Value_W(name1W, string1W, sizeof(string1W));
 
     /* test RegSetValueExW with normal string */
     ret = RegSetValueExW(hkey_main, name1W, 0, REG_SZ, (const BYTE *)string1W, sizeof(string1W));
-    ok(ret == ERROR_SUCCESS, "RegSetValueExW failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueExW failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(name1A, string1A, sizeof(string1A));
     test_hkey_main_Value_W(name1W, string1W, sizeof(string1W));
 
     /* test RegSetValueExW with intrazeroed string */
     ret = RegSetValueExW(hkey_main, name2W, 0, REG_SZ, (const BYTE *)string2W, sizeof(string2W));
-    ok(ret == ERROR_SUCCESS, "RegSetValueExW failed: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_SUCCESS, "RegSetValueExW failed: %ld, GLE=%ld\n", ret, GetLastError());
     test_hkey_main_Value_A(name2A, string2A, sizeof(string2A));
     test_hkey_main_Value_W(name2W, string2W, sizeof(string2W));
 
     /* test RegSetValueExW with data = 1 */
     ret = RegSetValueExW(hkey_main, name2W, 0, REG_SZ, (const BYTE *)1, 1);
-    ok(ret == ERROR_NOACCESS, "RegSetValueExW should have failed with ERROR_NOACCESS: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_NOACCESS, "RegSetValueExW should have failed with ERROR_NOACCESS: %ld, GLE=%ld\n", ret, GetLastError());
     ret = RegSetValueExW(hkey_main, name2W, 0, REG_DWORD, (const BYTE *)1, 1);
-    ok(ret == ERROR_NOACCESS, "RegSetValueExW should have failed with ERROR_NOACCESS: %d, GLE=%d\n", ret, GetLastError());
+    ok(ret == ERROR_NOACCESS, "RegSetValueExW should have failed with ERROR_NOACCESS: %ld, GLE=%ld\n", ret, GetLastError());
 
     if (pRegGetValueA) /* avoid a crash on Windows 2000 */
     {
         ret = RegSetValueExW(hkey_main, NULL, 0, REG_SZ, NULL, 4);
-        ok(ret == ERROR_NOACCESS, "RegSetValueExW should have failed with ERROR_NOACCESS: %d, GLE=%d\n", ret, GetLastError());
+        ok(ret == ERROR_NOACCESS, "RegSetValueExW should have failed with ERROR_NOACCESS: %ld, GLE=%ld\n", ret, GetLastError());
 
         ret = RegSetValueExW(hkey_main, NULL, 0, REG_SZ, NULL, 0);
-        ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+        ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
 
         ret = RegSetValueExW(hkey_main, NULL, 0, REG_DWORD, NULL, 4);
-        ok(ret == ERROR_NOACCESS, "RegSetValueExW should have failed with ERROR_NOACCESS: %d, GLE=%d\n", ret, GetLastError());
+        ok(ret == ERROR_NOACCESS, "RegSetValueExW should have failed with ERROR_NOACCESS: %ld, GLE=%ld\n", ret, GetLastError());
 
         ret = RegSetValueExW(hkey_main, NULL, 0, REG_DWORD, NULL, 0);
-        ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+        ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
     }
 
     /* RegSetKeyValue */
@@ -421,29 +421,29 @@ static void test_set_value(void)
         HKEY subkey;
 
         ret = pRegSetKeyValueW(hkey_main, NULL, name1W, REG_SZ, (const BYTE*)string2W, sizeof(string2W));
-        ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+        ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
         test_hkey_main_Value_A(name1A, string2A, sizeof(string2A));
         test_hkey_main_Value_W(name1W, string2W, sizeof(string2W));
 
         ret = pRegSetKeyValueW(hkey_main, L"subkey", name1W, REG_SZ, string1W, sizeof(string1W));
-        ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+        ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
 
         ret = RegOpenKeyExW(hkey_main, L"subkey", 0, KEY_QUERY_VALUE, &subkey);
-        ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+        ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
         type = len = 0;
         ret = RegQueryValueExW(subkey, name1W, 0, &type, NULL, &len);
-        ok(ret == ERROR_SUCCESS, "got %d\n", ret);
-        ok(len == sizeof(string1W), "got %d\n", len);
-        ok(type == REG_SZ, "got type %d\n", type);
+        ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
+        ok(len == sizeof(string1W), "got %ld\n", len);
+        ok(type == REG_SZ, "got type %ld\n", type);
 
         ret = pRegSetKeyValueW(hkey_main, L"subkey", name1W, REG_SZ, NULL, 0);
-        ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+        ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
 
         ret = pRegSetKeyValueW(hkey_main, L"subkey", name1W, REG_SZ, NULL, 4);
-        ok(ret == ERROR_NOACCESS, "got %d\n", ret);
+        ok(ret == ERROR_NOACCESS, "got %ld\n", ret);
 
         ret = pRegSetKeyValueW(hkey_main, L"subkey", name1W, REG_DWORD, NULL, 4);
-        ok(ret == ERROR_NOACCESS, "got %d\n", ret);
+        ok(ret == ERROR_NOACCESS, "got %ld\n", ret);
 
         RegCloseKey(subkey);
     }
@@ -482,18 +482,18 @@ static void test_enum_value(void)
 
     /* create the working key for new 'Test' value */
     res = RegCreateKeyA( hkey_main, "TestKey", &test_key );
-    ok( res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", res);
+    ok( res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", res);
 
     /* check NULL data with zero length */
     res = RegSetValueExA( test_key, "Test", 0, REG_SZ, NULL, 0 );
     if (GetVersion() & 0x80000000)
-        ok( res == ERROR_INVALID_PARAMETER, "RegSetValueExA returned %d\n", res );
+        ok( res == ERROR_INVALID_PARAMETER, "RegSetValueExA returned %ld\n", res );
     else
-        ok( !res, "RegSetValueExA returned %d\n", res );
+        ok( !res, "RegSetValueExA returned %ld\n", res );
     res = RegSetValueExA( test_key, "Test", 0, REG_EXPAND_SZ, NULL, 0 );
-    ok( ERROR_SUCCESS == res, "RegSetValueExA returned %d\n", res );
+    ok( ERROR_SUCCESS == res, "RegSetValueExA returned %ld\n", res );
     res = RegSetValueExA( test_key, "Test", 0, REG_BINARY, NULL, 0 );
-    ok( ERROR_SUCCESS == res, "RegSetValueExA returned %d\n", res );
+    ok( ERROR_SUCCESS == res, "RegSetValueExA returned %ld\n", res );
 
     /* test reading the value and data without setting them */
     val_count = 20;
@@ -502,10 +502,10 @@ static void test_enum_value(void)
     strcpy( value, "xxxxxxxxxx" );
     strcpy( data, "xxxxxxxxxx" );
     res = RegEnumValueA( test_key, 0, value, &val_count, NULL, &type, (LPBYTE)data, &data_count );
-    ok( res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", res );
-    ok( val_count == 4, "val_count set to %d instead of 4\n", val_count );
-    ok( data_count == 0, "data_count set to %d instead of 0\n", data_count );
-    ok( type == REG_BINARY, "type %d is not REG_BINARY\n", type );
+    ok( res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", res );
+    ok( val_count == 4, "val_count set to %ld instead of 4\n", val_count );
+    ok( data_count == 0, "data_count set to %ld instead of 0\n", data_count );
+    ok( type == REG_BINARY, "type %ld is not REG_BINARY\n", type );
     ok( !strcmp( value, "Test" ), "value is '%s' instead of Test\n", value );
     ok( !strcmp( data, "xxxxxxxxxx" ), "data is '%s' instead of xxxxxxxxxx\n", data );
 
@@ -515,15 +515,15 @@ static void test_enum_value(void)
     wcscpy( valueW, L"xxxxxxxx" );
     wcscpy( dataW, L"xxxxxxxx" );
     res = RegEnumValueW( test_key, 0, valueW, &val_count, NULL, &type, (BYTE*)dataW, &data_count );
-    ok( res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", res );
-    ok( val_count == 4, "val_count set to %d instead of 4\n", val_count );
-    ok( data_count == 0, "data_count set to %d instead of 0\n", data_count );
-    ok( type == REG_BINARY, "type %d is not REG_BINARY\n", type );
+    ok( res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", res );
+    ok( val_count == 4, "val_count set to %ld instead of 4\n", val_count );
+    ok( data_count == 0, "data_count set to %ld instead of 0\n", data_count );
+    ok( type == REG_BINARY, "type %ld is not REG_BINARY\n", type );
     ok( !wcscmp( valueW, L"Test" ), "value is not 'Test'\n" );
     ok( !wcscmp( dataW, L"xxxxxxxx" ), "data is not 'xxxxxxxx'\n" );
 
     res = RegSetValueExA( test_key, "Test", 0, REG_SZ, (const BYTE *)"foobar", 7 );
-    ok( res == 0, "RegSetValueExA failed error %d\n", res );
+    ok( res == 0, "RegSetValueExA failed error %ld\n", res );
 
     /* overflow both name and data */
     val_count = 2;
@@ -532,11 +532,11 @@ static void test_enum_value(void)
     strcpy( value, "xxxxxxxxxx" );
     strcpy( data, "xxxxxxxxxx" );
     res = RegEnumValueA( test_key, 0, value, &val_count, NULL, &type, (LPBYTE)data, &data_count );
-    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %d\n", res );
-    ok( val_count == 2, "val_count set to %d\n", val_count );
+    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %ld\n", res );
+    ok( val_count == 2, "val_count set to %ld\n", val_count );
     /* Chinese, Japanese, and Korean editions of Windows 10 sometimes set data_count to a higher value */
-    ok( data_count == 7 || broken( data_count > 7 ), "data_count set to %d instead of 7\n", data_count );
-    ok( type == REG_SZ, "type %d is not REG_SZ\n", type );
+    ok( data_count == 7 || broken( data_count > 7 ), "data_count set to %ld instead of 7\n", data_count );
+    ok( type == REG_SZ, "type %ld is not REG_SZ\n", type );
     ok( !strcmp( value, "xxxxxxxxxx" ), "value set to '%s'\n", value );
     ok( !strcmp( data, "xxxxxxxxxx" ), "data set to '%s'\n", data );
 
@@ -547,17 +547,17 @@ static void test_enum_value(void)
     strcpy( value, "xxxxxxxxxx" );
     memset( data, 'x', sizeof(data) );
     res = RegEnumValueA( test_key, 0, value, &val_count, NULL, &type, (LPBYTE)data, &data_count );
-    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %d\n", res );
-    ok( val_count == 3, "val_count set to %d\n", val_count );
+    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %ld\n", res );
+    ok( val_count == 3, "val_count set to %ld\n", val_count );
     /* Chinese, Japanese, and Korean editions of Windows 10 sometimes set data_count to a higher value */
-    ok( data_count == 7 || broken( data_count > 7 ), "data_count set to %d instead of 7\n", data_count );
-    ok( type == REG_SZ, "type %d is not REG_SZ\n", type );
+    ok( data_count == 7 || broken( data_count > 7 ), "data_count set to %ld instead of 7\n", data_count );
+    ok( type == REG_SZ, "type %ld is not REG_SZ\n", type );
     /* v5.1.2600.0 (XP Home and Professional) does not touch value or data in this case */
     ok( !strcmp( value, "Te" ) || !strcmp( value, "xxxxxxxxxx" ), 
         "value set to '%s' instead of 'Te' or 'xxxxxxxxxx'\n", value );
     ok( !strcmp( data, "foobar" ) || !strcmp( data, "xxxxxxx" ) ||
         broken( data_count > 7 && strspn( data, "x" ) == data_count && data[data_count] == 0 ),
-        "data set to '%s' instead of 'foobar' or x's, data_count=%u\n", data, data_count );
+        "data set to '%s' instead of 'foobar' or x's, data_count=%lu\n", data, data_count );
 
     /* overflow empty name */
     val_count = 0;
@@ -566,16 +566,16 @@ static void test_enum_value(void)
     strcpy( value, "xxxxxxxxxx" );
     memset( data, 'x', sizeof(data) );
     res = RegEnumValueA( test_key, 0, value, &val_count, NULL, &type, (LPBYTE)data, &data_count );
-    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %d\n", res );
-    ok( val_count == 0, "val_count set to %d\n", val_count );
+    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %ld\n", res );
+    ok( val_count == 0, "val_count set to %ld\n", val_count );
     /* Chinese, Japanese, and Korean editions of Windows 10 sometimes set data_count to a higher value */
-    ok( data_count == 7 || broken( data_count > 7 ), "data_count set to %d instead of 7\n", data_count );
-    ok( type == REG_SZ, "type %d is not REG_SZ\n", type );
+    ok( data_count == 7 || broken( data_count > 7 ), "data_count set to %ld instead of 7\n", data_count );
+    ok( type == REG_SZ, "type %ld is not REG_SZ\n", type );
     ok( !strcmp( value, "xxxxxxxxxx" ), "value set to '%s'\n", value );
     /* v5.1.2600.0 (XP Home and Professional) does not touch data in this case */
     ok( !strcmp( data, "foobar" ) || !strcmp( data, "xxxxxxx" ) ||
         broken( data_count > 7 && strspn( data, "x" ) == data_count && data[data_count] == 0 ),
-        "data set to '%s' instead of 'foobar' or x's, data_count=%u\n", data, data_count );
+        "data set to '%s' instead of 'foobar' or x's, data_count=%lu\n", data, data_count );
 
     /* overflow data */
     val_count = 20;
@@ -584,10 +584,10 @@ static void test_enum_value(void)
     strcpy( value, "xxxxxxxxxx" );
     strcpy( data, "xxxxxxxxxx" );
     res = RegEnumValueA( test_key, 0, value, &val_count, NULL, &type, (LPBYTE)data, &data_count );
-    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %d\n", res );
-    ok( val_count == 20, "val_count set to %d\n", val_count );
-    ok( data_count == 7, "data_count set to %d instead of 7\n", data_count );
-    ok( type == REG_SZ, "type %d is not REG_SZ\n", type );
+    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %ld\n", res );
+    ok( val_count == 20, "val_count set to %ld\n", val_count );
+    ok( data_count == 7, "data_count set to %ld instead of 7\n", data_count );
+    ok( type == REG_SZ, "type %ld is not REG_SZ\n", type );
     ok( !strcmp( value, "xxxxxxxxxx" ), "value set to '%s'\n", value );
     ok( !strcmp( data, "xxxxxxxxxx" ), "data set to '%s'\n", data );
 
@@ -598,10 +598,10 @@ static void test_enum_value(void)
     strcpy( value, "xxxxxxxxxx" );
     strcpy( data, "xxxxxxxxxx" );
     res = RegEnumValueA( test_key, 0, value, &val_count, NULL, &type, (LPBYTE)data, &data_count );
-    ok( res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", res );
-    ok( val_count == 4, "val_count set to %d instead of 4\n", val_count );
-    ok( data_count == 7, "data_count set to %d instead of 7\n", data_count );
-    ok( type == REG_SZ, "type %d is not REG_SZ\n", type );
+    ok( res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", res );
+    ok( val_count == 4, "val_count set to %ld instead of 4\n", val_count );
+    ok( data_count == 7, "data_count set to %ld instead of 7\n", data_count );
+    ok( type == REG_SZ, "type %ld is not REG_SZ\n", type );
     ok( !strcmp( value, "Test" ), "value is '%s' instead of Test\n", value );
     ok( !strcmp( data, "foobar" ), "data is '%s' instead of foobar\n", data );
 
@@ -612,7 +612,7 @@ static void test_enum_value(void)
         type = 1234;
         strcpy( data, "xxxxxxxxxx" );
         res = RegEnumValueA( test_key, 0, NULL, NULL, NULL, &type, (BYTE*)data, &data_count );
-        ok( res == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", res );
+        ok( res == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n", res );
 
         /* no value parameter */
         val_count = 20;
@@ -620,7 +620,7 @@ static void test_enum_value(void)
         type = 1234;
         strcpy( data, "xxxxxxxxxx" );
         res = RegEnumValueA( test_key, 0, NULL, &val_count, NULL, &type, (BYTE*)data, &data_count );
-        ok( res == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", res );
+        ok( res == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n", res );
 
         /* no val_count parameter */
         data_count = 20;
@@ -628,7 +628,7 @@ static void test_enum_value(void)
         strcpy( value, "xxxxxxxxxx" );
         strcpy( data, "xxxxxxxxxx" );
         res = RegEnumValueA( test_key, 0, value, NULL, NULL, &type, (BYTE*)data, &data_count );
-        ok( res == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", res );
+        ok( res == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n", res );
     }
 
     /* Unicode tests */
@@ -640,7 +640,7 @@ static void test_enum_value(void)
         win_skip("RegSetValueExW is not implemented\n");
         goto cleanup;
     }
-    ok( res == 0, "RegSetValueExW failed error %d\n", res );
+    ok( res == 0, "RegSetValueExW failed error %ld\n", res );
 
     /* overflow both name and data */
     val_count = 2;
@@ -649,10 +649,10 @@ static void test_enum_value(void)
     wcscpy( valueW, L"xxxxxxxx" );
     wcscpy( dataW, L"xxxxxxxx" );
     res = RegEnumValueW( test_key, 0, valueW, &val_count, NULL, &type, (BYTE*)dataW, &data_count );
-    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %d\n", res );
-    ok( val_count == 2, "val_count set to %d\n", val_count );
-    ok( data_count == 7*sizeof(WCHAR), "data_count set to %d instead of 7*sizeof(WCHAR)\n", data_count );
-    ok( type == REG_SZ, "type %d is not REG_SZ\n", type );
+    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %ld\n", res );
+    ok( val_count == 2, "val_count set to %ld\n", val_count );
+    ok( data_count == 7*sizeof(WCHAR), "data_count set to %ld instead of 7*sizeof(WCHAR)\n", data_count );
+    ok( type == REG_SZ, "type %ld is not REG_SZ\n", type );
     ok( !wcscmp( valueW, L"xxxxxxxx" ), "value modified\n" );
     ok( !wcscmp( dataW, L"xxxxxxxx" ), "data modified\n" );
 
@@ -663,10 +663,10 @@ static void test_enum_value(void)
     wcscpy( valueW, L"xxxxxxxx" );
     wcscpy( dataW, L"xxxxxxxx" );
     res = RegEnumValueW( test_key, 0, valueW, &val_count, NULL, &type, (BYTE*)dataW, &data_count );
-    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %d\n", res );
-    ok( val_count == 3, "val_count set to %d\n", val_count );
-    ok( data_count == 7*sizeof(WCHAR), "data_count set to %d instead of 7*sizeof(WCHAR)\n", data_count );
-    ok( type == REG_SZ, "type %d is not REG_SZ\n", type );
+    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %ld\n", res );
+    ok( val_count == 3, "val_count set to %ld\n", val_count );
+    ok( data_count == 7*sizeof(WCHAR), "data_count set to %ld instead of 7*sizeof(WCHAR)\n", data_count );
+    ok( type == REG_SZ, "type %ld is not REG_SZ\n", type );
     ok( !wcscmp( valueW, L"xxxxxxxx" ), "value modified\n" );
     ok( !wcscmp( dataW, L"xxxxxxxx" ), "data modified\n" );
 
@@ -677,10 +677,10 @@ static void test_enum_value(void)
     wcscpy( valueW, L"xxxxxxxx" );
     wcscpy( dataW, L"xxxxxxxx" );
     res = RegEnumValueW( test_key, 0, valueW, &val_count, NULL, &type, (BYTE*)dataW, &data_count );
-    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %d\n", res );
-    ok( val_count == 4, "val_count set to %d instead of 4\n", val_count );
-    ok( data_count == 7*sizeof(WCHAR), "data_count set to %d instead of 7*sizeof(WCHAR)\n", data_count );
-    ok( type == REG_SZ, "type %d is not REG_SZ\n", type );
+    ok( res == ERROR_MORE_DATA, "expected ERROR_MORE_DATA, got %ld\n", res );
+    ok( val_count == 4, "val_count set to %ld instead of 4\n", val_count );
+    ok( data_count == 7*sizeof(WCHAR), "data_count set to %ld instead of 7*sizeof(WCHAR)\n", data_count );
+    ok( type == REG_SZ, "type %ld is not REG_SZ\n", type );
     ok( !wcscmp( valueW, L"Test" ), "value is not 'Test'\n" );
     ok( !wcscmp( dataW, L"xxxxxxxx" ), "data modified\n" );
 
@@ -691,10 +691,10 @@ static void test_enum_value(void)
     wcscpy( valueW, L"xxxxxxxx" );
     wcscpy( dataW, L"xxxxxxxx" );
     res = RegEnumValueW( test_key, 0, valueW, &val_count, NULL, &type, (BYTE*)dataW, &data_count );
-    ok( res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", res );
-    ok( val_count == 4, "val_count set to %d instead of 4\n", val_count );
-    ok( data_count == 7*sizeof(WCHAR), "data_count set to %d instead of 7*sizeof(WCHAR)\n", data_count );
-    ok( type == REG_SZ, "type %d is not REG_SZ\n", type );
+    ok( res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", res );
+    ok( val_count == 4, "val_count set to %ld instead of 4\n", val_count );
+    ok( data_count == 7*sizeof(WCHAR), "data_count set to %ld instead of 7*sizeof(WCHAR)\n", data_count );
+    ok( type == REG_SZ, "type %ld is not REG_SZ\n", type );
     ok( !wcscmp( valueW, L"Test" ), "value is not 'Test'\n" );
     ok( !wcscmp( dataW, L"foobar" ), "data is not 'foobar'\n" );
 
@@ -705,7 +705,7 @@ static void test_enum_value(void)
         type = 1234;
         wcscpy( dataW, L"xxxxxxxx" );
         res = RegEnumValueW( test_key, 0, NULL, NULL, NULL, &type, (BYTE*)dataW, &data_count );
-        ok( res == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", res );
+        ok( res == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n", res );
 
         /* no valueW parameter */
         val_count = 20;
@@ -713,7 +713,7 @@ static void test_enum_value(void)
         type = 1234;
         wcscpy( dataW, L"xxxxxxxx" );
         res = RegEnumValueW( test_key, 0, NULL, &val_count, NULL, &type, (BYTE*)dataW, &data_count );
-        ok( res == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", res );
+        ok( res == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n", res );
 
         /* no val_count parameter */
         data_count = 20;
@@ -721,7 +721,7 @@ static void test_enum_value(void)
         wcscpy( valueW, L"xxxxxxxx" );
         wcscpy( dataW, L"xxxxxxxx" );
         res = RegEnumValueW( test_key, 0, valueW, NULL, NULL, &type, (BYTE*)dataW, &data_count );
-        ok( res == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", res );
+        ok( res == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n", res );
     }
 
 cleanup:
@@ -736,24 +736,24 @@ static void test_query_value_ex(void)
 
     size = sizeof(buffer);
     ret = RegQueryValueExA(hkey_main, "TP1_SZ", NULL, &type, NULL, &size);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
-    ok(size == strlen(sTestpath1) + 1, "(%d,%d)\n", (DWORD)strlen(sTestpath1) + 1, size);
-    ok(type == REG_SZ, "type %d is not REG_SZ\n", type);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
+    ok(size == strlen(sTestpath1) + 1, "(%ld,%ld)\n", (DWORD)strlen(sTestpath1) + 1, size);
+    ok(type == REG_SZ, "type %ld is not REG_SZ\n", type);
 
     type = 0xdeadbeef;
     size = 0xdeadbeef;
     ret = RegQueryValueExA(HKEY_CLASSES_ROOT, "Nonexistent Value", NULL, &type, NULL, &size);
-    ok(ret == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %d\n", ret);
-    ok(size == 0, "size should have been set to 0 instead of %d\n", size);
+    ok(ret == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %ld\n", ret);
+    ok(size == 0, "size should have been set to 0 instead of %ld\n", size);
 
     size = sizeof(buffer);
     ret = RegQueryValueExA(HKEY_CLASSES_ROOT, "Nonexistent Value", NULL, &type, buffer, &size);
-    ok(ret == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %d\n", ret);
-    ok(size == sizeof(buffer), "size shouldn't have been changed to %d\n", size);
+    ok(ret == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %ld\n", ret);
+    ok(size == sizeof(buffer), "size shouldn't have been changed to %ld\n", size);
 
     size = 4;
     ret = RegQueryValueExA(hkey_main, "BIN32", NULL, &size, buffer, &size);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 }
 
 static void test_get_value(void)
@@ -774,133 +774,133 @@ static void test_get_value(void)
 
     /* Invalid parameter */
     ret = pRegGetValueA(hkey_main, NULL, "DWORD", RRF_RT_REG_DWORD, &type, &dw, NULL);
-    ok(ret == ERROR_INVALID_PARAMETER, "ret=%d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "ret=%ld\n", ret);
 
     /* Query REG_DWORD using RRF_RT_REG_DWORD (ok) */
     size = type = dw = 0xdeadbeef;
     ret = pRegGetValueA(hkey_main, NULL, "DWORD", RRF_RT_REG_DWORD, &type, &dw, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
-    ok(size == 4, "size=%d\n", size);
-    ok(type == REG_DWORD, "type=%d\n", type);
-    ok(dw == 0x12345678, "dw=%d\n", dw);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
+    ok(size == 4, "size=%ld\n", size);
+    ok(type == REG_DWORD, "type=%ld\n", type);
+    ok(dw == 0x12345678, "dw=%ld\n", dw);
 
     /* Check RRF_SUBKEY_WOW64*KEY validation on a case without a subkey */
     ret = pRegGetValueA(hkey_main, NULL, "DWORD", RRF_RT_REG_DWORD | RRF_SUBKEY_WOW6464KEY | RRF_SUBKEY_WOW6432KEY, NULL, NULL, NULL);
     ok(ret == ERROR_INVALID_PARAMETER || broken(ret == ERROR_SUCCESS), /* Before Win10 */
-       "ret=%d\n", ret);
+       "ret=%ld\n", ret);
     ret = pRegGetValueA(hkey_main, NULL, "DWORD", RRF_RT_REG_DWORD | RRF_SUBKEY_WOW6464KEY, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
     ret = pRegGetValueA(hkey_main, NULL, "DWORD", RRF_RT_REG_DWORD | RRF_SUBKEY_WOW6432KEY, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
 
     /* Query by subkey-name */
     ret = pRegGetValueA(HKEY_CURRENT_USER, "Software\\Wine\\Test", "DWORD", RRF_RT_REG_DWORD, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
 
     /* Check RRF_SUBKEY_WOW64*KEY validation on a case with a subkey */
     ret = pRegGetValueA(HKEY_CURRENT_USER, "Software\\Wine\\Test", "DWORD", RRF_RT_REG_DWORD | RRF_SUBKEY_WOW6464KEY | RRF_SUBKEY_WOW6432KEY, NULL, NULL, NULL);
     ok(ret == ERROR_INVALID_PARAMETER || broken(ret == ERROR_SUCCESS), /* Before Win10 */
-       "ret=%d\n", ret);
+       "ret=%ld\n", ret);
     ret = pRegGetValueA(HKEY_CURRENT_USER, "Software\\Wine\\Test", "DWORD", RRF_RT_REG_DWORD | RRF_SUBKEY_WOW6464KEY, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
     ret = pRegGetValueA(HKEY_CURRENT_USER, "Software\\Wine\\Test", "DWORD", RRF_RT_REG_DWORD | RRF_SUBKEY_WOW6432KEY, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
 
     /* Query REG_DWORD using RRF_RT_REG_BINARY (restricted) */
     size = type = dw = 0xdeadbeef;
     ret = pRegGetValueA(hkey_main, NULL, "DWORD", RRF_RT_REG_BINARY, &type, &dw, &size);
-    ok(ret == ERROR_UNSUPPORTED_TYPE, "ret=%d\n", ret);
+    ok(ret == ERROR_UNSUPPORTED_TYPE, "ret=%ld\n", ret);
     /* Although the function failed all values are retrieved */
-    ok(size == 4, "size=%d\n", size);
-    ok(type == REG_DWORD, "type=%d\n", type);
-    ok(dw == 0x12345678, "dw=%d\n", dw);
+    ok(size == 4, "size=%ld\n", size);
+    ok(type == REG_DWORD, "type=%ld\n", type);
+    ok(dw == 0x12345678, "dw=%ld\n", dw);
 
     /* Test RRF_ZEROONFAILURE */
     type = dw = 0xdeadbeef; size = 4;
     ret = pRegGetValueA(hkey_main, NULL, "DWORD", RRF_RT_REG_SZ|RRF_ZEROONFAILURE, &type, &dw, &size);
-    ok(ret == ERROR_UNSUPPORTED_TYPE, "ret=%d\n", ret);
+    ok(ret == ERROR_UNSUPPORTED_TYPE, "ret=%ld\n", ret);
     /* Again all values are retrieved ... */
-    ok(size == 4, "size=%d\n", size);
-    ok(type == REG_DWORD, "type=%d\n", type);
+    ok(size == 4, "size=%ld\n", size);
+    ok(type == REG_DWORD, "type=%ld\n", type);
     /* ... except the buffer, which is zeroed out */
-    ok(dw == 0, "dw=%d\n", dw);
+    ok(dw == 0, "dw=%ld\n", dw);
 
     /* Test RRF_ZEROONFAILURE with a NULL buffer... */
     type = size = 0xbadbeef;
     ret = pRegGetValueA(hkey_main, NULL, "DWORD", RRF_RT_REG_SZ|RRF_ZEROONFAILURE, &type, NULL, &size);
-    ok(ret == ERROR_UNSUPPORTED_TYPE, "ret=%d\n", ret);
-    ok(size == 4, "size=%d\n", size);
-    ok(type == REG_DWORD, "type=%d\n", type);
+    ok(ret == ERROR_UNSUPPORTED_TYPE, "ret=%ld\n", ret);
+    ok(size == 4, "size=%ld\n", size);
+    ok(type == REG_DWORD, "type=%ld\n", type);
 
     /* Query REG_DWORD using RRF_RT_DWORD (ok) */
     size = type = dw = 0xdeadbeef;
     ret = pRegGetValueA(hkey_main, NULL, "DWORD", RRF_RT_DWORD, &type, &dw, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
-    ok(size == 4, "size=%d\n", size);
-    ok(type == REG_DWORD, "type=%d\n", type);
-    ok(dw == 0x12345678, "dw=%d\n", dw);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
+    ok(size == 4, "size=%ld\n", size);
+    ok(type == REG_DWORD, "type=%ld\n", type);
+    ok(dw == 0x12345678, "dw=%ld\n", dw);
 
     /* Query 32-bit REG_BINARY using RRF_RT_DWORD (ok) */
     size = type = dw = 0xdeadbeef;
     ret = pRegGetValueA(hkey_main, NULL, "BIN32", RRF_RT_DWORD, &type, &dw, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
-    ok(size == 4, "size=%d\n", size);
-    ok(type == REG_BINARY, "type=%d\n", type);
-    ok(dw == 0x12345678, "dw=%d\n", dw);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
+    ok(size == 4, "size=%ld\n", size);
+    ok(type == REG_BINARY, "type=%ld\n", type);
+    ok(dw == 0x12345678, "dw=%ld\n", dw);
     
     /* Query 64-bit REG_BINARY using RRF_RT_DWORD (type mismatch) */
     qw[0] = qw[1] = size = type = 0xdeadbeef;
     ret = pRegGetValueA(hkey_main, NULL, "BIN64", RRF_RT_DWORD, &type, qw, &size);
-    ok(ret == ERROR_DATATYPE_MISMATCH, "ret=%d\n", ret);
-    ok(size == 8, "size=%d\n", size);
-    ok(type == REG_BINARY, "type=%d\n", type);
+    ok(ret == ERROR_DATATYPE_MISMATCH, "ret=%ld\n", ret);
+    ok(size == 8, "size=%ld\n", size);
+    ok(type == REG_BINARY, "type=%ld\n", type);
     ok(qw[0] == 0x12345678 && 
-       qw[1] == 0x87654321, "qw={%d,%d}\n", qw[0], qw[1]);
+       qw[1] == 0x87654321, "qw={%ld,%ld}\n", qw[0], qw[1]);
     
     /* Query 64-bit REG_BINARY using 32-bit buffer (buffer too small) */
     type = dw = 0xdeadbeef; size = 4;
     ret = pRegGetValueA(hkey_main, NULL, "BIN64", RRF_RT_REG_BINARY, &type, &dw, &size);
-    ok(ret == ERROR_MORE_DATA, "ret=%d\n", ret);
-    ok(dw == 0xdeadbeef, "dw=%d\n", dw);
-    ok(size == 8, "size=%d\n", size);
+    ok(ret == ERROR_MORE_DATA, "ret=%ld\n", ret);
+    ok(dw == 0xdeadbeef, "dw=%ld\n", dw);
+    ok(size == 8, "size=%ld\n", size);
 
     /* Query 64-bit REG_BINARY using RRF_RT_QWORD (ok) */
     qw[0] = qw[1] = size = type = 0xdeadbeef;
     ret = pRegGetValueA(hkey_main, NULL, "BIN64", RRF_RT_QWORD, &type, qw, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
-    ok(size == 8, "size=%d\n", size);
-    ok(type == REG_BINARY, "type=%d\n", type);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
+    ok(size == 8, "size=%ld\n", size);
+    ok(type == REG_BINARY, "type=%ld\n", type);
     ok(qw[0] == 0x12345678 &&
-       qw[1] == 0x87654321, "qw={%d,%d}\n", qw[0], qw[1]);
+       qw[1] == 0x87654321, "qw={%ld,%ld}\n", qw[0], qw[1]);
 
     /* Query REG_SZ using RRF_RT_REG_SZ (ok) */
     buf[0] = 0; type = 0xdeadbeef; size = sizeof(buf);
     ret = pRegGetValueA(hkey_main, NULL, "TP1_SZ", RRF_RT_REG_SZ, &type, buf, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
-    ok(size == strlen(sTestpath1)+1, "strlen(sTestpath1)=%d size=%d\n", lstrlenA(sTestpath1), size);
-    ok(type == REG_SZ, "type=%d\n", type);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
+    ok(size == strlen(sTestpath1)+1, "strlen(sTestpath1)=%d size=%ld\n", lstrlenA(sTestpath1), size);
+    ok(type == REG_SZ, "type=%ld\n", type);
     ok(!strcmp(sTestpath1, buf), "sTestpath=\"%s\" buf=\"%s\"\n", sTestpath1, buf);
 
     /* Query REG_SZ using RRF_RT_REG_SZ and no buffer (ok) */
     type = 0xdeadbeef; size = 0;
     ret = pRegGetValueA(hkey_main, NULL, "TP1_SZ", RRF_RT_REG_SZ, &type, NULL, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
     /* v5.2.3790.1830 (2003 SP1) returns sTestpath1 length + 2 here. */
     ok(size == strlen(sTestpath1)+1 || broken(size == strlen(sTestpath1)+2),
-       "strlen(sTestpath1)=%d size=%d\n", lstrlenA(sTestpath1), size);
-    ok(type == REG_SZ, "type=%d\n", type);
+       "strlen(sTestpath1)=%d size=%ld\n", lstrlenA(sTestpath1), size);
+    ok(type == REG_SZ, "type=%ld\n", type);
 
     /* Query REG_SZ using RRF_RT_REG_SZ on a zero-byte value (ok) */
     strcpy(buf, sTestpath1);
     type = 0xdeadbeef;
     size = sizeof(buf);
     ret = pRegGetValueA(hkey_main, NULL, "TP1_ZB_SZ", RRF_RT_REG_SZ, &type, buf, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
     /* v5.2.3790.1830 (2003 SP1) returns sTestpath1 length + 2 here. */
     ok(size == 0 ||
        size == 1, /* win2k3 */
-       "size=%d\n", size);
-    ok(type == REG_SZ, "type=%d\n", type);
+       "size=%ld\n", size);
+    ok(type == REG_SZ, "type=%ld\n", type);
     ok(!strcmp(sTestpath1, buf) ||
        !strcmp(buf, ""),
        "Expected \"%s\" or \"\", got \"%s\"\n", sTestpath1, buf);
@@ -908,73 +908,73 @@ static void test_get_value(void)
     /* Query REG_SZ using RRF_RT_REG_SZ|RRF_NOEXPAND (ok) */
     buf[0] = 0; type = 0xdeadbeef; size = sizeof(buf);
     ret = pRegGetValueA(hkey_main, NULL, "TP1_SZ", RRF_RT_REG_SZ|RRF_NOEXPAND, &type, buf, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
-    ok(size == strlen(sTestpath1)+1, "strlen(sTestpath1)=%d size=%d\n", lstrlenA(sTestpath1), size);
-    ok(type == REG_SZ, "type=%d\n", type);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
+    ok(size == strlen(sTestpath1)+1, "strlen(sTestpath1)=%d size=%ld\n", lstrlenA(sTestpath1), size);
+    ok(type == REG_SZ, "type=%ld\n", type);
     ok(!strcmp(sTestpath1, buf), "sTestpath=\"%s\" buf=\"%s\"\n", sTestpath1, buf);
 
     /* Query REG_EXPAND_SZ using RRF_RT_REG_SZ and no buffer (ok, expands) */
     size = 0;
     ret = pRegGetValueA(hkey_main, NULL, "TP2_EXP_SZ", RRF_RT_REG_SZ, NULL, NULL, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
     ok((size == strlen(expanded2)+1) || /* win2k3 SP1 */
        (size == strlen(expanded2)+2) || /* win2k3 SP2 */
        (size == strlen(sTestpath2)+1),
-        "strlen(expanded2)=%d, strlen(sTestpath2)=%d, size=%d\n", lstrlenA(expanded2), lstrlenA(sTestpath2), size);
+        "strlen(expanded2)=%d, strlen(sTestpath2)=%d, size=%ld\n", lstrlenA(expanded2), lstrlenA(sTestpath2), size);
 
     /* Query REG_EXPAND_SZ using RRF_RT_REG_SZ (ok, expands) */
     buf[0] = 0; type = 0xdeadbeef; size = sizeof(buf);
     ret = pRegGetValueA(hkey_main, NULL, "TP1_EXP_SZ", RRF_RT_REG_SZ, &type, buf, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
     /* At least v5.2.3790.1830 (2003 SP1) returns the unexpanded sTestpath1 length + 1 here. */
     ok(size == strlen(expanded)+1 || broken(size == strlen(sTestpath1)+1),
-        "strlen(expanded)=%d, strlen(sTestpath1)=%d, size=%d\n", lstrlenA(expanded), lstrlenA(sTestpath1), size);
-    ok(type == REG_SZ, "type=%d\n", type);
+        "strlen(expanded)=%d, strlen(sTestpath1)=%d, size=%ld\n", lstrlenA(expanded), lstrlenA(sTestpath1), size);
+    ok(type == REG_SZ, "type=%ld\n", type);
     ok(!strcmp(expanded, buf), "expanded=\"%s\" buf=\"%s\"\n", expanded, buf);
 
     /* Query REG_EXPAND_SZ using RRF_RT_REG_SZ (ok, expands a lot) */
     buf[0] = 0; type = 0xdeadbeef; size = sizeof(buf);
     ret = pRegGetValueA(hkey_main, NULL, "TP2_EXP_SZ", RRF_RT_REG_SZ, &type, buf, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
     /* At least v5.2.3790.1830 (2003 SP1) returns the unexpanded sTestpath2 length + 1 here. */
     ok(size == strlen(expanded2)+1 || broken(size == strlen(sTestpath2)+1),
-        "strlen(expanded2)=%d, strlen(sTestpath1)=%d, size=%d\n", lstrlenA(expanded2), lstrlenA(sTestpath2), size);
-    ok(type == REG_SZ, "type=%d\n", type);
+        "strlen(expanded2)=%d, strlen(sTestpath1)=%d, size=%ld\n", lstrlenA(expanded2), lstrlenA(sTestpath2), size);
+    ok(type == REG_SZ, "type=%ld\n", type);
     ok(!strcmp(expanded2, buf), "expanded2=\"%s\" buf=\"%s\"\n", expanded2, buf);
 
     /* Query REG_EXPAND_SZ using RRF_RT_REG_EXPAND_SZ|RRF_NOEXPAND (ok, doesn't expand) */
     buf[0] = 0; type = 0xdeadbeef; size = sizeof(buf);
     ret = pRegGetValueA(hkey_main, NULL, "TP1_EXP_SZ", RRF_RT_REG_EXPAND_SZ|RRF_NOEXPAND, &type, buf, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
-    ok(size == strlen(sTestpath1)+1, "strlen(sTestpath1)=%d size=%d\n", lstrlenA(sTestpath1), size);
-    ok(type == REG_EXPAND_SZ, "type=%d\n", type);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
+    ok(size == strlen(sTestpath1)+1, "strlen(sTestpath1)=%d size=%ld\n", lstrlenA(sTestpath1), size);
+    ok(type == REG_EXPAND_SZ, "type=%ld\n", type);
     ok(!strcmp(sTestpath1, buf), "sTestpath=\"%s\" buf=\"%s\"\n", sTestpath1, buf);
 
     /* Query REG_EXPAND_SZ using RRF_RT_REG_EXPAND_SZ|RRF_NOEXPAND and no buffer (ok, doesn't expand) */
     size = 0xbadbeef;
     ret = pRegGetValueA(hkey_main, NULL, "TP1_EXP_SZ", RRF_RT_REG_EXPAND_SZ|RRF_NOEXPAND, NULL, NULL, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
     /* v5.2.3790.1830 (2003 SP1) returns sTestpath1 length + 2 here. */
     ok(size == strlen(sTestpath1)+1 || broken(size == strlen(sTestpath1)+2),
-       "strlen(sTestpath1)=%d size=%d\n", lstrlenA(sTestpath1), size);
+       "strlen(sTestpath1)=%d size=%ld\n", lstrlenA(sTestpath1), size);
 
     /* Query REG_EXPAND_SZ using RRF_RT_REG_SZ|RRF_NOEXPAND (type mismatch) */
     ret = pRegGetValueA(hkey_main, NULL, "TP1_EXP_SZ", RRF_RT_REG_SZ|RRF_NOEXPAND, NULL, NULL, NULL);
-    ok(ret == ERROR_UNSUPPORTED_TYPE, "ret=%d\n", ret);
+    ok(ret == ERROR_UNSUPPORTED_TYPE, "ret=%ld\n", ret);
 
     /* Query REG_EXPAND_SZ using RRF_RT_REG_EXPAND_SZ (not allowed without RRF_NOEXPAND) */
     ret = pRegGetValueA(hkey_main, NULL, "TP1_EXP_SZ", RRF_RT_REG_EXPAND_SZ, NULL, NULL, NULL);
     /* before win8: ERROR_INVALID_PARAMETER, win8: ERROR_UNSUPPORTED_TYPE */
-    ok(ret == ERROR_INVALID_PARAMETER || ret == ERROR_UNSUPPORTED_TYPE, "ret=%d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER || ret == ERROR_UNSUPPORTED_TYPE, "ret=%ld\n", ret);
 
     /* Query REG_EXPAND_SZ using RRF_RT_ANY */
     buf[0] = 0; type = 0xdeadbeef; size = sizeof(buf);
     ret = pRegGetValueA(hkey_main, NULL, "TP1_EXP_SZ", RRF_RT_ANY, &type, buf, &size);
-    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret=%ld\n", ret);
     /* At least v5.2.3790.1830 (2003 SP1) returns the unexpanded sTestpath1 length + 1 here. */
     ok(size == strlen(expanded)+1 || broken(size == strlen(sTestpath1)+1),
-        "strlen(expanded)=%d, strlen(sTestpath1)=%d, size=%d\n", lstrlenA(expanded), lstrlenA(sTestpath1), size);
-    ok(type == REG_SZ, "type=%d\n", type);
+        "strlen(expanded)=%d, strlen(sTestpath1)=%d, size=%ld\n", lstrlenA(expanded), lstrlenA(sTestpath1), size);
+    ok(type == REG_SZ, "type=%ld\n", type);
     ok(!strcmp(expanded, buf), "expanded=\"%s\" buf=\"%s\"\n", expanded, buf);
 } 
 
@@ -994,20 +994,20 @@ static void test_reg_open_key(void)
 
     /* successful open */
     ret = RegOpenKeyA(HKEY_CURRENT_USER, "Software\\Wine\\Test", &hkResult);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     ok(hkResult != NULL, "expected hkResult != NULL\n");
     hkPreserve = hkResult;
 
     /* open same key twice */
     ret = RegOpenKeyA(HKEY_CURRENT_USER, "Software\\Wine\\Test", &hkResult);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     ok(hkResult != hkPreserve, "expected hkResult != hkPreserve\n");
     ok(hkResult != NULL, "hkResult != NULL\n");
     RegCloseKey(hkResult);
 
     /* trailing slashes */
     ret = RegOpenKeyA(HKEY_CURRENT_USER, "Software\\Wine\\Test\\\\", &hkResult);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     RegCloseKey(hkResult);
 
     /* open nonexistent key
@@ -1015,13 +1015,13 @@ static void test_reg_open_key(void)
     */
     hkResult = hkPreserve;
     ret = RegOpenKeyA(HKEY_CURRENT_USER, "Software\\Wine\\Nonexistent", &hkResult);
-    ok(ret == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %d\n", ret);
+    ok(ret == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %ld\n", ret);
     ok(hkResult == NULL, "expected hkResult == NULL\n");
 
     /* open the same nonexistent key again to make sure the key wasn't created */
     hkResult = hkPreserve;
     ret = RegOpenKeyA(HKEY_CURRENT_USER, "Software\\Wine\\Nonexistent", &hkResult);
-    ok(ret == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %d\n", ret);
+    ok(ret == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %ld\n", ret);
     ok(hkResult == NULL, "expected hkResult == NULL\n");
 
     /* send in NULL lpSubKey
@@ -1029,13 +1029,13 @@ static void test_reg_open_key(void)
     */
     hkResult = hkPreserve;
     ret = RegOpenKeyA(HKEY_CURRENT_USER, NULL, &hkResult);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     ok(hkResult == HKEY_CURRENT_USER, "expected hkResult == HKEY_CURRENT_USER\n");
 
     /* send empty-string in lpSubKey */
     hkResult = hkPreserve;
     ret = RegOpenKeyA(HKEY_CURRENT_USER, "", &hkResult);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     ok(hkResult == HKEY_CURRENT_USER, "expected hkResult == HKEY_CURRENT_USER\n");
 
     /* send in NULL lpSubKey and NULL hKey
@@ -1043,7 +1043,7 @@ static void test_reg_open_key(void)
     */
     hkResult = hkPreserve;
     ret = RegOpenKeyA(NULL, NULL, &hkResult);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     ok(hkResult == NULL, "expected hkResult == NULL\n");
 
     /* only send NULL hKey
@@ -1052,73 +1052,73 @@ static void test_reg_open_key(void)
     hkResult = hkPreserve;
     ret = RegOpenKeyA(NULL, "Software\\Wine\\Test", &hkResult);
     ok(ret == ERROR_INVALID_HANDLE || ret == ERROR_BADKEY, /* Windows 95 returns BADKEY */
-       "expected ERROR_INVALID_HANDLE or ERROR_BADKEY, got %d\n", ret);
+       "expected ERROR_INVALID_HANDLE or ERROR_BADKEY, got %ld\n", ret);
     ok(hkResult == hkPreserve, "expected hkResult == hkPreserve\n");
 
     /* send in NULL hkResult */
     ret = RegOpenKeyA(HKEY_CURRENT_USER, "Software\\Wine\\Test", NULL);
-    ok(ret == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n", ret);
 
     ret = RegOpenKeyA(HKEY_CURRENT_USER, NULL, NULL);
-    ok(ret == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n", ret);
 
     ret = RegOpenKeyA(NULL, NULL, NULL);
-    ok(ret == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n", ret);
 
     /*  beginning backslash character */
     ret = RegOpenKeyA(HKEY_CURRENT_USER, "\\Software\\Wine\\Test", &hkResult);
     ok(ret == ERROR_BAD_PATHNAME || /* NT/2k/XP */
        broken(ret == ERROR_SUCCESS),  /* wow64 */
-       "expected ERROR_BAD_PATHNAME or ERROR_FILE_NOT_FOUND, got %d\n", ret);
+       "expected ERROR_BAD_PATHNAME or ERROR_FILE_NOT_FOUND, got %ld\n", ret);
     if (!ret) RegCloseKey(hkResult);
 
     hkResult = NULL;
     ret = RegOpenKeyExA(HKEY_CLASSES_ROOT, "\\clsid", 0, KEY_QUERY_VALUE, &hkResult);
     ok(ret == ERROR_SUCCESS || /* 2k/XP */
        ret == ERROR_BAD_PATHNAME, /* NT */
-       "expected ERROR_SUCCESS, ERROR_BAD_PATHNAME or ERROR_FILE_NOT_FOUND, got %d\n", ret);
+       "expected ERROR_SUCCESS, ERROR_BAD_PATHNAME or ERROR_FILE_NOT_FOUND, got %ld\n", ret);
     RegCloseKey(hkResult);
 
     /* NULL or empty subkey of special root */
     hkResult = NULL;
     ret = RegOpenKeyExA(HKEY_CLASSES_ROOT, NULL, 0, KEY_QUERY_VALUE, &hkResult);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     ok(hkResult == HKEY_CLASSES_ROOT, "expected hkResult == HKEY_CLASSES_ROOT\n");
 
     hkResult = NULL;
     ret = RegOpenKeyExA(HKEY_CLASSES_ROOT, "", 0, KEY_QUERY_VALUE, &hkResult);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     ok(hkResult == HKEY_CLASSES_ROOT, "expected hkResult == HKEY_CLASSES_ROOT\n");
 
     hkResult = NULL;
     ret = RegOpenKeyExA(HKEY_CLASSES_ROOT, "\\", 0, KEY_QUERY_VALUE, &hkResult);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     ok(hkResult != HKEY_CLASSES_ROOT, "expected hkResult to be a new key\n");
     ok(!RegCloseKey(hkResult), "got invalid hkey\n");
 
     /* empty subkey of existing handle */
     hkResult = hkPreserve;
     ret = RegOpenKeyExA(hkPreserve, "", 0, KEY_QUERY_VALUE, &hkResult);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     ok(hkResult != hkPreserve, "expected hkResult != hkPreserve\n");
     ok(!RegCloseKey(hkResult), "got invalid hkey\n");
 
     /* NULL subkey of existing handle */
     hkResult = hkPreserve;
     ret = RegOpenKeyExA(hkPreserve, NULL, 0, KEY_QUERY_VALUE, &hkResult);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     ok(hkResult != hkPreserve, "expected hkResult != hkPreserve\n");
     ok(!RegCloseKey(hkResult), "got invalid hkey\n");
 
     /* empty subkey of NULL */
     hkResult = hkPreserve;
     ret = RegOpenKeyExW(NULL, L"", 0, KEY_QUERY_VALUE, &hkResult);
-    ok(ret == ERROR_INVALID_HANDLE, "expected ERROR_INVALID_HANDLE, got %d\n", ret);
+    ok(ret == ERROR_INVALID_HANDLE, "expected ERROR_INVALID_HANDLE, got %ld\n", ret);
     ok(hkResult == NULL || broken(hkResult == hkPreserve /* Windows XP */), "expected hkResult == NULL\n");
 
     hkResult = hkPreserve;
     ret = RegOpenKeyExA(NULL, "", 0, KEY_QUERY_VALUE, &hkResult);
-    ok(ret == ERROR_INVALID_HANDLE, "expected ERROR_INVALID_HANDLE, got %d\n", ret);
+    ok(ret == ERROR_INVALID_HANDLE, "expected ERROR_INVALID_HANDLE, got %ld\n", ret);
     ok(hkResult == hkPreserve, "expected hkResult == hkPreserve\n");
 
     RegCloseKey(hkPreserve);
@@ -1127,13 +1127,13 @@ static void test_reg_open_key(void)
     hkResult = NULL;
     ret = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software", 0, KEY_READ|KEY_WOW64_32KEY, &hkResult);
     ok((ret == ERROR_SUCCESS && hkResult != NULL) || broken(ret == ERROR_ACCESS_DENIED /* NT4, win2k */),
-        "RegOpenKeyEx with KEY_WOW64_32KEY failed (err=%u)\n", ret);
+        "RegOpenKeyEx with KEY_WOW64_32KEY failed (err=%lu)\n", ret);
     RegCloseKey(hkResult);
 
     hkResult = NULL;
     ret = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software", 0, KEY_READ|KEY_WOW64_64KEY, &hkResult);
     ok((ret == ERROR_SUCCESS && hkResult != NULL) || broken(ret == ERROR_ACCESS_DENIED /* NT4, win2k */),
-        "RegOpenKeyEx with KEY_WOW64_64KEY failed (err=%u)\n", ret);
+        "RegOpenKeyEx with KEY_WOW64_64KEY failed (err=%lu)\n", ret);
     RegCloseKey(hkResult);
 
     /* check special HKEYs on 64bit
@@ -1143,28 +1143,28 @@ static void test_reg_open_key(void)
     {
         /* HKEY_CURRENT_USER */
         ret = RegOpenKeyA(UlongToHandle(HandleToUlong(HKEY_CURRENT_USER)), "Software", &hkResult);
-        ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+        ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
         ok(hkResult != NULL, "expected hkResult != NULL\n");
         RegCloseKey(hkResult);
 
         ret = RegOpenKeyA((HKEY)(HandleToUlong(HKEY_CURRENT_USER) | (ULONG64)1 << 32), "Software", &hkResult);
-        ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+        ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
         ok(hkResult != NULL, "expected hkResult != NULL\n");
         RegCloseKey(hkResult);
 
         ret = RegOpenKeyA((HKEY)(HandleToUlong(HKEY_CURRENT_USER) | (ULONG64)0xdeadbeef << 32), "Software", &hkResult);
-        ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+        ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
         ok(hkResult != NULL, "expected hkResult != NULL\n");
         RegCloseKey(hkResult);
 
         ret = RegOpenKeyA((HKEY)(HandleToUlong(HKEY_CURRENT_USER) | (ULONG64)0xffffffff << 32), "Software", &hkResult);
-        ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+        ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
         ok(hkResult != NULL, "expected hkResult != NULL\n");
         RegCloseKey(hkResult);
 
         /* HKEY_LOCAL_MACHINE */
         ret = RegOpenKeyA((HKEY)(HandleToUlong(HKEY_LOCAL_MACHINE) | (ULONG64)0xdeadbeef << 32), "Software", &hkResult);
-        ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+        ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
         ok(hkResult != NULL, "expected hkResult != NULL\n");
         RegCloseKey(hkResult);
     }
@@ -1183,24 +1183,24 @@ static void test_reg_open_key(void)
                           KEY_WOW64_32KEY | KEY_ALL_ACCESS, NULL, &hkRoot32, NULL);
     if (limited_user)
         ok(ret == ERROR_ACCESS_DENIED && hkRoot32 == NULL,
-           "RegCreateKeyEx with KEY_WOW64_32KEY failed (err=%u)\n", ret);
+           "RegCreateKeyEx with KEY_WOW64_32KEY failed (err=%lu)\n", ret);
     else
         ok(ret == ERROR_SUCCESS && hkRoot32 != NULL,
-           "RegCreateKeyEx with KEY_WOW64_32KEY failed (err=%u)\n", ret);
+           "RegCreateKeyEx with KEY_WOW64_32KEY failed (err=%lu)\n", ret);
 
     ret = RegCreateKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine", 0, NULL, 0,
                           KEY_WOW64_64KEY | KEY_ALL_ACCESS, NULL, &hkRoot64, NULL);
     if (limited_user)
         ok(ret == ERROR_ACCESS_DENIED && hkRoot64 == NULL,
-           "RegCreateKeyEx with KEY_WOW64_64KEY failed (err=%u)\n", ret);
+           "RegCreateKeyEx with KEY_WOW64_64KEY failed (err=%lu)\n", ret);
     else
         ok(ret == ERROR_SUCCESS && hkRoot64 != NULL,
-           "RegCreateKeyEx with KEY_WOW64_64KEY failed (err=%u)\n", ret);
+           "RegCreateKeyEx with KEY_WOW64_64KEY failed (err=%lu)\n", ret);
 
     bRet = AllocateAndInitializeSid(&sid_authority, 1, SECURITY_WORLD_RID,
                                     0, 0, 0, 0, 0, 0, 0, &world_sid);
     ok(bRet == TRUE,
-       "Expected AllocateAndInitializeSid to return TRUE, got %d, last error %u\n", bRet, GetLastError());
+       "Expected AllocateAndInitializeSid to return TRUE, got %d, last error %lu\n", bRet, GetLastError());
 
     access.grfAccessPermissions = GENERIC_ALL | STANDARD_RIGHTS_ALL;
     access.grfAccessMode = SET_ACCESS;
@@ -1213,16 +1213,16 @@ static void test_reg_open_key(void)
 
     ret = SetEntriesInAclA(1, &access, NULL, &key_acl);
     ok(ret == ERROR_SUCCESS,
-       "Expected SetEntriesInAclA to return ERROR_SUCCESS, got %u, last error %u\n", ret, GetLastError());
+       "Expected SetEntriesInAclA to return ERROR_SUCCESS, got %lu, last error %lu\n", ret, GetLastError());
 
     sd = HeapAlloc(GetProcessHeap(), 0, SECURITY_DESCRIPTOR_MIN_LENGTH);
     bRet = InitializeSecurityDescriptor(sd, SECURITY_DESCRIPTOR_REVISION);
     ok(bRet == TRUE,
-       "Expected InitializeSecurityDescriptor to return TRUE, got %d, last error %u\n", bRet, GetLastError());
+       "Expected InitializeSecurityDescriptor to return TRUE, got %d, last error %lu\n", bRet, GetLastError());
 
     bRet = SetSecurityDescriptorDacl(sd, TRUE, key_acl, FALSE);
     ok(bRet == TRUE,
-       "Expected SetSecurityDescriptorDacl to return TRUE, got %d, last error %u\n", bRet, GetLastError());
+       "Expected SetSecurityDescriptorDacl to return TRUE, got %d, last error %lu\n", bRet, GetLastError());
 
     if (limited_user)
     {
@@ -1234,22 +1234,22 @@ static void test_reg_open_key(void)
 
         error = RegSetKeySecurity(hkRoot64, DACL_SECURITY_INFORMATION, sd);
         ok(error == ERROR_SUCCESS,
-           "Expected RegSetKeySecurity to return success, got error %u\n", error);
+           "Expected RegSetKeySecurity to return success, got error %lu\n", error);
 
         error = RegSetKeySecurity(hkRoot32, DACL_SECURITY_INFORMATION, sd);
         ok(error == ERROR_SUCCESS,
-           "Expected RegSetKeySecurity to return success, got error %u\n", error);
+           "Expected RegSetKeySecurity to return success, got error %lu\n", error);
 
         hkResult = NULL;
         ret = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine", 0, KEY_WOW64_64KEY | KEY_READ, &hkResult);
         ok(ret == ERROR_SUCCESS && hkResult != NULL,
-           "RegOpenKeyEx with KEY_WOW64_64KEY failed (err=%u)\n", ret);
+           "RegOpenKeyEx with KEY_WOW64_64KEY failed (err=%lu)\n", ret);
         RegCloseKey(hkResult);
 
         hkResult = NULL;
         ret = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine", 0, KEY_WOW64_32KEY | KEY_READ, &hkResult);
         ok(ret == ERROR_SUCCESS && hkResult != NULL,
-           "RegOpenKeyEx with KEY_WOW64_32KEY failed (err=%u)\n", ret);
+           "RegOpenKeyEx with KEY_WOW64_32KEY failed (err=%lu)\n", ret);
         RegCloseKey(hkResult);
     }
 
@@ -1277,11 +1277,11 @@ static void test_reg_create_key(void)
     SECURITY_DESCRIPTOR *sd;
 
     ret = RegCreateKeyExA(hkey_main, "Subkey1", 0, NULL, 0, KEY_NOTIFY, NULL, &hkey1, NULL);
-    ok(!ret, "RegCreateKeyExA failed with error %d\n", ret);
+    ok(!ret, "RegCreateKeyExA failed with error %ld\n", ret);
     /* should succeed: all versions of Windows ignore the access rights
      * to the parent handle */
     ret = RegCreateKeyExA(hkey1, "Subkey2", 0, NULL, 0, KEY_SET_VALUE, NULL, &hkey2, NULL);
-    ok(!ret, "RegCreateKeyExA failed with error %d\n", ret);
+    ok(!ret, "RegCreateKeyExA failed with error %ld\n", ret);
 
     /* clean up */
     RegDeleteKeyA(hkey2, "");
@@ -1291,16 +1291,16 @@ static void test_reg_create_key(void)
 
     /* test creation of volatile keys */
     ret = RegCreateKeyExA(hkey_main, "Volatile", 0, NULL, REG_OPTION_VOLATILE, KEY_ALL_ACCESS, NULL, &hkey1, NULL);
-    ok(!ret, "RegCreateKeyExA failed with error %d\n", ret);
+    ok(!ret, "RegCreateKeyExA failed with error %ld\n", ret);
     ret = RegCreateKeyExA(hkey1, "Subkey2", 0, NULL, 0, KEY_ALL_ACCESS, NULL, &hkey2, NULL);
-    ok(ret == ERROR_CHILD_MUST_BE_VOLATILE, "RegCreateKeyExA failed with error %d\n", ret);
+    ok(ret == ERROR_CHILD_MUST_BE_VOLATILE, "RegCreateKeyExA failed with error %ld\n", ret);
     if (!ret) RegCloseKey( hkey2 );
     ret = RegCreateKeyExA(hkey1, "Subkey2", 0, NULL, REG_OPTION_VOLATILE, KEY_ALL_ACCESS, NULL, &hkey2, NULL);
-    ok(!ret, "RegCreateKeyExA failed with error %d\n", ret);
+    ok(!ret, "RegCreateKeyExA failed with error %ld\n", ret);
     RegCloseKey(hkey2);
     /* should succeed if the key already exists */
     ret = RegCreateKeyExA(hkey1, "Subkey2", 0, NULL, 0, KEY_ALL_ACCESS, NULL, &hkey2, NULL);
-    ok(!ret, "RegCreateKeyExA failed with error %d\n", ret);
+    ok(!ret, "RegCreateKeyExA failed with error %ld\n", ret);
 
     /* clean up */
     RegDeleteKeyA(hkey2, "");
@@ -1311,16 +1311,16 @@ static void test_reg_create_key(void)
     /*  beginning backslash character */
     ret = RegCreateKeyExA(hkey_main, "\\Subkey3", 0, NULL, 0, KEY_NOTIFY, NULL, &hkey1, NULL);
     if (!(GetVersion() & 0x80000000))
-        ok(ret == ERROR_BAD_PATHNAME, "expected ERROR_BAD_PATHNAME, got %d\n", ret);
+        ok(ret == ERROR_BAD_PATHNAME, "expected ERROR_BAD_PATHNAME, got %ld\n", ret);
     else {
-        ok(!ret, "RegCreateKeyExA failed with error %d\n", ret);
+        ok(!ret, "RegCreateKeyExA failed with error %ld\n", ret);
         RegDeleteKeyA(hkey1, "");
         RegCloseKey(hkey1);
     }
 
     /* trailing backslash characters */
     ret = RegCreateKeyExA(hkey_main, "Subkey4\\\\", 0, NULL, 0, KEY_NOTIFY, NULL, &hkey1, NULL);
-    ok(ret == ERROR_SUCCESS, "RegCreateKeyExA failed with error %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "RegCreateKeyExA failed with error %ld\n", ret);
     RegDeleteKeyA(hkey1, "");
     RegCloseKey(hkey1);
 
@@ -1328,13 +1328,13 @@ static void test_reg_create_key(void)
     hkey1 = NULL;
     ret = RegCreateKeyExA(HKEY_LOCAL_MACHINE, "Software", 0, NULL, 0, KEY_READ|KEY_WOW64_32KEY, NULL, &hkey1, NULL);
     ok((ret == ERROR_SUCCESS && hkey1 != NULL) || broken(ret == ERROR_ACCESS_DENIED /* NT4, win2k */),
-        "RegOpenKeyEx with KEY_WOW64_32KEY failed (err=%u)\n", ret);
+        "RegOpenKeyEx with KEY_WOW64_32KEY failed (err=%lu)\n", ret);
     RegCloseKey(hkey1);
 
     hkey1 = NULL;
     ret = RegCreateKeyExA(HKEY_LOCAL_MACHINE, "Software", 0, NULL, 0, KEY_READ|KEY_WOW64_64KEY, NULL, &hkey1, NULL);
     ok((ret == ERROR_SUCCESS && hkey1 != NULL) || broken(ret == ERROR_ACCESS_DENIED /* NT4, win2k */),
-        "RegOpenKeyEx with KEY_WOW64_64KEY failed (err=%u)\n", ret);
+        "RegOpenKeyEx with KEY_WOW64_64KEY failed (err=%lu)\n", ret);
     RegCloseKey(hkey1);
 
     /* Try using WOW64 flags when opening a key with a DACL set to verify that
@@ -1351,24 +1351,24 @@ static void test_reg_create_key(void)
                           KEY_WOW64_32KEY | KEY_ALL_ACCESS, NULL, &hkRoot32, NULL);
     if (limited_user)
         ok(ret == ERROR_ACCESS_DENIED && hkRoot32 == NULL,
-           "RegCreateKeyEx with KEY_WOW64_32KEY failed (err=%d)\n", ret);
+           "RegCreateKeyEx with KEY_WOW64_32KEY failed (err=%ld)\n", ret);
     else
         ok(ret == ERROR_SUCCESS && hkRoot32 != NULL,
-           "RegCreateKeyEx with KEY_WOW64_32KEY failed (err=%d)\n", ret);
+           "RegCreateKeyEx with KEY_WOW64_32KEY failed (err=%ld)\n", ret);
 
     ret = RegCreateKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine", 0, NULL, 0,
                           KEY_WOW64_64KEY | KEY_ALL_ACCESS, NULL, &hkRoot64, NULL);
     if (limited_user)
         ok(ret == ERROR_ACCESS_DENIED && hkRoot64 == NULL,
-           "RegCreateKeyEx with KEY_WOW64_64KEY failed (err=%d)\n", ret);
+           "RegCreateKeyEx with KEY_WOW64_64KEY failed (err=%ld)\n", ret);
     else
         ok(ret == ERROR_SUCCESS && hkRoot64 != NULL,
-           "RegCreateKeyEx with KEY_WOW64_64KEY failed (err=%d)\n", ret);
+           "RegCreateKeyEx with KEY_WOW64_64KEY failed (err=%ld)\n", ret);
 
     bRet = AllocateAndInitializeSid(&sid_authority, 1, SECURITY_WORLD_RID,
                                     0, 0, 0, 0, 0, 0, 0, &world_sid);
     ok(bRet == TRUE,
-       "Expected AllocateAndInitializeSid to return TRUE, got %d, last error %u\n", bRet, GetLastError());
+       "Expected AllocateAndInitializeSid to return TRUE, got %d, last error %lu\n", bRet, GetLastError());
 
     access.grfAccessPermissions = GENERIC_ALL | STANDARD_RIGHTS_ALL;
     access.grfAccessMode = SET_ACCESS;
@@ -1381,16 +1381,16 @@ static void test_reg_create_key(void)
 
     dwRet = SetEntriesInAclA(1, &access, NULL, &key_acl);
     ok(dwRet == ERROR_SUCCESS,
-       "Expected SetEntriesInAclA to return ERROR_SUCCESS, got %u, last error %u\n", dwRet, GetLastError());
+       "Expected SetEntriesInAclA to return ERROR_SUCCESS, got %lu, last error %lu\n", dwRet, GetLastError());
 
     sd = HeapAlloc(GetProcessHeap(), 0, SECURITY_DESCRIPTOR_MIN_LENGTH);
     bRet = InitializeSecurityDescriptor(sd, SECURITY_DESCRIPTOR_REVISION);
     ok(bRet == TRUE,
-       "Expected InitializeSecurityDescriptor to return TRUE, got %d, last error %u\n", bRet, GetLastError());
+       "Expected InitializeSecurityDescriptor to return TRUE, got %d, last error %lu\n", bRet, GetLastError());
 
     bRet = SetSecurityDescriptorDacl(sd, TRUE, key_acl, FALSE);
     ok(bRet == TRUE,
-       "Expected SetSecurityDescriptorDacl to return TRUE, got %d, last error %u\n", bRet, GetLastError());
+       "Expected SetSecurityDescriptorDacl to return TRUE, got %d, last error %lu\n", bRet, GetLastError());
 
     if (limited_user)
     {
@@ -1400,24 +1400,24 @@ static void test_reg_create_key(void)
     {
         ret = RegSetKeySecurity(hkRoot64, DACL_SECURITY_INFORMATION, sd);
         ok(ret == ERROR_SUCCESS,
-           "Expected RegSetKeySecurity to return success, got error %u\n", ret);
+           "Expected RegSetKeySecurity to return success, got error %lu\n", ret);
 
         ret = RegSetKeySecurity(hkRoot32, DACL_SECURITY_INFORMATION, sd);
         ok(ret == ERROR_SUCCESS,
-           "Expected RegSetKeySecurity to return success, got error %u\n", ret);
+           "Expected RegSetKeySecurity to return success, got error %lu\n", ret);
 
         hkey1 = NULL;
         ret = RegCreateKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine", 0, NULL, 0,
                               KEY_WOW64_64KEY | KEY_READ, NULL, &hkey1, NULL);
         ok(ret == ERROR_SUCCESS && hkey1 != NULL,
-           "RegOpenKeyEx with KEY_WOW64_64KEY failed (err=%u)\n", ret);
+           "RegOpenKeyEx with KEY_WOW64_64KEY failed (err=%lu)\n", ret);
         RegCloseKey(hkey1);
 
         hkey1 = NULL;
         ret = RegCreateKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine", 0, NULL, 0,
                               KEY_WOW64_32KEY | KEY_READ, NULL, &hkey1, NULL);
         ok(ret == ERROR_SUCCESS && hkey1 != NULL,
-           "RegOpenKeyEx with KEY_WOW64_32KEY failed (err=%u)\n", ret);
+           "RegOpenKeyEx with KEY_WOW64_32KEY failed (err=%lu)\n", ret);
         RegCloseKey(hkey1);
     }
 
@@ -1439,19 +1439,19 @@ static void test_reg_close_key(void)
      * hkHandle remains changed after call to RegCloseKey
      */
     ret = RegOpenKeyA(HKEY_CURRENT_USER, "Software\\Wine\\Test", &hkHandle);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegCloseKey(hkHandle);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     /* try to close the key twice */
     ret = RegCloseKey(hkHandle); /* Windows 95 doesn't mind. */
     ok(ret == ERROR_INVALID_HANDLE || ret == ERROR_SUCCESS,
-       "expected ERROR_INVALID_HANDLE or ERROR_SUCCESS, got %d\n", ret);
+       "expected ERROR_INVALID_HANDLE or ERROR_SUCCESS, got %ld\n", ret);
     
     /* try to close a NULL handle */
     ret = RegCloseKey(NULL);
     ok(ret == ERROR_INVALID_HANDLE || ret == ERROR_BADKEY, /* Windows 95 returns BADKEY */
-       "expected ERROR_INVALID_HANDLE or ERROR_BADKEY, got %d\n", ret);
+       "expected ERROR_INVALID_HANDLE or ERROR_BADKEY, got %ld\n", ret);
 
     /* Check to see if we didn't potentially close our main handle, which could happen on win98 as
      * win98 doesn't give a new handle when the same key is opened.
@@ -1485,15 +1485,15 @@ static void test_reg_delete_key(void)
         ok(ret == ERROR_INVALID_PARAMETER ||
            ret == ERROR_ACCESS_DENIED ||
            ret == ERROR_BADKEY, /* Win95 */
-           "ret=%d\n", ret);
+           "ret=%ld\n", ret);
 
     ret = RegCreateKeyA(hkey_main, "deleteme", &key);
-    ok(ret == ERROR_SUCCESS, "Could not create key, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Could not create key, got %ld\n", ret);
     ret = RegDeleteKeyA(key, "");
-    ok(ret == ERROR_SUCCESS, "RegDeleteKeyA failed, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "RegDeleteKeyA failed, got %ld\n", ret);
     RegCloseKey(key);
     ret = RegOpenKeyA(hkey_main, "deleteme", &key);
-    ok(ret == ERROR_FILE_NOT_FOUND, "Key was not deleted, got %d\n", ret);
+    ok(ret == ERROR_FILE_NOT_FOUND, "Key was not deleted, got %ld\n", ret);
     RegCloseKey(key);
 }
 
@@ -1543,7 +1543,7 @@ static void test_reg_save_key(void)
     }
 
     ret = RegSaveKeyA(hkey_main, "saved_key", NULL);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     set_privileges(SE_BACKUP_NAME, FALSE);
 }
@@ -1561,12 +1561,12 @@ static void test_reg_load_key(void)
     }
 
     ret = RegLoadKeyA(HKEY_LOCAL_MACHINE, "Test", "saved_key");
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     set_privileges(SE_RESTORE_NAME, FALSE);
 
     ret = RegOpenKeyA(HKEY_LOCAL_MACHINE, "Test", &hkHandle);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     RegCloseKey(hkHandle);
 }
@@ -1587,18 +1587,18 @@ static void test_reg_unload_key(void)
     }
 
     ret = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Test", 0, KEY_READ, &key);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     /* try to unload though the key handle is live */
     pRtlInitUnicodeString(&key_name, L"\\REGISTRY\\Machine\\Test");
     InitializeObjectAttributes(&attr, &key_name, OBJ_CASE_INSENSITIVE, NULL, NULL);
     status = pNtUnloadKey(&attr);
-    ok(status == STATUS_CANNOT_DELETE, "expected STATUS_CANNOT_DELETE, got %08x\n", status);
+    ok(status == STATUS_CANNOT_DELETE, "expected STATUS_CANNOT_DELETE, got %08lx\n", status);
 
     RegCloseKey(key);
 
     ret = RegUnLoadKeyA(HKEY_LOCAL_MACHINE, "Test");
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     set_privileges(SE_RESTORE_NAME, FALSE);
 
@@ -1621,7 +1621,7 @@ static void test_regconnectregistry( void)
 
     SetLastError(0xdeadbeef);
     ret = GetComputerNameA(compName, &len);
-    ok( ret, "GetComputerName failed err = %d\n", GetLastError());
+    ok( ret, "GetComputerName failed err = %ld\n", GetLastError());
     if( !ret) return;
 
     lstrcpyA(netwName, "\\\\");
@@ -1631,14 +1631,14 @@ static void test_regconnectregistry( void)
     ok( !retl ||
         retl == ERROR_DLL_INIT_FAILED ||
         retl == ERROR_BAD_NETPATH, /* some win2k */
-        "RegConnectRegistryA failed err = %d\n", retl);
+        "RegConnectRegistryA failed err = %ld\n", retl);
     if( !retl) RegCloseKey( hkey);
 
     retl = RegConnectRegistryA( netwName, HKEY_LOCAL_MACHINE, &hkey);
     ok( !retl ||
         retl == ERROR_DLL_INIT_FAILED ||
         retl == ERROR_BAD_NETPATH, /* some win2k */
-        "RegConnectRegistryA failed err = %d\n", retl);
+        "RegConnectRegistryA failed err = %ld\n", retl);
     if( !retl) RegCloseKey( hkey);
 
     SetLastError(0xdeadbeef);
@@ -1649,12 +1649,12 @@ static void test_regconnectregistry( void)
         return;
     }
 
-    ok( schnd != NULL, "OpenSCManagerA failed err = %d\n", GetLastError());
+    ok( schnd != NULL, "OpenSCManagerA failed err = %ld\n", GetLastError());
     CloseServiceHandle( schnd);
 
     SetLastError(0xdeadbeef);
     schnd = OpenSCManagerA( netwName, NULL, GENERIC_READ); 
-    ok( schnd != NULL, "OpenSCManagerA failed err = %d\n", GetLastError());
+    ok( schnd != NULL, "OpenSCManagerA failed err = %ld\n", GetLastError());
     CloseServiceHandle( schnd);
 
 }
@@ -1667,10 +1667,10 @@ static void test_reg_query_value(void)
     LONG size, ret;
 
     ret = RegCreateKeyA(hkey_main, "subkey", &subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = RegSetValueA(subkey, NULL, REG_SZ, "data", 4);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     /* try an invalid hkey */
     SetLastError(0xdeadbeef);
@@ -1679,58 +1679,58 @@ static void test_reg_query_value(void)
     ok(ret == ERROR_INVALID_HANDLE ||
        ret == ERROR_BADKEY || /* Windows 98 returns BADKEY */
        ret == ERROR_ACCESS_DENIED, /* non-admin winxp */
-       "Expected ERROR_INVALID_HANDLE or ERROR_BADKEY, got %d\n", ret);
-    ok(GetLastError() == 0xdeadbeef, "Expected 0xdeadbeef, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_HANDLE or ERROR_BADKEY, got %ld\n", ret);
+    ok(GetLastError() == 0xdeadbeef, "Expected 0xdeadbeef, got %ld\n", GetLastError());
 
     /* try a NULL hkey */
     SetLastError(0xdeadbeef);
     size = MAX_PATH;
     ret = RegQueryValueA(NULL, "subkey", val, &size);
     ok(ret == ERROR_INVALID_HANDLE || ret == ERROR_BADKEY, /* Windows 98 returns BADKEY */
-       "Expected ERROR_INVALID_HANDLE or ERROR_BADKEY, got %d\n", ret);
-    ok(GetLastError() == 0xdeadbeef, "Expected 0xdeadbeef, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_HANDLE or ERROR_BADKEY, got %ld\n", ret);
+    ok(GetLastError() == 0xdeadbeef, "Expected 0xdeadbeef, got %ld\n", GetLastError());
 
     /* try a NULL value */
     size = MAX_PATH;
     ret = RegQueryValueA(hkey_main, "subkey", NULL, &size);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
-    ok(size == 5, "Expected 5, got %d\n", size);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
+    ok(size == 5, "Expected 5, got %ld\n", size);
 
     /* try a NULL size */
     SetLastError(0xdeadbeef);
     val[0] = '\0';
     ret = RegQueryValueA(hkey_main, "subkey", val, NULL);
-    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", ret);
-    ok(GetLastError() == 0xdeadbeef, "Expected 0xdeadbeef, got %d\n", GetLastError());
+    ok(ret == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", ret);
+    ok(GetLastError() == 0xdeadbeef, "Expected 0xdeadbeef, got %ld\n", GetLastError());
     ok(!val[0], "Expected val to be untouched, got %s\n", val);
 
     /* try a NULL value and size */
     ret = RegQueryValueA(hkey_main, "subkey", NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     /* try a size too small */
     SetLastError(0xdeadbeef);
     val[0] = '\0';
     size = 1;
     ret = RegQueryValueA(hkey_main, "subkey", val, &size);
-    ok(ret == ERROR_MORE_DATA, "Expected ERROR_MORE_DATA, got %d\n", ret);
-    ok(GetLastError() == 0xdeadbeef, "Expected 0xdeadbeef, got %d\n", GetLastError());
+    ok(ret == ERROR_MORE_DATA, "Expected ERROR_MORE_DATA, got %ld\n", ret);
+    ok(GetLastError() == 0xdeadbeef, "Expected 0xdeadbeef, got %ld\n", GetLastError());
     ok(!val[0], "Expected val to be untouched, got %s\n", val);
-    ok(size == 5, "Expected 5, got %d\n", size);
+    ok(size == 5, "Expected 5, got %ld\n", size);
 
     /* successfully read the value using 'subkey' */
     size = MAX_PATH;
     ret = RegQueryValueA(hkey_main, "subkey", val, &size);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ok(!lstrcmpA(val, "data"), "Expected 'data', got '%s'\n", val);
-    ok(size == 5, "Expected 5, got %d\n", size);
+    ok(size == 5, "Expected 5, got %ld\n", size);
 
     /* successfully read the value using the subkey key */
     size = MAX_PATH;
     ret = RegQueryValueA(subkey, NULL, val, &size);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ok(!lstrcmpA(val, "data"), "Expected 'data', got '%s'\n", val);
-    ok(size == 5, "Expected 5, got %d\n", size);
+    ok(size == 5, "Expected 5, got %ld\n", size);
 
     /* unicode - try size too small */
     SetLastError(0xdeadbeef);
@@ -1742,38 +1742,38 @@ static void test_reg_query_value(void)
         win_skip("RegQueryValueW is not implemented\n");
         goto cleanup;
     }
-    ok(ret == ERROR_MORE_DATA, "Expected ERROR_MORE_DATA, got %d\n", ret);
-    ok(GetLastError() == 0xdeadbeef, "Expected 0xdeadbeef, got %d\n", GetLastError());
+    ok(ret == ERROR_MORE_DATA, "Expected ERROR_MORE_DATA, got %ld\n", ret);
+    ok(GetLastError() == 0xdeadbeef, "Expected 0xdeadbeef, got %ld\n", GetLastError());
     ok(!valW[0], "Expected valW to be untouched\n");
-    ok(size == 10, "Got wrong size: %d\n", size);
+    ok(size == 10, "Got wrong size: %ld\n", size);
 
     /* unicode - try size in WCHARS */
     SetLastError(0xdeadbeef);
     size = ARRAY_SIZE(valW);
     ret = RegQueryValueW(subkey, NULL, valW, &size);
-    ok(ret == ERROR_MORE_DATA, "Expected ERROR_MORE_DATA, got %d\n", ret);
-    ok(GetLastError() == 0xdeadbeef, "Expected 0xdeadbeef, got %d\n", GetLastError());
+    ok(ret == ERROR_MORE_DATA, "Expected ERROR_MORE_DATA, got %ld\n", ret);
+    ok(GetLastError() == 0xdeadbeef, "Expected 0xdeadbeef, got %ld\n", GetLastError());
     ok(!valW[0], "Expected valW to be untouched\n");
-    ok(size == 10, "Got wrong size: %d\n", size);
+    ok(size == 10, "Got wrong size: %ld\n", size);
 
     /* unicode - successfully read the value */
     size = sizeof(valW);
     ret = RegQueryValueW(subkey, NULL, valW, &size);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ok(!lstrcmpW(valW, L"data"), "Got wrong value\n");
-    ok(size == 10, "Got wrong size: %d\n", size);
+    ok(size == 10, "Got wrong size: %ld\n", size);
 
     /* unicode - set the value without a NULL terminator */
     ret = RegSetValueW(subkey, NULL, REG_SZ, L"data", 8);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     /* unicode - read the unterminated value, value is terminated for us */
     memset(valW, 'a', sizeof(valW));
     size = sizeof(valW);
     ret = RegQueryValueW(subkey, NULL, valW, &size);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ok(!lstrcmpW(valW, L"data"), "Got wrong value\n");
-    ok(size == 10, "Got wrong size: %d\n", size);
+    ok(size == 10, "Got wrong size: %ld\n", size);
 
 cleanup:
     RegDeleteKeyA(subkey, "");
@@ -1799,134 +1799,134 @@ static void test_reg_query_info(void)
     FILETIME lastwrite;
 
     ret = RegCreateKeyExA(hkey_main, "subkey", 0, subkey_class, 0, KEY_ALL_ACCESS, NULL, &subkey, NULL);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     /* all parameters NULL */
     ret = RegQueryInfoKeyA(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_INVALID_HANDLE, "ret = %d\n", ret);
+    ok(ret == ERROR_INVALID_HANDLE, "ret = %ld\n", ret);
 
     ret = RegQueryInfoKeyW(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_INVALID_HANDLE, "ret = %d\n", ret);
+    ok(ret == ERROR_INVALID_HANDLE, "ret = %ld\n", ret);
 
     /* not requesting any information */
     ret = RegQueryInfoKeyA(subkey, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
 
     ret = RegQueryInfoKeyW(subkey, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
 
     /* class without length is invalid */
     memset(classbuffer, 0x55, sizeof(classbuffer));
     ret = RegQueryInfoKeyA(subkey, classbuffer, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_INVALID_PARAMETER, "ret = %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "ret = %ld\n", ret);
     ok(classbuffer[0] == 0x55, "classbuffer[0] = 0x%x\n", classbuffer[0]);
 
     memset(classbufferW, 0x55, sizeof(classbufferW));
     ret = RegQueryInfoKeyW(subkey, classbufferW, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_INVALID_PARAMETER, "ret = %d\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "ret = %ld\n", ret);
     ok(classbufferW[0] == 0x5555, "classbufferW[0] = 0x%x\n", classbufferW[0]);
 
     /* empty key */
     sdlen = classlen =0;
     ret = RegQueryInfoKeyA(subkey, NULL, &classlen, NULL, &subkeys, &maxsubkeylen, &maxclasslen, &values, &maxvaluenamelen, &maxvaluelen, &sdlen, &lastwrite);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
-    ok(classlen == strlen(subkey_class), "classlen = %u\n", classlen);
-    ok(subkeys == 0, "subkeys = %u\n", subkeys);
-    ok(maxsubkeylen == 0, "maxsubkeylen = %u\n", maxsubkeylen);
-    ok(maxclasslen == 0, "maxclasslen = %u\n", maxclasslen);
-    ok(values == 0, "values = %u\n", values);
-    ok(maxvaluenamelen == 0, "maxvaluenamelen = %u\n", maxvaluenamelen);
-    ok(maxvaluelen == 0, "maxvaluelen = %u\n", maxvaluelen);
-    todo_wine ok(sdlen != 0, "sdlen = %u\n", sdlen);
-    ok(lastwrite.dwLowDateTime != 0, "lastwrite.dwLowDateTime = %u\n", lastwrite.dwLowDateTime);
-    ok(lastwrite.dwHighDateTime != 0, "lastwrite.dwHighDateTime = %u\n", lastwrite.dwHighDateTime);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
+    ok(classlen == strlen(subkey_class), "classlen = %lu\n", classlen);
+    ok(subkeys == 0, "subkeys = %lu\n", subkeys);
+    ok(maxsubkeylen == 0, "maxsubkeylen = %lu\n", maxsubkeylen);
+    ok(maxclasslen == 0, "maxclasslen = %lu\n", maxclasslen);
+    ok(values == 0, "values = %lu\n", values);
+    ok(maxvaluenamelen == 0, "maxvaluenamelen = %lu\n", maxvaluenamelen);
+    ok(maxvaluelen == 0, "maxvaluelen = %lu\n", maxvaluelen);
+    todo_wine ok(sdlen != 0, "sdlen = %lu\n", sdlen);
+    ok(lastwrite.dwLowDateTime != 0, "lastwrite.dwLowDateTime = %lu\n", lastwrite.dwLowDateTime);
+    ok(lastwrite.dwHighDateTime != 0, "lastwrite.dwHighDateTime = %lu\n", lastwrite.dwHighDateTime);
 
     sdlen = classlen = 0;
     ret = RegQueryInfoKeyW(subkey, NULL, &classlen, NULL, &subkeys, &maxsubkeylen, &maxclasslen, &values, &maxvaluenamelen, &maxvaluelen, &sdlen, &lastwrite);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
-    ok(classlen == strlen(subkey_class), "classlen = %u\n", classlen);
-    ok(subkeys == 0, "subkeys = %u\n", subkeys);
-    ok(maxsubkeylen == 0, "maxsubkeylen = %u\n", maxsubkeylen);
-    ok(maxclasslen == 0, "maxclasslen = %u\n", maxclasslen);
-    ok(values == 0, "values = %u\n", values);
-    ok(maxvaluenamelen == 0, "maxvaluenamelen = %u\n", maxvaluenamelen);
-    ok(maxvaluelen == 0, "maxvaluelen = %u\n", maxvaluelen);
-    todo_wine ok(sdlen != 0, "sdlen = %u\n", sdlen);
-    ok(lastwrite.dwLowDateTime != 0, "lastwrite.dwLowDateTime = %u\n", lastwrite.dwLowDateTime);
-    ok(lastwrite.dwHighDateTime != 0, "lastwrite.dwHighDateTime = %u\n", lastwrite.dwHighDateTime);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
+    ok(classlen == strlen(subkey_class), "classlen = %lu\n", classlen);
+    ok(subkeys == 0, "subkeys = %lu\n", subkeys);
+    ok(maxsubkeylen == 0, "maxsubkeylen = %lu\n", maxsubkeylen);
+    ok(maxclasslen == 0, "maxclasslen = %lu\n", maxclasslen);
+    ok(values == 0, "values = %lu\n", values);
+    ok(maxvaluenamelen == 0, "maxvaluenamelen = %lu\n", maxvaluenamelen);
+    ok(maxvaluelen == 0, "maxvaluelen = %lu\n", maxvaluelen);
+    todo_wine ok(sdlen != 0, "sdlen = %lu\n", sdlen);
+    ok(lastwrite.dwLowDateTime != 0, "lastwrite.dwLowDateTime = %lu\n", lastwrite.dwLowDateTime);
+    ok(lastwrite.dwHighDateTime != 0, "lastwrite.dwHighDateTime = %lu\n", lastwrite.dwHighDateTime);
 
     ret = RegCreateKeyExA(subkey, "subsubkey", 0, subsubkey_class, 0, KEY_ALL_ACCESS, NULL, &subsubkey, NULL);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = RegSetValueExA(subkey, NULL, 0, REG_SZ, (const BYTE*)"data", 5);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     /* with subkey & default value */
     sdlen = classlen = 0;
     ret = RegQueryInfoKeyA(subkey, NULL, &classlen, NULL, &subkeys, &maxsubkeylen, &maxclasslen, &values, &maxvaluenamelen, &maxvaluelen, &sdlen, &lastwrite);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
-    ok(classlen == strlen(subkey_class), "classlen = %u\n", classlen);
-    ok(subkeys == 1, "subkeys = %u\n", subkeys);
-    ok(maxsubkeylen == strlen("subsubkey"), "maxsubkeylen = %u\n", maxsubkeylen);
-    ok(maxclasslen == strlen(subsubkey_class), "maxclasslen = %u\n", maxclasslen);
-    ok(values == 1, "values = %u\n", values);
-    ok(maxvaluenamelen == 0, "maxvaluenamelen = %u\n", maxvaluenamelen);
-    ok(maxvaluelen == sizeof("data") * sizeof(WCHAR), "maxvaluelen = %u\n", maxvaluelen);
-    todo_wine ok(sdlen != 0, "sdlen = %u\n", sdlen);
-    ok(lastwrite.dwLowDateTime != 0, "lastwrite.dwLowDateTime = %u\n", lastwrite.dwLowDateTime);
-    ok(lastwrite.dwHighDateTime != 0, "lastwrite.dwHighDateTime = %u\n", lastwrite.dwHighDateTime);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
+    ok(classlen == strlen(subkey_class), "classlen = %lu\n", classlen);
+    ok(subkeys == 1, "subkeys = %lu\n", subkeys);
+    ok(maxsubkeylen == strlen("subsubkey"), "maxsubkeylen = %lu\n", maxsubkeylen);
+    ok(maxclasslen == strlen(subsubkey_class), "maxclasslen = %lu\n", maxclasslen);
+    ok(values == 1, "values = %lu\n", values);
+    ok(maxvaluenamelen == 0, "maxvaluenamelen = %lu\n", maxvaluenamelen);
+    ok(maxvaluelen == sizeof("data") * sizeof(WCHAR), "maxvaluelen = %lu\n", maxvaluelen);
+    todo_wine ok(sdlen != 0, "sdlen = %lu\n", sdlen);
+    ok(lastwrite.dwLowDateTime != 0, "lastwrite.dwLowDateTime = %lu\n", lastwrite.dwLowDateTime);
+    ok(lastwrite.dwHighDateTime != 0, "lastwrite.dwHighDateTime = %lu\n", lastwrite.dwHighDateTime);
 
     sdlen = classlen = 0;
     ret = RegQueryInfoKeyW(subkey, NULL, &classlen, NULL, &subkeys, &maxsubkeylen, &maxclasslen, &values, &maxvaluenamelen, &maxvaluelen, &sdlen, &lastwrite);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
-    ok(classlen == strlen(subkey_class), "classlen = %u\n", classlen);
-    ok(subkeys == 1, "subkeys = %u\n", subkeys);
-    ok(maxsubkeylen == strlen("subsubkey"), "maxsubkeylen = %u\n", maxsubkeylen);
-    ok(maxclasslen == strlen(subsubkey_class), "maxclasslen = %u\n", maxclasslen);
-    ok(values == 1, "values = %u\n", values);
-    ok(maxvaluenamelen == 0, "maxvaluenamelen = %u\n", maxvaluenamelen);
-    ok(maxvaluelen == sizeof("data") * sizeof(WCHAR), "maxvaluelen = %u\n", maxvaluelen);
-    todo_wine ok(sdlen != 0, "sdlen = %u\n", sdlen);
-    ok(lastwrite.dwLowDateTime != 0, "lastwrite.dwLowDateTime = %u\n", lastwrite.dwLowDateTime);
-    ok(lastwrite.dwHighDateTime != 0, "lastwrite.dwHighDateTime = %u\n", lastwrite.dwHighDateTime);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
+    ok(classlen == strlen(subkey_class), "classlen = %lu\n", classlen);
+    ok(subkeys == 1, "subkeys = %lu\n", subkeys);
+    ok(maxsubkeylen == strlen("subsubkey"), "maxsubkeylen = %lu\n", maxsubkeylen);
+    ok(maxclasslen == strlen(subsubkey_class), "maxclasslen = %lu\n", maxclasslen);
+    ok(values == 1, "values = %lu\n", values);
+    ok(maxvaluenamelen == 0, "maxvaluenamelen = %lu\n", maxvaluenamelen);
+    ok(maxvaluelen == sizeof("data") * sizeof(WCHAR), "maxvaluelen = %lu\n", maxvaluelen);
+    todo_wine ok(sdlen != 0, "sdlen = %lu\n", sdlen);
+    ok(lastwrite.dwLowDateTime != 0, "lastwrite.dwLowDateTime = %lu\n", lastwrite.dwLowDateTime);
+    ok(lastwrite.dwHighDateTime != 0, "lastwrite.dwHighDateTime = %lu\n", lastwrite.dwHighDateTime);
 
     ret = RegSetValueExA(subkey, "value one", 0, REG_SZ, (const BYTE*)"first value data", 17);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = RegSetValueExA(subkey, "value 2", 0, REG_SZ, (const BYTE*)"second value data", 18);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     /* with named value */
     classlen = 0;
     ret = RegQueryInfoKeyA(subkey, NULL, &classlen, NULL, &subkeys, &maxsubkeylen, &maxclasslen, &values, &maxvaluenamelen, &maxvaluelen, &sdlen, &lastwrite);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
-    ok(values == 3, "values = %u\n", values);
-    ok(maxvaluenamelen == strlen("value one"), "maxvaluenamelen = %u\n", maxvaluenamelen);
-    ok(maxvaluelen == sizeof("second value data") * sizeof(WCHAR), "maxvaluelen = %u\n", maxvaluelen);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
+    ok(values == 3, "values = %lu\n", values);
+    ok(maxvaluenamelen == strlen("value one"), "maxvaluenamelen = %lu\n", maxvaluenamelen);
+    ok(maxvaluelen == sizeof("second value data") * sizeof(WCHAR), "maxvaluelen = %lu\n", maxvaluelen);
 
     classlen = 0;
     ret = RegQueryInfoKeyW(subkey, NULL, &classlen, NULL, &subkeys, &maxsubkeylen, &maxclasslen, &values, &maxvaluenamelen, &maxvaluelen, &sdlen, &lastwrite);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
-    ok(values == 3, "values = %u\n", values);
-    ok(maxvaluenamelen == strlen("value one"), "maxvaluenamelen = %u\n", maxvaluenamelen);
-    ok(maxvaluelen == sizeof("second value data") * sizeof(WCHAR), "maxvaluelen = %u\n", maxvaluelen);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
+    ok(values == 3, "values = %lu\n", values);
+    ok(maxvaluenamelen == strlen("value one"), "maxvaluenamelen = %lu\n", maxvaluenamelen);
+    ok(maxvaluelen == sizeof("second value data") * sizeof(WCHAR), "maxvaluelen = %lu\n", maxvaluelen);
 
     /* class name with zero size buffer */
     memset(classbuffer, 0x55, sizeof(classbuffer));
     classlen = 0;
     ret = RegQueryInfoKeyA(subkey, classbuffer, &classlen, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
     ok(classlen == strlen(subkey_class) /* win2k */ ||
-       classlen == 0, "classlen = %u\n", classlen);
+       classlen == 0, "classlen = %lu\n", classlen);
     memset(expectbuffer, 0x55, sizeof(expectbuffer));
     ok(!memcmp(classbuffer, expectbuffer, sizeof(classbuffer)), "classbuffer was modified\n");
 
     memset(classbufferW, 0x55, sizeof(classbufferW));
     classlen = 0;
     ret = RegQueryInfoKeyW(subkey, classbufferW, &classlen, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
     ok(classlen == strlen(subkey_class) /* win2k */ ||
-       classlen == 0, "classlen = %u\n", classlen);
+       classlen == 0, "classlen = %lu\n", classlen);
     memset(expectbufferW, 0x55, sizeof(expectbufferW));
     ok(!memcmp(classbufferW, expectbufferW, sizeof(classbufferW)), "classbufferW was modified\n");
 
@@ -1934,8 +1934,8 @@ static void test_reg_query_info(void)
     memset(classbuffer, 0x55, sizeof(classbuffer));
     classlen = 1;
     ret = RegQueryInfoKeyA(subkey, classbuffer, &classlen, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_MORE_DATA, "ret = %d\n", ret);
-    ok(classlen == 0, "classlen = %u\n", classlen);
+    ok(ret == ERROR_MORE_DATA, "ret = %ld\n", ret);
+    ok(classlen == 0, "classlen = %lu\n", classlen);
     memset(expectbuffer, 0x55, sizeof(expectbuffer));
     expectbuffer[0] = 0;
     ok(!memcmp(classbuffer, expectbuffer, sizeof(classbuffer)), "classbuffer was modified\n");
@@ -1944,9 +1944,9 @@ static void test_reg_query_info(void)
     classlen = 1;
     ret = RegQueryInfoKeyW(subkey, classbufferW, &classlen, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
     /* failure-code changed to ERROR_MORE_DATA in recent win10  */
-    ok((ret == ERROR_INSUFFICIENT_BUFFER) || (ret == ERROR_MORE_DATA), "ret = %d\n", ret);
+    ok((ret == ERROR_INSUFFICIENT_BUFFER) || (ret == ERROR_MORE_DATA), "ret = %ld\n", ret);
     ok(classlen == 0 /* win8 */ ||
-       classlen == strlen(subkey_class), "classlen = %u\n", classlen);
+       classlen == strlen(subkey_class), "classlen = %lu\n", classlen);
     memset(expectbufferW, 0x55, sizeof(expectbufferW));
     ok(!memcmp(classbufferW, expectbufferW, sizeof(classbufferW)), "classbufferW was modified\n");
 
@@ -1954,8 +1954,8 @@ static void test_reg_query_info(void)
     memset(classbuffer, 0x55, sizeof(classbuffer));
     classlen = sizeof(subkey_class) - 1;
     ret = RegQueryInfoKeyA(subkey, classbuffer, &classlen, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_MORE_DATA, "ret = %d\n", ret);
-    ok(classlen == sizeof(subkey_class) - 2, "classlen = %u\n", classlen);
+    ok(ret == ERROR_MORE_DATA, "ret = %ld\n", ret);
+    ok(classlen == sizeof(subkey_class) - 2, "classlen = %lu\n", classlen);
     memset(expectbuffer, 0x55, sizeof(expectbuffer));
     strcpy(expectbuffer, subkey_class);
     expectbuffer[sizeof(subkey_class) - 2] = 0;
@@ -1967,9 +1967,9 @@ static void test_reg_query_info(void)
     memset(classbufferW, 0x55, sizeof(classbufferW));
     classlen = sizeof(subkey_class) - 1;
     ret = RegQueryInfoKeyW(subkey, classbufferW, &classlen, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_INSUFFICIENT_BUFFER, "ret = %d\n", ret);
+    ok(ret == ERROR_INSUFFICIENT_BUFFER, "ret = %ld\n", ret);
     ok(classlen == sizeof(subkey_class) - 2 /* win8 */ ||
-       classlen == strlen(subkey_class), "classlen = %u\n", classlen);
+       classlen == strlen(subkey_class), "classlen = %lu\n", classlen);
     memset(expectbufferW, 0x55, sizeof(expectbufferW));
     ok(!memcmp(classbufferW, expectbufferW, sizeof(classbufferW)), "classbufferW was modified\n");
 
@@ -1977,8 +1977,8 @@ static void test_reg_query_info(void)
     memset(classbuffer, 0x55, sizeof(classbuffer));
     classlen = sizeof(subkey_class);
     ret = RegQueryInfoKeyA(subkey, classbuffer, &classlen, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
-    ok(classlen == sizeof(subkey_class) - 1, "classlen = %u\n", classlen);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
+    ok(classlen == sizeof(subkey_class) - 1, "classlen = %lu\n", classlen);
     memset(expectbuffer, 0x55, sizeof(expectbuffer));
     strcpy(expectbuffer, subkey_class);
     ok(!memcmp(classbuffer, expectbuffer, sizeof(classbuffer)),
@@ -1988,8 +1988,8 @@ static void test_reg_query_info(void)
     memset(classbuffer, 0x55, sizeof(classbuffer));
     classlen = 0xdeadbeef;
     ret = RegQueryInfoKeyA(subkey, classbuffer, &classlen, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
-    ok(classlen == sizeof(subkey_class) - 1, "classlen = %u\n", classlen);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
+    ok(classlen == sizeof(subkey_class) - 1, "classlen = %lu\n", classlen);
     memset(expectbuffer, 0x55, sizeof(expectbuffer));
     strcpy(expectbuffer, subkey_class);
     ok(!memcmp(classbuffer, expectbuffer, sizeof(classbuffer)),
@@ -1999,8 +1999,8 @@ static void test_reg_query_info(void)
     memset(classbufferW, 0x55, sizeof(classbufferW));
     classlen = sizeof(subkey_class);
     ret = RegQueryInfoKeyW(subkey, classbufferW, &classlen, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
-    ok(classlen == sizeof(subkey_class) - 1, "classlen = %u\n", classlen);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
+    ok(classlen == sizeof(subkey_class) - 1, "classlen = %lu\n", classlen);
     memset(expectbufferW, 0x55, sizeof(expectbufferW));
     lstrcpyW(expectbufferW, subkey_classW);
     ok(!memcmp(classbufferW, expectbufferW, sizeof(classbufferW)),
@@ -2010,8 +2010,8 @@ static void test_reg_query_info(void)
     memset(classbufferW, 0x55, sizeof(classbufferW));
     classlen = 0xdeadbeef;
     ret = RegQueryInfoKeyW(subkey, classbufferW, &classlen, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "ret = %d\n", ret);
-    ok(classlen == sizeof(subkey_class) - 1, "classlen = %u\n", classlen);
+    ok(ret == ERROR_SUCCESS, "ret = %ld\n", ret);
+    ok(classlen == sizeof(subkey_class) - 1, "classlen = %lu\n", classlen);
     memset(expectbufferW, 0x55, sizeof(expectbufferW));
     lstrcpyW(expectbufferW, subkey_classW);
     ok(!memcmp(classbufferW, expectbufferW, sizeof(classbufferW)),
@@ -2034,68 +2034,68 @@ static void test_string_termination(void)
     DWORD insize, outsize, nsize;
 
     ret = RegCreateKeyA(hkey_main, "string_termination", &subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     /* Off-by-one RegSetValueExA -> adds a trailing '\0'! */
     insize=sizeof(string)-1;
     ret = RegSetValueExA(subkey, "stringtest", 0, REG_SZ, (BYTE*)string, insize);
-    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %ld\n", ret);
     outsize=insize;
     ret = RegQueryValueExA(subkey, "stringtest", NULL, NULL, buffer, &outsize);
-    ok(ret == ERROR_MORE_DATA, "RegQueryValueExA returned: %d\n", ret);
+    ok(ret == ERROR_MORE_DATA, "RegQueryValueExA returned: %ld\n", ret);
 
     /* Off-by-two RegSetValueExA -> no trailing '\0' */
     insize=sizeof(string)-2;
     ret = RegSetValueExA(subkey, "stringtest", 0, REG_SZ, (BYTE*)string, insize);
-    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "RegSetValueExA failed: %ld\n", ret);
     outsize=0;
     ret = RegQueryValueExA(subkey, "stringtest", NULL, NULL, NULL, &outsize);
-    ok(ret == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", ret);
-    ok(outsize == insize, "wrong size %u != %u\n", outsize, insize);
+    ok(ret == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", ret);
+    ok(outsize == insize, "wrong size %lu != %lu\n", outsize, insize);
 
     /* RegQueryValueExA may return a string with no trailing '\0' */
     outsize=insize;
     memset(buffer, 0xbd, sizeof(buffer));
     ret = RegQueryValueExA(subkey, "stringtest", NULL, NULL, buffer, &outsize);
-    ok(ret == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", ret);
-    ok(outsize == insize, "wrong size: %u != %u\n", outsize, insize);
-    ok(memcmp(buffer, string, outsize) == 0, "bad string: %s/%u != %s\n",
+    ok(ret == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", ret);
+    ok(outsize == insize, "wrong size: %lu != %lu\n", outsize, insize);
+    ok(memcmp(buffer, string, outsize) == 0, "bad string: %s/%lu != %s\n",
        debugstr_an((char*)buffer, outsize), outsize, string);
-    ok(buffer[insize] == 0xbd, "buffer overflow at %u %02x\n", insize, buffer[insize]);
+    ok(buffer[insize] == 0xbd, "buffer overflow at %lu %02x\n", insize, buffer[insize]);
 
     /* RegQueryValueExA adds a trailing '\0' if there is room */
     outsize=insize+1;
     memset(buffer, 0xbd, sizeof(buffer));
     ret = RegQueryValueExA(subkey, "stringtest", NULL, NULL, buffer, &outsize);
-    ok(ret == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", ret);
-    ok(outsize == insize, "wrong size: %u != %u\n", outsize, insize);
-    ok(memcmp(buffer, string, outsize) == 0, "bad string: %s/%u != %s\n",
+    ok(ret == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", ret);
+    ok(outsize == insize, "wrong size: %lu != %lu\n", outsize, insize);
+    ok(memcmp(buffer, string, outsize) == 0, "bad string: %s/%lu != %s\n",
        debugstr_an((char*)buffer, outsize), outsize, string);
-    ok(buffer[insize] == 0, "buffer overflow at %u %02x\n", insize, buffer[insize]);
+    ok(buffer[insize] == 0, "buffer overflow at %lu %02x\n", insize, buffer[insize]);
 
     /* RegEnumValueA may return a string with no trailing '\0' */
     outsize=insize;
     memset(buffer, 0xbd, sizeof(buffer));
     nsize=sizeof(name);
     ret = RegEnumValueA(subkey, 0, name, &nsize, NULL, NULL, buffer, &outsize);
-    ok(ret == ERROR_SUCCESS, "RegEnumValueA failed: %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "RegEnumValueA failed: %ld\n", ret);
     ok(strcmp(name, "stringtest") == 0, "wrong name: %s\n", name);
-    ok(outsize == insize, "wrong size: %u != %u\n", outsize, insize);
-    ok(memcmp(buffer, string, outsize) == 0, "bad string: %s/%u != %s\n",
+    ok(outsize == insize, "wrong size: %lu != %lu\n", outsize, insize);
+    ok(memcmp(buffer, string, outsize) == 0, "bad string: %s/%lu != %s\n",
        debugstr_an((char*)buffer, outsize), outsize, string);
-    ok(buffer[insize] == 0xbd, "buffer overflow at %u %02x\n", insize, buffer[insize]);
+    ok(buffer[insize] == 0xbd, "buffer overflow at %lu %02x\n", insize, buffer[insize]);
 
     /* RegEnumValueA adds a trailing '\0' if there is room */
     outsize=insize+1;
     memset(buffer, 0xbd, sizeof(buffer));
     nsize=sizeof(name);
     ret = RegEnumValueA(subkey, 0, name, &nsize, NULL, NULL, buffer, &outsize);
-    ok(ret == ERROR_SUCCESS, "RegEnumValueA failed: %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "RegEnumValueA failed: %ld\n", ret);
     ok(strcmp(name, "stringtest") == 0, "wrong name: %s\n", name);
-    ok(outsize == insize, "wrong size: %u != %u\n", outsize, insize);
-    ok(memcmp(buffer, string, outsize) == 0, "bad string: %s/%u != %s\n",
+    ok(outsize == insize, "wrong size: %lu != %lu\n", outsize, insize);
+    ok(memcmp(buffer, string, outsize) == 0, "bad string: %s/%lu != %s\n",
        debugstr_an((char*)buffer, outsize), outsize, string);
-    ok(buffer[insize] == 0, "buffer overflow at %u %02x\n", insize, buffer[insize]);
+    ok(buffer[insize] == 0, "buffer overflow at %lu %02x\n", insize, buffer[insize]);
 
     RegDeleteKeyA(subkey, "");
     RegCloseKey(subkey);
@@ -2115,82 +2115,82 @@ static void test_reg_copy_tree(void)
     }
 
     ret = RegCreateKeyA(hkey_main, "src", &src);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegCreateKeyA(hkey_main, "dst", &dst);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     /* Copy nonexistent subkey */
     ret = pRegCopyTreeA(src, "nonexistent_subkey", dst);
-    ok(ret == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %d\n", ret);
+    ok(ret == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %ld\n", ret);
 
     /*  Create test keys and values */
     ret = RegSetValueA(src, NULL, REG_SZ, "data", 4);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegSetValueExA(src, "value", 0, REG_SZ, (const BYTE *)"data2", 5);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = RegCreateKeyA(src, "subkey2", &subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegSetValueA(subkey, NULL, REG_SZ, "data3", 5);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegSetValueExA(subkey, "value", 0, REG_SZ, (const BYTE *)"data4", 5);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegCloseKey(subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = RegCreateKeyA(src, "subkey3", &subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegCloseKey(subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     /* Copy subkey */
     ret = pRegCopyTreeA(src, "subkey2", dst);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     size = MAX_PATH;
     ret = RegQueryValueA(dst, NULL, buffer, &size);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ok(!strcmp(buffer, "data3"), "Expected 'data3', got '%s'\n", buffer);
 
     dwsize = MAX_PATH;
     ret = RegQueryValueExA(dst, "value", NULL, &type, (BYTE *)buffer, &dwsize);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
-    ok(type == REG_SZ, "Expected REG_SZ, got %u\n", type);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
+    ok(type == REG_SZ, "Expected REG_SZ, got %lu\n", type);
     ok(!strcmp(buffer, "data4"), "Expected 'data4', got '%s'\n", buffer);
 
     /* Copy full tree */
     ret = pRegCopyTreeA(src, NULL, dst);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     size = MAX_PATH;
     ret = RegQueryValueA(dst, NULL, buffer, &size);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ok(!strcmp(buffer, "data"), "Expected 'data', got '%s'\n", buffer);
 
     dwsize = MAX_PATH;
     ret = RegQueryValueExA(dst, "value", NULL, &type, (BYTE *)buffer, &dwsize);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
-    ok(type == REG_SZ, "Expected REG_SZ, got %u\n", type);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
+    ok(type == REG_SZ, "Expected REG_SZ, got %lu\n", type);
     ok(!strcmp(buffer, "data2"), "Expected 'data2', got '%s'\n", buffer);
 
     ret = RegOpenKeyA(dst, "subkey2", &subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     size = MAX_PATH;
     ret = RegQueryValueA(subkey, NULL, buffer, &size);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ok(!strcmp(buffer, "data3"), "Expected 'data3', got '%s'\n", buffer);
     dwsize = MAX_PATH;
     ret = RegQueryValueExA(subkey, "value", NULL, &type, (BYTE *)buffer, &dwsize);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
-    ok(type == REG_SZ, "Expected REG_SZ, got %u\n", type);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
+    ok(type == REG_SZ, "Expected REG_SZ, got %lu\n", type);
     ok(!strcmp(buffer, "data4"), "Expected 'data4', got '%s'\n", buffer);
     ret = RegCloseKey(subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = RegOpenKeyA(dst, "subkey3", &subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegCloseKey(subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     delete_key(src);
     delete_key(dst);
@@ -2209,18 +2209,18 @@ static void test_reg_delete_tree(void)
     }
 
     ret = RegCreateKeyA(hkey_main, "subkey", &subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegCreateKeyA(subkey, "subkey2", &subkey2);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegSetValueA(subkey, NULL, REG_SZ, "data", 4);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegSetValueA(subkey2, NULL, REG_SZ, "data2", 5);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegCloseKey(subkey2);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = pRegDeleteTreeA(subkey, "subkey2");
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ok(RegOpenKeyA(subkey, "subkey2", &subkey2),
         "subkey2 was not deleted\n");
     size = MAX_PATH;
@@ -2228,30 +2228,30 @@ static void test_reg_delete_tree(void)
         "Default value of subkey no longer present\n");
 
     ret = RegCreateKeyA(subkey, "subkey2", &subkey2);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegCloseKey(subkey2);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = pRegDeleteTreeA(hkey_main, "subkey\\subkey2");
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ok(RegOpenKeyA(subkey, "subkey2", &subkey2),
         "subkey2 was not deleted\n");
     ok(!RegQueryValueA(subkey, NULL, buffer, &size),
         "Default value of subkey no longer present\n");
 
     ret = RegCreateKeyA(subkey, "subkey2", &subkey2);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegCloseKey(subkey2);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegCreateKeyA(subkey, "subkey3", &subkey2);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegCloseKey(subkey2);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegSetValueA(subkey, NULL, REG_SZ, "data", 4);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegSetValueExA(subkey, "value", 0, REG_SZ, (const BYTE *)"data2", 5);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = pRegDeleteTreeA(subkey, NULL);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ok(!RegOpenKeyA(hkey_main, "subkey", &subkey),
         "subkey was deleted\n");
     ok(RegOpenKeyA(subkey, "subkey2", &subkey2),
@@ -2267,23 +2267,23 @@ static void test_reg_delete_tree(void)
     ok(RegQueryValueExA(subkey, "value", NULL, &type, (BYTE *)buffer, &dwsize),
         "Value is still present\n");
     ret = RegCloseKey(subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = RegOpenKeyA(hkey_main, "subkey", &subkey);
     ok(ret == ERROR_SUCCESS, "subkey was deleted\n");
     ret = pRegDeleteTreeA(subkey, "");
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegCloseKey(subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = RegOpenKeyA(hkey_main, "subkey", &subkey);
     ok(ret == ERROR_SUCCESS, "subkey was deleted\n");
     ret = RegCloseKey(subkey);
-    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = pRegDeleteTreeA(hkey_main, "not-here");
     ok(ret == ERROR_FILE_NOT_FOUND,
-        "Expected ERROR_FILE_NOT_FOUND, got %d\n", ret);
+        "Expected ERROR_FILE_NOT_FOUND, got %ld\n", ret);
 }
 
 static void test_rw_order(void)
@@ -2313,7 +2313,7 @@ static void test_rw_order(void)
 
     ok(!RegQueryInfoKeyA(hKey, NULL, NULL, NULL, NULL, NULL, NULL, &values,
        &value_name_max_len, NULL, NULL, NULL), "RegQueryInfoKeyA failed\n");
-    ok(values == 4, "Expected 4 values, got %u\n", values);
+    ok(values == 4, "Expected 4 values, got %lu\n", values);
 
     /* Value enumeration preserves RegSetValueEx call order */
     value_len = 2;
@@ -2357,103 +2357,103 @@ static void test_symlinks(void)
 
     err = RegCreateKeyExA( hkey_main, "link", 0, NULL, REG_OPTION_CREATE_LINK,
                            KEY_ALL_ACCESS, NULL, &link, NULL );
-    ok( err == ERROR_SUCCESS, "RegCreateKeyEx failed: %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegCreateKeyEx failed: %lu\n", err );
 
     /* REG_SZ is not allowed */
     err = RegSetValueExA( link, "SymbolicLinkValue", 0, REG_SZ, (BYTE *)"foobar", sizeof("foobar") );
-    ok( err == ERROR_ACCESS_DENIED, "RegSetValueEx wrong error %u\n", err );
+    ok( err == ERROR_ACCESS_DENIED, "RegSetValueEx wrong error %lu\n", err );
     err = RegSetValueExA( link, "SymbolicLinkValue", 0, REG_LINK,
                           (BYTE *)target, target_len - sizeof(WCHAR) );
-    ok( err == ERROR_SUCCESS, "RegSetValueEx failed error %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegSetValueEx failed error %lu\n", err );
     /* other values are not allowed */
     err = RegSetValueExA( link, "link", 0, REG_LINK, (BYTE *)target, target_len - sizeof(WCHAR) );
-    ok( err == ERROR_ACCESS_DENIED, "RegSetValueEx wrong error %u\n", err );
+    ok( err == ERROR_ACCESS_DENIED, "RegSetValueEx wrong error %lu\n", err );
 
     /* try opening the target through the link */
 
     err = RegOpenKeyA( hkey_main, "link", &key );
-    ok( err == ERROR_FILE_NOT_FOUND, "RegOpenKey wrong error %u\n", err );
+    ok( err == ERROR_FILE_NOT_FOUND, "RegOpenKey wrong error %lu\n", err );
 
     err = RegCreateKeyExA( hkey_main, "target", 0, NULL, 0, KEY_ALL_ACCESS, NULL, &key, NULL );
-    ok( err == ERROR_SUCCESS, "RegCreateKeyEx failed error %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegCreateKeyEx failed error %lu\n", err );
 
     dw = 0xbeef;
     err = RegSetValueExA( key, "value", 0, REG_DWORD, (BYTE *)&dw, sizeof(dw) );
-    ok( err == ERROR_SUCCESS, "RegSetValueEx failed error %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegSetValueEx failed error %lu\n", err );
     RegCloseKey( key );
 
     err = RegOpenKeyA( hkey_main, "link", &key );
-    ok( err == ERROR_SUCCESS, "RegOpenKey failed error %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegOpenKey failed error %lu\n", err );
 
     len = sizeof(buffer);
     err = RegQueryValueExA( key, "value", NULL, &type, buffer, &len );
-    ok( err == ERROR_SUCCESS, "RegOpenKey failed error %u\n", err );
-    ok( len == sizeof(DWORD), "wrong len %u\n", len );
+    ok( err == ERROR_SUCCESS, "RegOpenKey failed error %lu\n", err );
+    ok( len == sizeof(DWORD), "wrong len %lu\n", len );
 
     len = sizeof(buffer);
     err = RegQueryValueExA( key, "SymbolicLinkValue", NULL, &type, buffer, &len );
-    ok( err == ERROR_FILE_NOT_FOUND, "RegQueryValueEx wrong error %u\n", err );
+    ok( err == ERROR_FILE_NOT_FOUND, "RegQueryValueEx wrong error %lu\n", err );
 
     /* REG_LINK can be created in non-link keys */
     err = RegSetValueExA( key, "SymbolicLinkValue", 0, REG_LINK,
                           (BYTE *)target, target_len - sizeof(WCHAR) );
-    ok( err == ERROR_SUCCESS, "RegSetValueEx failed error %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegSetValueEx failed error %lu\n", err );
     len = sizeof(buffer);
     err = RegQueryValueExA( key, "SymbolicLinkValue", NULL, &type, buffer, &len );
-    ok( err == ERROR_SUCCESS, "RegQueryValueEx failed error %u\n", err );
-    ok( len == target_len - sizeof(WCHAR), "wrong len %u\n", len );
+    ok( err == ERROR_SUCCESS, "RegQueryValueEx failed error %lu\n", err );
+    ok( len == target_len - sizeof(WCHAR), "wrong len %lu\n", len );
     err = RegDeleteValueA( key, "SymbolicLinkValue" );
-    ok( err == ERROR_SUCCESS, "RegDeleteValue failed error %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegDeleteValue failed error %lu\n", err );
 
     RegCloseKey( key );
 
     err = RegCreateKeyExA( hkey_main, "link", 0, NULL, 0, KEY_ALL_ACCESS, NULL, &key, NULL );
-    ok( err == ERROR_SUCCESS, "RegCreateKeyEx failed error %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegCreateKeyEx failed error %lu\n", err );
 
     len = sizeof(buffer);
     err = RegQueryValueExA( key, "value", NULL, &type, buffer, &len );
-    ok( err == ERROR_SUCCESS, "RegQueryValueEx failed error %u\n", err );
-    ok( len == sizeof(DWORD), "wrong len %u\n", len );
+    ok( err == ERROR_SUCCESS, "RegQueryValueEx failed error %lu\n", err );
+    ok( len == sizeof(DWORD), "wrong len %lu\n", len );
 
     err = RegQueryValueExA( key, "SymbolicLinkValue", NULL, &type, buffer, &len );
-    ok( err == ERROR_FILE_NOT_FOUND, "RegQueryValueEx wrong error %u\n", err );
+    ok( err == ERROR_FILE_NOT_FOUND, "RegQueryValueEx wrong error %lu\n", err );
     RegCloseKey( key );
 
     /* now open the symlink itself */
 
     err = RegOpenKeyExA( hkey_main, "link", REG_OPTION_OPEN_LINK, KEY_ALL_ACCESS, &key );
-    ok( err == ERROR_SUCCESS, "RegOpenKeyEx failed error %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegOpenKeyEx failed error %lu\n", err );
     len = sizeof(buffer);
     err = RegQueryValueExA( key, "SymbolicLinkValue", NULL, &type, buffer, &len );
-    ok( err == ERROR_SUCCESS, "RegQueryValueEx failed error %u\n", err );
-    ok( len == target_len - sizeof(WCHAR), "wrong len %u\n", len );
+    ok( err == ERROR_SUCCESS, "RegQueryValueEx failed error %lu\n", err );
+    ok( len == target_len - sizeof(WCHAR), "wrong len %lu\n", len );
     RegCloseKey( key );
 
     err = RegCreateKeyExA( hkey_main, "link", 0, NULL, REG_OPTION_OPEN_LINK,
                            KEY_ALL_ACCESS, NULL, &key, NULL );
-    ok( err == ERROR_SUCCESS, "RegCreateKeyEx failed error %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegCreateKeyEx failed error %lu\n", err );
     len = sizeof(buffer);
     err = RegQueryValueExA( key, "SymbolicLinkValue", NULL, &type, buffer, &len );
-    ok( err == ERROR_SUCCESS, "RegQueryValueEx failed error %u\n", err );
-    ok( len == target_len - sizeof(WCHAR), "wrong len %u\n", len );
+    ok( err == ERROR_SUCCESS, "RegQueryValueEx failed error %lu\n", err );
+    ok( len == target_len - sizeof(WCHAR), "wrong len %lu\n", len );
     RegCloseKey( key );
 
     err = RegCreateKeyExA( hkey_main, "link", 0, NULL, REG_OPTION_CREATE_LINK,
                            KEY_ALL_ACCESS, NULL, &key, NULL );
-    ok( err == ERROR_ALREADY_EXISTS, "RegCreateKeyEx wrong error %u\n", err );
+    ok( err == ERROR_ALREADY_EXISTS, "RegCreateKeyEx wrong error %lu\n", err );
 
     err = RegCreateKeyExA( hkey_main, "link", 0, NULL, REG_OPTION_CREATE_LINK | REG_OPTION_OPEN_LINK,
                            KEY_ALL_ACCESS, NULL, &key, NULL );
-    ok( err == ERROR_ALREADY_EXISTS, "RegCreateKeyEx wrong error %u\n", err );
+    ok( err == ERROR_ALREADY_EXISTS, "RegCreateKeyEx wrong error %lu\n", err );
 
     err = RegDeleteKeyA( hkey_main, "target" );
-    ok( err == ERROR_SUCCESS, "RegDeleteKey failed error %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegDeleteKey failed error %lu\n", err );
 
     err = RegDeleteKeyA( hkey_main, "link" );
-    ok( err == ERROR_FILE_NOT_FOUND, "RegDeleteKey wrong error %u\n", err );
+    ok( err == ERROR_FILE_NOT_FOUND, "RegDeleteKey wrong error %lu\n", err );
 
     status = pNtDeleteKey( link );
-    ok( !status, "NtDeleteKey failed: 0x%08x\n", status );
+    ok( !status, "NtDeleteKey failed: 0x%08lx\n", status );
     RegCloseKey( link );
 
     HeapFree( GetProcessHeap(), 0, target );
@@ -2467,13 +2467,13 @@ static DWORD get_key_value( HKEY root, const char *name, DWORD flags )
 
     err = RegCreateKeyExA( root, name, 0, NULL, 0, flags | KEY_ALL_ACCESS, NULL, &key, NULL );
     if (err == ERROR_FILE_NOT_FOUND) return 0;
-    ok( err == ERROR_SUCCESS, "%08x: RegCreateKeyEx failed: %u\n", flags, err );
+    ok( err == ERROR_SUCCESS, "%08lx: RegCreateKeyEx failed: %lu\n", flags, err );
 
     err = RegQueryValueExA( key, "value", NULL, &type, (BYTE *)&dw, &len );
     if (err == ERROR_FILE_NOT_FOUND)
         dw = 0;
     else
-        ok( err == ERROR_SUCCESS, "%08x: RegQueryValueEx failed: %u\n", flags, err );
+        ok( err == ERROR_SUCCESS, "%08lx: RegQueryValueEx failed: %lu\n", flags, err );
     RegCloseKey( key );
     return dw;
 }
@@ -2481,7 +2481,7 @@ static DWORD get_key_value( HKEY root, const char *name, DWORD flags )
 static void _check_key_value( int line, HANDLE root, const char *name, DWORD flags, DWORD expect )
 {
     DWORD dw = get_key_value( root, name, flags );
-    ok_(__FILE__,line)( dw == expect, "%08x: wrong value %u/%u\n", flags, dw, expect );
+    ok_(__FILE__,line)( dw == expect, "%08lx: wrong value %lu/%lu\n", flags, dw, expect );
 }
 #define check_key_value(root,name,flags,expect) _check_key_value( __LINE__, root, name, flags, expect )
 
@@ -2510,43 +2510,43 @@ static void test_redirection(void)
 
     err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software\\Wine", 0, NULL, 0,
                            KEY_WOW64_64KEY | KEY_ALL_ACCESS, NULL, &root64, NULL );
-    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
 
     err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software\\Wine", 0, NULL, 0,
                            KEY_WOW64_32KEY | KEY_ALL_ACCESS, NULL, &root32, NULL );
-    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
 
     err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software\\Wine\\Winetest", 0, NULL, 0,
                            KEY_WOW64_64KEY | KEY_ALL_ACCESS, NULL, &key64, NULL );
-    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
 
     err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software\\Wine\\Winetest", 0, NULL, 0,
                            KEY_WOW64_32KEY | KEY_ALL_ACCESS, NULL, &key32, NULL );
-    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
 
     dw = 64;
     err = RegSetValueExA( key64, "value", 0, REG_DWORD, (BYTE *)&dw, sizeof(dw) );
-    ok( err == ERROR_SUCCESS, "RegSetValueExA failed: %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegSetValueExA failed: %lu\n", err );
 
     dw = 32;
     err = RegSetValueExA( key32, "value", 0, REG_DWORD, (BYTE *)&dw, sizeof(dw) );
-    ok( err == ERROR_SUCCESS, "RegSetValueExA failed: %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegSetValueExA failed: %lu\n", err );
 
     dw = 0;
     len = sizeof(dw);
     err = RegQueryValueExA( key32, "value", NULL, &type, (BYTE *)&dw, &len );
-    ok( err == ERROR_SUCCESS, "RegQueryValueExA failed: %u\n", err );
-    ok( dw == 32, "wrong value %u\n", dw );
+    ok( err == ERROR_SUCCESS, "RegQueryValueExA failed: %lu\n", err );
+    ok( dw == 32, "wrong value %lu\n", dw );
 
     dw = 0;
     len = sizeof(dw);
     err = RegQueryValueExA( key64, "value", NULL, &type, (BYTE *)&dw, &len );
-    ok( err == ERROR_SUCCESS, "RegQueryValueExA failed: %u\n", err );
-    ok( dw == 64, "wrong value %u\n", dw );
+    ok( err == ERROR_SUCCESS, "RegQueryValueExA failed: %lu\n", err );
+    ok( dw == 64, "wrong value %lu\n", dw );
 
     err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software", 0, NULL, 0,
                            KEY_ALL_ACCESS, NULL, &key, NULL );
-    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
 
     if (ptr_size == 32)
     {
@@ -2580,20 +2580,20 @@ static void test_redirection(void)
     {
         err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software", 0, NULL, 0,
                                KEY_WOW64_64KEY | KEY_ALL_ACCESS, NULL, &key, NULL );
-        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
         dw = get_key_value( key, "Wine\\Winetest", 0 );
-        ok( dw == 64 || broken(dw == 32) /* xp64 */, "wrong value %u\n", dw );
+        ok( dw == 64 || broken(dw == 32) /* xp64 */, "wrong value %lu\n", dw );
         check_key_value( key, "Wine\\Winetest", KEY_WOW64_64KEY, 64 );
         check_key_value( key, "Wine\\Winetest", KEY_WOW64_32KEY, 32 );
         check_key_value( key, "Wow6432Node\\Wine\\Winetest", 0, 32 );
         dw = get_key_value( key, "Wow6432Node\\Wine\\Winetest", KEY_WOW64_64KEY );
-        ok( dw == 32 || broken(dw == 64) /* xp64 */, "wrong value %u\n", dw );
+        ok( dw == 32 || broken(dw == 64) /* xp64 */, "wrong value %lu\n", dw );
         check_key_value( key, "Wow6432Node\\Wine\\Winetest", KEY_WOW64_32KEY, 32 );
         RegCloseKey( key );
 
         err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software", 0, NULL, 0,
                                KEY_WOW64_32KEY | KEY_ALL_ACCESS, NULL, &key, NULL );
-        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
         check_key_value( key, "Wine\\Winetest", 0, 32 );
         check_key_value( key, "Wine\\Winetest", KEY_WOW64_64KEY, is_vista ? 64 : 32 );
         check_key_value( key, "Wine\\Winetest", KEY_WOW64_32KEY, 32 );
@@ -2606,20 +2606,20 @@ static void test_redirection(void)
     {
         err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software", 0, NULL, 0,
                                KEY_WOW64_64KEY | KEY_ALL_ACCESS, NULL, &key, NULL );
-        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
         check_key_value( key, "Wine\\Winetest", 0, 64 );
         check_key_value( key, "Wine\\Winetest", KEY_WOW64_64KEY, 64 );
         dw = get_key_value( key, "Wine\\Winetest", KEY_WOW64_32KEY );
-        todo_wine ok( dw == 32, "wrong value %u\n", dw );
+        todo_wine ok( dw == 32, "wrong value %lu\n", dw );
         check_key_value( key, "Wow6432Node\\Wine\\Winetest", 0, 32 );
         RegCloseKey( key );
 
         err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software", 0, NULL, 0,
                                KEY_WOW64_32KEY | KEY_ALL_ACCESS, NULL, &key, NULL );
-        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
         check_key_value( key, "Wine\\Winetest", 0, 32 );
         dw = get_key_value( key, "Wine\\Winetest", KEY_WOW64_64KEY );
-        ok( dw == 32 || broken(dw == 64) /* vista */, "wrong value %u\n", dw );
+        ok( dw == 32 || broken(dw == 64) /* vista */, "wrong value %lu\n", dw );
         check_key_value( key, "Wine\\Winetest", KEY_WOW64_32KEY, 32 );
         RegCloseKey( key );
     }
@@ -2644,7 +2644,7 @@ static void test_redirection(void)
 
     err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software\\Wow6432Node", 0, NULL, 0,
                            KEY_ALL_ACCESS, NULL, &key, NULL );
-    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
     check_key_value( key, "Wine\\Winetest", 0, 32 );
     check_key_value( key, "Wine\\Winetest", KEY_WOW64_64KEY, is_vista ? 64 : 32 );
     check_key_value( key, "Wine\\Winetest", KEY_WOW64_32KEY, 32 );
@@ -2654,16 +2654,16 @@ static void test_redirection(void)
     {
         err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software\\Wow6432Node", 0, NULL, 0,
                                KEY_WOW64_64KEY | KEY_ALL_ACCESS, NULL, &key, NULL );
-        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
         dw = get_key_value( key, "Wine\\Winetest", 0 );
-        ok( dw == (is_vista ? 64 : 32) || broken(dw == 32) /* xp64 */, "wrong value %u\n", dw );
+        ok( dw == (is_vista ? 64 : 32) || broken(dw == 32) /* xp64 */, "wrong value %lu\n", dw );
         check_key_value( key, "Wine\\Winetest", KEY_WOW64_64KEY, is_vista ? 64 : 32 );
         check_key_value( key, "Wine\\Winetest", KEY_WOW64_32KEY, 32 );
         RegCloseKey( key );
 
         err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software\\Wow6432Node", 0, NULL, 0,
                                KEY_WOW64_32KEY | KEY_ALL_ACCESS, NULL, &key, NULL );
-        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
         check_key_value( key, "Wine\\Winetest", 0, 32 );
         check_key_value( key, "Wine\\Winetest", KEY_WOW64_64KEY, is_vista ? 64 : 32 );
         check_key_value( key, "Wine\\Winetest", KEY_WOW64_32KEY, 32 );
@@ -2672,7 +2672,7 @@ static void test_redirection(void)
 
     err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software\\Wow6432Node\\Wine", 0, NULL, 0,
                            KEY_ALL_ACCESS, NULL, &key, NULL );
-    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
     check_key_value( key, "Winetest", 0, 32 );
     check_key_value( key, "Winetest", KEY_WOW64_64KEY, is_vista ? 64 : 32 );
     check_key_value( key, "Winetest", KEY_WOW64_32KEY, 32 );
@@ -2682,16 +2682,16 @@ static void test_redirection(void)
     {
         err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software\\Wow6432Node\\Wine", 0, NULL, 0,
                                KEY_WOW64_64KEY | KEY_ALL_ACCESS, NULL, &key, NULL );
-        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
         dw = get_key_value( key, "Winetest", 0 );
-        ok( dw == 32 || (is_vista && dw == 64), "wrong value %u\n", dw );
+        ok( dw == 32 || (is_vista && dw == 64), "wrong value %lu\n", dw );
         check_key_value( key, "Winetest", KEY_WOW64_64KEY, is_vista ? 64 : 32 );
         check_key_value( key, "Winetest", KEY_WOW64_32KEY, 32 );
         RegCloseKey( key );
 
         err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software\\Wow6432Node\\Wine", 0, NULL, 0,
                                KEY_WOW64_32KEY | KEY_ALL_ACCESS, NULL, &key, NULL );
-        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
         check_key_value( key, "Winetest", 0, 32 );
         check_key_value( key, "Winetest", KEY_WOW64_64KEY, is_vista ? 64 : 32 );
         check_key_value( key, "Winetest", KEY_WOW64_32KEY, 32 );
@@ -2700,29 +2700,29 @@ static void test_redirection(void)
 
     err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software\\Wine", 0, NULL, 0,
                            KEY_ALL_ACCESS, NULL, &key, NULL );
-    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+    ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
     check_key_value( key, "Winetest", 0, ptr_size );
     check_key_value( key, "Winetest", KEY_WOW64_64KEY, is_vista ? 64 : ptr_size );
     dw = get_key_value( key, "Winetest", KEY_WOW64_32KEY );
     todo_wine_if (ptr_size != 32)
-        ok( dw == 32, "wrong value %u\n", dw );
+        ok( dw == 32, "wrong value %lu\n", dw );
     RegCloseKey( key );
 
     if (ptr_size == 32)
     {
         err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software\\Wine", 0, NULL, 0,
                                KEY_WOW64_64KEY | KEY_ALL_ACCESS, NULL, &key, NULL );
-        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
         dw = get_key_value( key, "Winetest", 0 );
-        ok( dw == 64 || broken(dw == 32) /* xp64 */, "wrong value %u\n", dw );
+        ok( dw == 64 || broken(dw == 32) /* xp64 */, "wrong value %lu\n", dw );
         check_key_value( key, "Winetest", KEY_WOW64_64KEY, 64 );
         dw = get_key_value( key, "Winetest", KEY_WOW64_32KEY );
-        todo_wine ok( dw == 32, "wrong value %u\n", dw );
+        todo_wine ok( dw == 32, "wrong value %lu\n", dw );
         RegCloseKey( key );
 
         err = RegCreateKeyExA( HKEY_LOCAL_MACHINE, "Software\\Wine", 0, NULL, 0,
                                KEY_WOW64_32KEY | KEY_ALL_ACCESS, NULL, &key, NULL );
-        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegCreateKeyExA failed: %lu\n", err );
         check_key_value( key, "Winetest", 0, 32 );
         check_key_value( key, "Winetest", KEY_WOW64_64KEY, is_vista ? 64 : 32 );
         check_key_value( key, "Winetest", KEY_WOW64_32KEY, 32 );
@@ -2732,18 +2732,18 @@ static void test_redirection(void)
     if (pRegDeleteKeyExA)
     {
         err = pRegDeleteKeyExA( key32, "", KEY_WOW64_32KEY, 0 );
-        ok( err == ERROR_SUCCESS, "RegDeleteKey failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegDeleteKey failed: %lu\n", err );
         err = pRegDeleteKeyExA( key64, "", KEY_WOW64_64KEY, 0 );
-        ok( err == ERROR_SUCCESS, "RegDeleteKey failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegDeleteKey failed: %lu\n", err );
         pRegDeleteKeyExA( key64, "", KEY_WOW64_64KEY, 0 );
         pRegDeleteKeyExA( root64, "", KEY_WOW64_64KEY, 0 );
     }
     else
     {
         err = RegDeleteKeyA( key32, "" );
-        ok( err == ERROR_SUCCESS, "RegDeleteKey failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegDeleteKey failed: %lu\n", err );
         err = RegDeleteKeyA( key64, "" );
-        ok( err == ERROR_SUCCESS, "RegDeleteKey failed: %u\n", err );
+        ok( err == ERROR_SUCCESS, "RegDeleteKey failed: %lu\n", err );
         RegDeleteKeyA( key64, "" );
         RegDeleteKeyA( root64, "" );
     }
@@ -2754,17 +2754,17 @@ static void test_redirection(void)
 
     /* open key in native bit mode */
     err = RegOpenKeyExA(HKEY_CLASSES_ROOT, "Interface", 0, KEY_ALL_ACCESS, &native);
-    ok(err == ERROR_SUCCESS, "got %i\n", err);
+    ok(err == ERROR_SUCCESS, "got %li\n", err);
 
     pRegDeleteKeyExA(native, "AWineTest", 0, 0);
 
     /* write subkey in opposite bit mode */
     err = RegOpenKeyExA(HKEY_CLASSES_ROOT, "Interface", 0, KEY_ALL_ACCESS | opposite, &op_key);
-    ok(err == ERROR_SUCCESS, "got %i\n", err);
+    ok(err == ERROR_SUCCESS, "got %li\n", err);
 
     err = RegCreateKeyExA(op_key, "AWineTest", 0, NULL, 0, KEY_ALL_ACCESS | opposite,
             NULL, &key, NULL);
-    ok(err == ERROR_SUCCESS || err == ERROR_ACCESS_DENIED, "got %i\n", err);
+    ok(err == ERROR_SUCCESS || err == ERROR_ACCESS_DENIED, "got %li\n", err);
     if(err != ERROR_SUCCESS){
         win_skip("Can't write to registry\n");
         RegCloseKey(op_key);
@@ -2777,10 +2777,10 @@ static void test_redirection(void)
     err = RegOpenKeyExA(native, "AWineTest", 0, KEY_ALL_ACCESS, &key);
     ok(err == ERROR_FILE_NOT_FOUND ||
             broken(err == ERROR_SUCCESS), /* before Win7, HKCR is reflected instead of redirected */
-            "got %i\n", err);
+            "got %li\n", err);
 
     err = pRegDeleteKeyExA(op_key, "AWineTest", opposite, 0);
-    ok(err == ERROR_SUCCESS, "got %i\n", err);
+    ok(err == ERROR_SUCCESS, "got %li\n", err);
 
     RegCloseKey(op_key);
     RegCloseKey(native);
@@ -2814,7 +2814,7 @@ static void test_classesroot(void)
                          KEY_QUERY_VALUE|KEY_SET_VALUE, &hkcr );
     todo_wine ok(res == ERROR_SUCCESS ||
                  broken(res == ERROR_FILE_NOT_FOUND /* WinNT */),
-                 "test key not found in hkcr: %d\n", res);
+                 "test key not found in hkcr: %ld\n", res);
     if (res)
     {
         skip("HKCR key merging not supported\n");
@@ -2827,38 +2827,38 @@ static void test_classesroot(void)
 
     /* set a value in user's classes */
     res = RegSetValueExA(hkey, "val1", 0, REG_SZ, (const BYTE *)"user", sizeof("user"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* try to find the value in hkcr */
     res = RegQueryValueExA(hkcr, "val1", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", res);
     ok(!strcmp( buffer, "user" ), "value set to '%s'\n", buffer );
 
     /* modify the value in hkcr */
     res = RegSetValueExA(hkcr, "val1", 0, REG_SZ, (const BYTE *)"hkcr", sizeof("hkcr"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* check if the value is also modified in user's classes */
     res = RegQueryValueExA(hkey, "val1", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
     ok(!strcmp( buffer, "hkcr" ), "value set to '%s'\n", buffer );
 
     /* set a value in hkcr */
     res = RegSetValueExA(hkcr, "val0", 0, REG_SZ, (const BYTE *)"hkcr", sizeof("hkcr"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* try to find the value in user's classes */
     res = RegQueryValueExA(hkey, "val0", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", res);
     ok(!strcmp( buffer, "hkcr" ), "value set to '%s'\n", buffer );
 
     /* modify the value in user's classes */
     res = RegSetValueExA(hkey, "val0", 0, REG_SZ, (const BYTE *)"user", sizeof("user"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* check if the value is also modified in hkcr */
     res = RegQueryValueExA(hkcr, "val0", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
     ok(!strcmp( buffer, "user" ), "value set to '%s'\n", buffer );
 
     /* cleanup */
@@ -2886,7 +2886,7 @@ static void test_classesroot(void)
     res = RegOpenKeyExA( HKEY_CLASSES_ROOT, "WineTestCls", 0,
                          KEY_QUERY_VALUE|KEY_SET_VALUE, &hkcr );
     ok(res == ERROR_SUCCESS,
-       "test key not found in hkcr: %d\n", res);
+       "test key not found in hkcr: %ld\n", res);
     ok(IS_HKCR(hkcr), "hkcr mask not set in %p\n", hkcr);
     if (res)
     {
@@ -2897,20 +2897,20 @@ static void test_classesroot(void)
 
     /* set a value in hklm classes */
     res = RegSetValueExA(hklm, "val2", 0, REG_SZ, (const BYTE *)"hklm", sizeof("hklm"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* try to find the value in hkcr */
     res = RegQueryValueExA(hkcr, "val2", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", res);
     ok(!strcmp( buffer, "hklm" ), "value set to '%s'\n", buffer );
 
     /* modify the value in hkcr */
     res = RegSetValueExA(hkcr, "val2", 0, REG_SZ, (const BYTE *)"hkcr", sizeof("hkcr"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* check that the value is modified in hklm classes */
     res = RegQueryValueExA(hklm, "val2", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
     ok(!strcmp( buffer, "hkcr" ), "value set to '%s'\n", buffer );
 
     if (RegCreateKeyExA( HKEY_CURRENT_USER, "Software\\Classes\\WineTestCls", 0, NULL, 0,
@@ -2921,40 +2921,40 @@ static void test_classesroot(void)
     res = RegOpenKeyExA( HKEY_CLASSES_ROOT, "WineTestCls", 0,
                          KEY_QUERY_VALUE|KEY_SET_VALUE, &hkcr );
     ok(res == ERROR_SUCCESS,
-       "test key not found in hkcr: %d\n", res);
+       "test key not found in hkcr: %ld\n", res);
     ok(IS_HKCR(hkcr), "hkcr mask not set in %p\n", hkcr);
 
     /* set a value in user's classes */
     res = RegSetValueExA(hkey, "val2", 0, REG_SZ, (const BYTE *)"user", sizeof("user"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* try to find the value in hkcr */
     res = RegQueryValueExA(hkcr, "val2", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", res);
     ok(!strcmp( buffer, "user" ), "value set to '%s'\n", buffer );
 
     /* modify the value in hklm */
     res = RegSetValueExA(hklm, "val2", 0, REG_SZ, (const BYTE *)"hklm", sizeof("hklm"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* check that the value is not overwritten in hkcr or user's classes */
     res = RegQueryValueExA(hkcr, "val2", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", res);
     ok(!strcmp( buffer, "user" ), "value set to '%s'\n", buffer );
     res = RegQueryValueExA(hkey, "val2", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
     ok(!strcmp( buffer, "user" ), "value set to '%s'\n", buffer );
 
     /* modify the value in hkcr */
     res = RegSetValueExA(hkcr, "val2", 0, REG_SZ, (const BYTE *)"hkcr", sizeof("hkcr"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* check that the value is overwritten in hklm and user's classes */
     res = RegQueryValueExA(hkcr, "val2", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", res);
     ok(!strcmp( buffer, "hkcr" ), "value set to '%s'\n", buffer );
     res = RegQueryValueExA(hkey, "val2", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
     ok(!strcmp( buffer, "hkcr" ), "value set to '%s'\n", buffer );
 
     /* create a subkey in hklm */
@@ -2963,25 +2963,25 @@ static void test_classesroot(void)
     ok(!IS_HKCR(hklmsub1), "hkcr mask set in %p\n", hklmsub1);
     /* try to open that subkey in hkcr */
     res = RegOpenKeyExA( hkcr, "subkey1", 0, KEY_QUERY_VALUE|KEY_SET_VALUE, &hkcrsub1 );
-    ok(res == ERROR_SUCCESS, "test key not found in hkcr: %d\n", res);
+    ok(res == ERROR_SUCCESS, "test key not found in hkcr: %ld\n", res);
     ok(IS_HKCR(hkcrsub1), "hkcr mask not set in %p\n", hkcrsub1);
 
     /* set a value in hklm classes */
     res = RegSetValueExA(hklmsub1, "subval1", 0, REG_SZ, (const BYTE *)"hklm", sizeof("hklm"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* try to find the value in hkcr */
     res = RegQueryValueExA(hkcrsub1, "subval1", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", res);
     ok(!strcmp( buffer, "hklm" ), "value set to '%s'\n", buffer );
 
     /* modify the value in hkcr */
     res = RegSetValueExA(hkcrsub1, "subval1", 0, REG_SZ, (const BYTE *)"hkcr", sizeof("hkcr"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* check that the value is modified in hklm classes */
     res = RegQueryValueExA(hklmsub1, "subval1", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
     ok(!strcmp( buffer, "hkcr" ), "value set to '%s'\n", buffer );
 
     /* create a subkey in user's classes */
@@ -2991,35 +2991,35 @@ static void test_classesroot(void)
 
     /* set a value in user's classes */
     res = RegSetValueExA(hkeysub1, "subval1", 0, REG_SZ, (const BYTE *)"user", sizeof("user"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* try to find the value in hkcr */
     res = RegQueryValueExA(hkcrsub1, "subval1", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", res);
     ok(!strcmp( buffer, "user" ), "value set to '%s'\n", buffer );
 
     /* modify the value in hklm */
     res = RegSetValueExA(hklmsub1, "subval1", 0, REG_SZ, (const BYTE *)"hklm", sizeof("hklm"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* check that the value is not overwritten in hkcr or user's classes */
     res = RegQueryValueExA(hkcrsub1, "subval1", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", res);
     ok(!strcmp( buffer, "user" ), "value set to '%s'\n", buffer );
     res = RegQueryValueExA(hkeysub1, "subval1", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
     ok(!strcmp( buffer, "user" ), "value set to '%s'\n", buffer );
 
     /* modify the value in hkcr */
     res = RegSetValueExA(hkcrsub1, "subval1", 0, REG_SZ, (const BYTE *)"hkcr", sizeof("hkcr"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* check that the value is not overwritten in hklm, but in user's classes */
     res = RegQueryValueExA(hklmsub1, "subval1", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", res);
     ok(!strcmp( buffer, "hklm" ), "value set to '%s'\n", buffer );
     res = RegQueryValueExA(hkeysub1, "subval1", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
     ok(!strcmp( buffer, "hkcr" ), "value set to '%s'\n", buffer );
 
     /* new subkey in hkcr */
@@ -3027,19 +3027,19 @@ static void test_classesroot(void)
                          KEY_QUERY_VALUE|KEY_SET_VALUE, NULL, &hkcrsub2, NULL )) return;
     ok(IS_HKCR(hkcrsub2), "hkcr mask not set in %p\n", hkcrsub2);
     res = RegSetValueExA(hkcrsub2, "subval1", 0, REG_SZ, (const BYTE *)"hkcr", sizeof("hkcr"));
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d, GLE=%x\n", res, GetLastError());
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld, GLE=%lx\n", res, GetLastError());
 
     /* try to open that new subkey in user's classes and hklm */
     res = RegOpenKeyExA( hkey, "subkey2", 0, KEY_QUERY_VALUE|KEY_SET_VALUE, &hklmsub2 );
-    ok(res != ERROR_SUCCESS, "test key found in user's classes: %d\n", res);
+    ok(res != ERROR_SUCCESS, "test key found in user's classes: %ld\n", res);
     hklmsub2 = 0;
     res = RegOpenKeyExA( hklm, "subkey2", 0, KEY_QUERY_VALUE|KEY_SET_VALUE, &hklmsub2 );
-    ok(res == ERROR_SUCCESS, "test key not found in hklm: %d\n", res);
+    ok(res == ERROR_SUCCESS, "test key not found in hklm: %ld\n", res);
     ok(!IS_HKCR(hklmsub2), "hkcr mask set in %p\n", hklmsub2);
 
     /* check that the value is present in hklm */
     res = RegQueryValueExA(hklmsub2, "subval1", NULL, &type, (LPBYTE)buffer, &size);
-    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegQueryValueExA failed: %ld\n", res);
     ok(!strcmp( buffer, "hkcr" ), "value set to '%s'\n", buffer );
 
     /* cleanup */
@@ -3048,23 +3048,23 @@ static void test_classesroot(void)
 
     /* delete subkey1 from hkcr (should point at user's classes) */
     res = RegDeleteKeyA(hkcr, "subkey1");
-    ok(res == ERROR_SUCCESS, "RegDeleteKey failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegDeleteKey failed: %ld\n", res);
 
     /* confirm key was removed in hkey but not hklm */
     res = RegOpenKeyExA(hkey, "subkey1", 0, KEY_READ, &hkeysub1);
-    ok(res == ERROR_FILE_NOT_FOUND, "test key found in user's classes: %d\n", res);
+    ok(res == ERROR_FILE_NOT_FOUND, "test key found in user's classes: %ld\n", res);
     res = RegOpenKeyExA(hklm, "subkey1", 0, KEY_READ, &hklmsub1);
-    ok(res == ERROR_SUCCESS, "test key not found in hklm: %d\n", res);
+    ok(res == ERROR_SUCCESS, "test key not found in hklm: %ld\n", res);
     ok(!IS_HKCR(hklmsub1), "hkcr mask set in %p\n", hklmsub1);
 
     /* delete subkey1 from hkcr again (which should now point at hklm) */
     res = RegDeleteKeyA(hkcr, "subkey1");
-    ok(res == ERROR_SUCCESS, "RegDeleteKey failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegDeleteKey failed: %ld\n", res);
 
     /* confirm hkey was removed in hklm */
     RegCloseKey( hklmsub1 );
     res = RegOpenKeyExA(hklm, "subkey1", 0, KEY_READ, &hklmsub1);
-    ok(res == ERROR_FILE_NOT_FOUND, "test key found in hklm: %d\n", res);
+    ok(res == ERROR_FILE_NOT_FOUND, "test key found in hklm: %ld\n", res);
 
     /* final cleanup */
     delete_key( hkey );
@@ -3110,7 +3110,7 @@ static void test_classesroot_enum(void)
     res = RegOpenKeyA( HKEY_CLASSES_ROOT, "WineTestCls", &hkcr );
     todo_wine ok(res == ERROR_SUCCESS ||
                  broken(res == ERROR_FILE_NOT_FOUND /* WinNT */),
-                 "test key not found in hkcr: %d\n", res);
+                 "test key not found in hkcr: %ld\n", res);
     if (res)
     {
         skip("HKCR key merging not supported\n");
@@ -3120,35 +3120,35 @@ static void test_classesroot_enum(void)
     }
 
     res = RegSetValueExA( hkcu, "X", 0, REG_SZ, (const BYTE *) "AA", 3 );
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld\n", res);
     res = RegSetValueExA( hkcu, "Y", 0, REG_SZ, (const BYTE *) "B", 2 );
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld\n", res);
     res = RegCreateKeyA( hkcu, "A", &hkcusub[0] );
-    ok(res == ERROR_SUCCESS, "RegCreateKeyA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegCreateKeyA failed: %ld\n", res);
     res = RegCreateKeyA( hkcu, "B", &hkcusub[1] );
-    ok(res == ERROR_SUCCESS, "RegCreateKeyA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegCreateKeyA failed: %ld\n", res);
 
     /* test on values in HKCU */
     size = sizeof(buffer);
     res = RegEnumValueA( hkcr, 0, buffer, &size, NULL, NULL, NULL, NULL );
-    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %ld\n", res );
     ok(!strcmp( buffer, "X" ), "expected 'X', got '%s'\n", buffer);
     size = sizeof(buffer);
     res = RegEnumValueA( hkcr, 1, buffer, &size, NULL, NULL, NULL, NULL );
-    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %ld\n", res );
     ok(!strcmp( buffer, "Y" ), "expected 'Y', got '%s'\n", buffer);
     size = sizeof(buffer);
     res = RegEnumValueA( hkcr, 2, buffer, &size, NULL, NULL, NULL, NULL );
-    ok(res == ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %d\n", res );
+    ok(res == ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %ld\n", res );
 
     res = RegEnumKeyA( hkcr, 0, buffer, size );
-    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %ld\n", res );
     ok(!strcmp( buffer, "A" ), "expected 'A', got '%s'\n", buffer);
     res = RegEnumKeyA( hkcr, 1, buffer, size );
-    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %ld\n", res );
     ok(!strcmp( buffer, "B" ), "expected 'B', got '%s'\n", buffer);
     res = RegEnumKeyA( hkcr, 2, buffer, size );
-    ok(res == ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %d\n", res );
+    ok(res == ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %ld\n", res );
 
     /* prepare test env in HKLM */
     if (!RegOpenKeyA( HKEY_LOCAL_MACHINE, "Software\\Classes\\WineTestCls", &hklm ))
@@ -3172,42 +3172,42 @@ static void test_classesroot_enum(void)
     }
 
     res = RegSetValueExA( hklm, "X", 0, REG_SZ, (const BYTE *) "AB", 3 );
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld\n", res);
     res = RegSetValueExA( hklm, "Z", 0, REG_SZ, (const BYTE *) "C", 2 );
-    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegSetValueExA failed: %ld\n", res);
     res = RegCreateKeyA( hklm, "A", &hklmsub[0] );
-    ok(res == ERROR_SUCCESS, "RegCreateKeyA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegCreateKeyA failed: %ld\n", res);
     res = RegCreateKeyA( hklm, "C", &hklmsub[1] );
-    ok(res == ERROR_SUCCESS, "RegCreateKeyA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegCreateKeyA failed: %ld\n", res);
 
     /* test on values/keys in both HKCU and HKLM */
     size = sizeof(buffer);
     res = RegEnumValueA( hkcr, 0, buffer, &size, NULL, NULL, NULL, NULL );
-    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %ld\n", res );
     ok(!strcmp( buffer, "X" ), "expected 'X', got '%s'\n", buffer);
     size = sizeof(buffer);
     res = RegEnumValueA( hkcr, 1, buffer, &size, NULL, NULL, NULL, NULL );
-    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %ld\n", res );
     ok(!strcmp( buffer, "Y" ), "expected 'Y', got '%s'\n", buffer);
     size = sizeof(buffer);
     res = RegEnumValueA( hkcr, 2, buffer, &size, NULL, NULL, NULL, NULL );
-    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %ld\n", res );
     ok(!strcmp( buffer, "Z" ), "expected 'Z', got '%s'\n", buffer);
     size = sizeof(buffer);
     res = RegEnumValueA( hkcr, 3, buffer, &size, NULL, NULL, NULL, NULL );
-    ok(res == ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %d\n", res );
+    ok(res == ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %ld\n", res );
 
     res = RegEnumKeyA( hkcr, 0, buffer, size );
-    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %ld\n", res );
     ok(!strcmp( buffer, "A" ), "expected 'A', got '%s'\n", buffer);
     res = RegEnumKeyA( hkcr, 1, buffer, size );
-    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %ld\n", res );
     ok(!strcmp( buffer, "B" ), "expected 'B', got '%s'\n", buffer);
     res = RegEnumKeyA( hkcr, 2, buffer, size );
-    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %ld\n", res );
     ok(!strcmp( buffer, "C" ), "expected 'C', got '%s'\n", buffer);
     res = RegEnumKeyA( hkcr, 3, buffer, size );
-    ok(res == ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %d\n", res );
+    ok(res == ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %ld\n", res );
 
     /* delete values/keys from HKCU to test only on HKLM */
     RegCloseKey( hkcusub[0] );
@@ -3219,40 +3219,40 @@ static void test_classesroot_enum(void)
     res = RegEnumValueA( hkcr, 0, buffer, &size, NULL, NULL, NULL, NULL );
     ok(res == ERROR_KEY_DELETED ||
        res == ERROR_NO_SYSTEM_RESOURCES, /* Windows XP */
-       "expected ERROR_KEY_DELETED, got %d\n", res);
+       "expected ERROR_KEY_DELETED, got %ld\n", res);
     size = sizeof(buffer);
     res = RegEnumKeyA( hkcr, 0, buffer, size );
     ok(res == ERROR_KEY_DELETED ||
        res == ERROR_NO_SYSTEM_RESOURCES, /* Windows XP */
-       "expected ERROR_KEY_DELETED, got %d\n", res);
+       "expected ERROR_KEY_DELETED, got %ld\n", res);
 
     /* reopen HKCR handle */
     RegCloseKey( hkcr );
     res = RegOpenKeyA( HKEY_CLASSES_ROOT, "WineTestCls", &hkcr );
-    ok(res == ERROR_SUCCESS, "test key not found in hkcr: %d\n", res);
+    ok(res == ERROR_SUCCESS, "test key not found in hkcr: %ld\n", res);
     if (res) goto cleanup;
 
     /* test on values/keys in HKLM */
     size = sizeof(buffer);
     res = RegEnumValueA( hkcr, 0, buffer, &size, NULL, NULL, NULL, NULL );
-    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %ld\n", res );
     ok(!strcmp( buffer, "X" ), "expected 'X', got '%s'\n", buffer);
     size = sizeof(buffer);
     res = RegEnumValueA( hkcr, 1, buffer, &size, NULL, NULL, NULL, NULL );
-    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumValueA failed: %ld\n", res );
     ok(!strcmp( buffer, "Z" ), "expected 'Z', got '%s'\n", buffer);
     size = sizeof(buffer);
     res = RegEnumValueA( hkcr, 2, buffer, &size, NULL, NULL, NULL, NULL );
-    ok(res == ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %d\n", res );
+    ok(res == ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %ld\n", res );
 
     res = RegEnumKeyA( hkcr, 0, buffer, size );
-    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %ld\n", res );
     ok(!strcmp( buffer, "A" ), "expected 'A', got '%s'\n", buffer);
     res = RegEnumKeyA( hkcr, 1, buffer, size );
-    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %d\n", res );
+    ok(res == ERROR_SUCCESS, "RegEnumKey failed: %ld\n", res );
     ok(!strcmp( buffer, "C" ), "expected 'C', got '%s'\n", buffer);
     res = RegEnumKeyA( hkcr, 2, buffer, size );
-    ok(res == ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %d\n", res );
+    ok(res == ERROR_NO_MORE_ITEMS, "expected ERROR_NO_MORE_ITEMS, got %ld\n", res );
 
 cleanup:
     RegCloseKey( hklmsub[0] );
@@ -3268,28 +3268,28 @@ static void test_classesroot_mask(void)
     LSTATUS res;
 
     res = RegOpenKeyA( HKEY_CLASSES_ROOT, "CLSID", &hkey );
-    ok(res == ERROR_SUCCESS, "RegOpenKeyA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegOpenKeyA failed: %ld\n", res);
     todo_wine ok(IS_HKCR(hkey) || broken(!IS_HKCR(hkey)) /* WinNT */,
                  "hkcr mask not set in %p\n", hkey);
     RegCloseKey( hkey );
 
     res = RegOpenKeyA( HKEY_CURRENT_USER, "Software", &hkey );
-    ok(res == ERROR_SUCCESS, "RegOpenKeyA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegOpenKeyA failed: %ld\n", res);
     ok(!IS_HKCR(hkey), "hkcr mask set in %p\n", hkey);
     RegCloseKey( hkey );
 
     res = RegOpenKeyA( HKEY_LOCAL_MACHINE, "Software", &hkey );
-    ok(res == ERROR_SUCCESS, "RegOpenKeyA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegOpenKeyA failed: %ld\n", res);
     ok(!IS_HKCR(hkey), "hkcr mask set in %p\n", hkey);
     RegCloseKey( hkey );
 
     res = RegOpenKeyA( HKEY_USERS, ".Default", &hkey );
-    ok(res == ERROR_SUCCESS, "RegOpenKeyA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegOpenKeyA failed: %ld\n", res);
     ok(!IS_HKCR(hkey), "hkcr mask set in %p\n", hkey);
     RegCloseKey( hkey );
 
     res = RegOpenKeyA( HKEY_CURRENT_CONFIG, "Software", &hkey );
-    ok(res == ERROR_SUCCESS, "RegOpenKeyA failed: %d\n", res);
+    ok(res == ERROR_SUCCESS, "RegOpenKeyA failed: %ld\n", res);
     ok(!IS_HKCR(hkey), "hkcr mask set in %p\n", hkey);
     RegCloseKey( hkey );
 }
@@ -3309,31 +3309,31 @@ static void test_deleted_key(void)
     val_count = sizeof(value);
     type = 0;
     res = RegEnumValueA( hkey, 0, value, &val_count, NULL, &type, 0, 0 );
-    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %i\n", res);
+    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %li\n", res);
 
     res = RegEnumKeyA( hkey, 0, value, sizeof(value) );
-    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %i\n", res);
+    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %li\n", res);
 
     val_count = sizeof(value);
     type = 0;
     res = RegQueryValueExA( hkey, "test", NULL, &type, (BYTE *)value, &val_count );
-    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %i\n", res);
+    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %li\n", res);
 
     res = RegSetValueExA( hkey, "test", 0, REG_SZ, (const BYTE*)"value", 6);
-    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %i\n", res);
+    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %li\n", res);
 
     res = RegOpenKeyA( hkey, "test", &hkey2 );
-    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %i\n", res);
+    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %li\n", res);
     if (res == 0)
         RegCloseKey( hkey2 );
 
     res = RegCreateKeyA( hkey, "test", &hkey2 );
-    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %i\n", res);
+    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %li\n", res);
     if (res == 0)
         RegCloseKey( hkey2 );
 
     res = RegFlushKey( hkey );
-    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %i\n", res);
+    ok(res == ERROR_KEY_DELETED, "expect ERROR_KEY_DELETED, got %li\n", res);
 
     RegCloseKey( hkey );
 
@@ -3346,38 +3346,38 @@ static void test_delete_value(void)
     char longname[401];
 
     res = RegSetValueExA( hkey_main, "test", 0, REG_SZ, (const BYTE*)"value", 6 );
-    ok(res == ERROR_SUCCESS, "expect ERROR_SUCCESS, got %i\n", res);
+    ok(res == ERROR_SUCCESS, "expect ERROR_SUCCESS, got %li\n", res);
 
     res = RegQueryValueExA( hkey_main, "test", NULL, NULL, NULL, NULL);
-    ok(res == ERROR_SUCCESS, "expect ERROR_SUCCESS, got %i\n", res);
+    ok(res == ERROR_SUCCESS, "expect ERROR_SUCCESS, got %li\n", res);
 
     res = RegDeleteValueA( hkey_main, "test" );
-    ok(res == ERROR_SUCCESS, "expect ERROR_SUCCESS, got %i\n", res);
+    ok(res == ERROR_SUCCESS, "expect ERROR_SUCCESS, got %li\n", res);
 
     res = RegQueryValueExA( hkey_main, "test", NULL, NULL, NULL, NULL);
-    ok(res == ERROR_FILE_NOT_FOUND, "expect ERROR_FILE_NOT_FOUND, got %i\n", res);
+    ok(res == ERROR_FILE_NOT_FOUND, "expect ERROR_FILE_NOT_FOUND, got %li\n", res);
 
     res = RegDeleteValueA( hkey_main, "test" );
-    ok(res == ERROR_FILE_NOT_FOUND, "expect ERROR_FILE_NOT_FOUND, got %i\n", res);
+    ok(res == ERROR_FILE_NOT_FOUND, "expect ERROR_FILE_NOT_FOUND, got %li\n", res);
 
     memset(longname, 'a', 400);
     longname[400] = 0;
     res = RegDeleteValueA( hkey_main, longname );
     ok(res == ERROR_FILE_NOT_FOUND || broken(res == ERROR_MORE_DATA), /* nt4, win2k */
-       "expect ERROR_FILE_NOT_FOUND, got %i\n", res);
+       "expect ERROR_FILE_NOT_FOUND, got %li\n", res);
 
     /* Default registry value */
     res = RegSetValueExA(hkey_main, "", 0, REG_SZ, (const BYTE *)"value", 6);
-    ok(res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", res);
+    ok(res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", res);
 
     res = RegQueryValueExA(hkey_main, "", NULL, NULL, NULL, NULL);
-    ok(res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", res);
+    ok(res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", res);
 
     res = RegDeleteValueA(hkey_main, "" );
-    ok(res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", res);
+    ok(res == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", res);
 
     res = RegQueryValueExA(hkey_main, "", NULL, NULL, NULL, NULL);
-    ok(res == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %d\n", res);
+    ok(res == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %ld\n", res);
 }
 
 static void test_delete_key_value(void)
@@ -3392,52 +3392,52 @@ static void test_delete_key_value(void)
     }
 
     ret = pRegDeleteKeyValueA(NULL, NULL, NULL);
-    ok(ret == ERROR_INVALID_HANDLE, "got %d\n", ret);
+    ok(ret == ERROR_INVALID_HANDLE, "got %ld\n", ret);
 
     ret = pRegDeleteKeyValueA(hkey_main, NULL, NULL);
-    ok(ret == ERROR_FILE_NOT_FOUND, "got %d\n", ret);
+    ok(ret == ERROR_FILE_NOT_FOUND, "got %ld\n", ret);
 
     ret = RegSetValueExA(hkey_main, "test", 0, REG_SZ, (const BYTE*)"value", 6);
-    ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
 
     ret = RegQueryValueExA(hkey_main, "test", NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
 
     /* NULL subkey name means delete from open key */
     ret = pRegDeleteKeyValueA(hkey_main, NULL, "test");
-    ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
 
     ret = RegQueryValueExA(hkey_main, "test", NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_FILE_NOT_FOUND, "got %d\n", ret);
+    ok(ret == ERROR_FILE_NOT_FOUND, "got %ld\n", ret);
 
     /* now with real subkey */
     ret = RegCreateKeyExA(hkey_main, "Subkey1", 0, NULL, 0, KEY_WRITE|KEY_READ, NULL, &subkey, NULL);
-    ok(!ret, "failed with error %d\n", ret);
+    ok(!ret, "failed with error %ld\n", ret);
 
     ret = RegSetValueExA(subkey, "test", 0, REG_SZ, (const BYTE*)"value", 6);
-    ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
 
     ret = RegQueryValueExA(subkey, "test", NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
 
     ret = pRegDeleteKeyValueA(hkey_main, "Subkey1", "test");
-    ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
 
     ret = RegQueryValueExA(subkey, "test", NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_FILE_NOT_FOUND, "got %d\n", ret);
+    ok(ret == ERROR_FILE_NOT_FOUND, "got %ld\n", ret);
 
     /* Default registry value */
     ret = RegSetValueExA(subkey, "", 0, REG_SZ, (const BYTE *)"value", 6);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = RegQueryValueExA(subkey, "", NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = pRegDeleteKeyValueA(hkey_main, "Subkey1", "" );
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = RegQueryValueExA(subkey, "", NULL, NULL, NULL, NULL);
-    ok(ret == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %d\n", ret);
+    ok(ret == ERROR_FILE_NOT_FOUND, "expected ERROR_FILE_NOT_FOUND, got %ld\n", ret);
 
     RegDeleteKeyA(subkey, "");
     RegCloseKey(subkey);
@@ -3450,7 +3450,7 @@ static void test_RegOpenCurrentUser(void)
 
     key = HKEY_CURRENT_USER;
     ret = RegOpenCurrentUser(KEY_READ, &key);
-    ok(!ret, "got %d, error %d\n", ret, GetLastError());
+    ok(!ret, "got %ld, error %ld\n", ret, GetLastError());
     ok(key != HKEY_CURRENT_USER, "got %p\n", key);
     RegCloseKey(key);
 }
@@ -3468,7 +3468,7 @@ static DWORD WINAPI notify_change_thread(void *arg)
 
     ret = RegNotifyChangeKeyValue(data->key, TRUE,
             REG_NOTIFY_CHANGE_NAME|data->flags, data->event, TRUE);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     return 0;
 }
 
@@ -3482,56 +3482,56 @@ static void test_RegNotifyChangeKeyValue(void)
     LONG ret;
 
     event = CreateEventW(NULL, FALSE, TRUE, NULL);
-    ok(event != NULL, "CreateEvent failed, error %u\n", GetLastError());
+    ok(event != NULL, "CreateEvent failed, error %lu\n", GetLastError());
     ret = RegCreateKeyA(hkey_main, "TestKey", &key);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = RegNotifyChangeKeyValue(key, TRUE, REG_NOTIFY_CHANGE_NAME|REG_NOTIFY_CHANGE_LAST_SET, event, TRUE);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     dwret = WaitForSingleObject(event, 0);
-    ok(dwret == WAIT_TIMEOUT, "expected WAIT_TIMEOUT, got %u\n", dwret);
+    ok(dwret == WAIT_TIMEOUT, "expected WAIT_TIMEOUT, got %lu\n", dwret);
 
     ret = RegCreateKeyA(key, "SubKey", &subkey);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     dwret = WaitForSingleObject(event, 0);
-    ok(dwret == WAIT_OBJECT_0, "expected WAIT_OBJECT_0, got %u\n", dwret);
+    ok(dwret == WAIT_OBJECT_0, "expected WAIT_OBJECT_0, got %lu\n", dwret);
 
     /* watching deeper keys */
     ret = RegNotifyChangeKeyValue(key, TRUE, REG_NOTIFY_CHANGE_NAME|REG_NOTIFY_CHANGE_LAST_SET, event, TRUE);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     dwret = WaitForSingleObject(event, 0);
-    ok(dwret == WAIT_TIMEOUT, "expected WAIT_TIMEOUT, got %u\n", dwret);
+    ok(dwret == WAIT_TIMEOUT, "expected WAIT_TIMEOUT, got %lu\n", dwret);
 
     ret = RegCreateKeyA(subkey, "SubKey", &subsubkey);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     dwret = WaitForSingleObject(event, 0);
-    ok(dwret == WAIT_OBJECT_0, "expected WAIT_OBJECT_0, got %u\n", dwret);
+    ok(dwret == WAIT_OBJECT_0, "expected WAIT_OBJECT_0, got %lu\n", dwret);
 
     /* watching deeper values */
     ret = RegNotifyChangeKeyValue(key, TRUE, REG_NOTIFY_CHANGE_NAME|REG_NOTIFY_CHANGE_LAST_SET, event, TRUE);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     dwret = WaitForSingleObject(event, 0);
-    ok(dwret == WAIT_TIMEOUT, "expected WAIT_TIMEOUT, got %u\n", dwret);
+    ok(dwret == WAIT_TIMEOUT, "expected WAIT_TIMEOUT, got %lu\n", dwret);
 
     ret = RegSetValueA(subsubkey, NULL, REG_SZ, "SubSubKeyValue", 0);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     dwret = WaitForSingleObject(event, 0);
-    ok(dwret == WAIT_OBJECT_0, "expected WAIT_OBJECT_0, got %u\n", dwret);
+    ok(dwret == WAIT_OBJECT_0, "expected WAIT_OBJECT_0, got %lu\n", dwret);
 
     /* don't watch deeper values */
     RegCloseKey(key);
     ret = RegOpenKeyA(hkey_main, "TestKey", &key);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     ret = RegNotifyChangeKeyValue(key, FALSE, REG_NOTIFY_CHANGE_NAME|REG_NOTIFY_CHANGE_LAST_SET, event, TRUE);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     dwret = WaitForSingleObject(event, 0);
-    ok(dwret == WAIT_TIMEOUT, "expected WAIT_TIMEOUT, got %u\n", dwret);
+    ok(dwret == WAIT_TIMEOUT, "expected WAIT_TIMEOUT, got %lu\n", dwret);
 
     ret = RegSetValueA(subsubkey, NULL, REG_SZ, "SubSubKeyValueNEW", 0);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     dwret = WaitForSingleObject(event, 0);
-    ok(dwret == WAIT_TIMEOUT, "expected WAIT_TIMEOUT, got %u\n", dwret);
+    ok(dwret == WAIT_TIMEOUT, "expected WAIT_TIMEOUT, got %lu\n", dwret);
 
     RegDeleteKeyA(subkey, "SubKey");
     RegDeleteKeyA(key, "SubKey");
@@ -3541,7 +3541,7 @@ static void test_RegNotifyChangeKeyValue(void)
 
     /* test same thread with REG_NOTIFY_THREAD_AGNOSTIC */
     ret = RegOpenKeyA(hkey_main, "TestKey", &key);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     ret = RegNotifyChangeKeyValue(key, TRUE, REG_NOTIFY_CHANGE_NAME|REG_NOTIFY_THREAD_AGNOSTIC,
             event, TRUE);
     if (ret == ERROR_INVALID_PARAMETER)
@@ -3553,9 +3553,9 @@ static void test_RegNotifyChangeKeyValue(void)
     }
 
     ret = RegCreateKeyA(key, "SubKey", &subkey);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
     dwret = WaitForSingleObject(event, 0);
-    ok(dwret == WAIT_OBJECT_0, "expected WAIT_OBJECT_0, got %u\n", dwret);
+    ok(dwret == WAIT_OBJECT_0, "expected WAIT_OBJECT_0, got %lu\n", dwret);
 
     RegDeleteKeyA(key, "SubKey");
     RegCloseKey(subkey);
@@ -3563,7 +3563,7 @@ static void test_RegNotifyChangeKeyValue(void)
 
     /* test different thread without REG_NOTIFY_THREAD_AGNOSTIC */
     ret = RegOpenKeyA(hkey_main, "TestKey", &key);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     data.key = key;
     data.flags = 0;
@@ -3577,12 +3577,12 @@ static void test_RegNotifyChangeKeyValue(void)
        Wine already behaves as if the flag is set */
     dwret = WaitForSingleObject(event, 0);
     todo_wine
-    ok(dwret == WAIT_OBJECT_0, "expected WAIT_OBJECT_0, got %u\n", dwret);
+    ok(dwret == WAIT_OBJECT_0, "expected WAIT_OBJECT_0, got %lu\n", dwret);
     RegCloseKey(key);
 
     /* test different thread with REG_NOTIFY_THREAD_AGNOSTIC */
     ret = RegOpenKeyA(hkey_main, "TestKey", &key);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     data.flags = REG_NOTIFY_THREAD_AGNOSTIC;
     thread = CreateThread(NULL, 0, notify_change_thread, &data, 0, NULL);
@@ -3590,13 +3590,13 @@ static void test_RegNotifyChangeKeyValue(void)
     CloseHandle(thread);
 
     dwret = WaitForSingleObject(event, 0);
-    ok(dwret == WAIT_TIMEOUT, "expected WAIT_TIMEOUT, got %u\n", dwret);
+    ok(dwret == WAIT_TIMEOUT, "expected WAIT_TIMEOUT, got %lu\n", dwret);
 
     ret = RegCreateKeyA(key, "SubKey", &subkey);
-    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
 
     dwret = WaitForSingleObject(event, 0);
-    ok(dwret == WAIT_OBJECT_0, "expected WAIT_OBJECT_0, got %u\n", dwret);
+    ok(dwret == WAIT_OBJECT_0, "expected WAIT_OBJECT_0, got %lu\n", dwret);
 
     RegDeleteKeyA(key, "SubKey");
     RegDeleteKeyA(key, "");
@@ -3705,18 +3705,18 @@ static void test_performance_keys(void)
 
             size = 0;
             ret = RegQueryValueExA(keys[i], names[j], NULL, NULL, NULL, &size);
-            ok(ret == ERROR_MORE_DATA, "got %u\n", ret);
-            ok(!size, "got size %u\n", size);
+            ok(ret == ERROR_MORE_DATA, "got %lu\n", ret);
+            ok(!size, "got size %lu\n", size);
 
             size = 10;
             ret = RegQueryValueExA(keys[i], names[j], NULL, NULL, buffer, &size);
-            ok(ret == ERROR_MORE_DATA, "got %u\n", ret);
+            ok(ret == ERROR_MORE_DATA, "got %lu\n", ret);
             todo_wine
-                ok(size == 10, "got size %u\n", size);
+                ok(size == 10, "got size %lu\n", size);
 
             size = buffer_size;
             ret = RegQueryValueExA(keys[i], names[j], NULL, NULL, NULL, &size);
-            ok(ret == ERROR_MORE_DATA, "got %u\n", ret);
+            ok(ret == ERROR_MORE_DATA, "got %lu\n", ret);
 
             QueryPerformanceCounter(&perftime1);
             NtQuerySystemTime(&systime1);
@@ -3724,9 +3724,9 @@ static void test_performance_keys(void)
             size = buffer_size;
             type = 0xdeadbeef;
             ret = RegQueryValueExA(keys[i], names[j], NULL, &type, buffer, &size);
-            ok(!ret, "got %u\n", ret);
-            ok(type == REG_BINARY, "got type %u\n", type);
-            ok(size >= sizeof(PERF_DATA_BLOCK) && size < buffer_size, "got size %u\n", size);
+            ok(!ret, "got %lu\n", ret);
+            ok(type == REG_BINARY, "got type %lu\n", type);
+            ok(size >= sizeof(PERF_DATA_BLOCK) && size < buffer_size, "got size %lu\n", size);
 
             QueryPerformanceCounter(&perftime2);
             NtQuerySystemTime(&systime2);
@@ -3734,19 +3734,19 @@ static void test_performance_keys(void)
             data = buffer;
             ok(!wcsncmp(data->Signature, L"PERF", 4), "got signature %s\n",
                     debugstr_wn(data->Signature, 4));
-            ok(data->LittleEndian == 1, "got endianness %u\n", data->LittleEndian);
-            ok(data->Version == 1, "got version %u\n", data->Version);
-            ok(data->Revision == 1, "got version %u\n", data->Revision);
-            ok(data->TotalByteLength == size, "expected size %u, got %u\n",
+            ok(data->LittleEndian == 1, "got endianness %lu\n", data->LittleEndian);
+            ok(data->Version == 1, "got version %lu\n", data->Version);
+            ok(data->Revision == 1, "got version %lu\n", data->Revision);
+            ok(data->TotalByteLength == size, "expected size %lu, got %lu\n",
                     size, data->TotalByteLength);
 
             expect_size = sizeof(PERF_DATA_BLOCK) + data->SystemNameLength;
             expect_size = (expect_size + 7) & ~7;
 
-            ok(data->HeaderLength == expect_size, "expected header size %u, got %u\n",
+            ok(data->HeaderLength == expect_size, "expected header size %lu, got %lu\n",
                     expect_size, data->HeaderLength);
             /* todo: test objects... */
-            todo_wine ok(data->DefaultObject == 238, "got default object %u\n", data->DefaultObject);
+            todo_wine ok(data->DefaultObject == 238, "got default object %lu\n", data->DefaultObject);
 
             ok(data->PerfTime.QuadPart >= perftime1.QuadPart
                     && data->PerfTime.QuadPart <= perftime2.QuadPart,
@@ -3764,10 +3764,10 @@ static void test_performance_keys(void)
                     "got times %I64u, %I64u, %I64u\n", systime1.QuadPart, file_time.l, systime2.QuadPart);
 
             ok(data->SystemNameLength == (sysname_len + 1) * sizeof(WCHAR),
-                    "expected name len %u, got %u\n",
+                    "expected name len %Iu, got %lu\n",
                     (sysname_len + 1) * sizeof(WCHAR), data->SystemNameLength);
             ok(data->SystemNameOffset == sizeof(PERF_DATA_BLOCK),
-                    "got name offset %u\n", data->SystemNameOffset);
+                    "got name offset %lu\n", data->SystemNameOffset);
             ok(!wcscmp(sysname, (const WCHAR *)(data + 1)), "expected name %s, got %s\n",
                     debugstr_w(sysname), debugstr_w((const WCHAR *)(data + 1)));
 
@@ -3778,40 +3778,40 @@ static void test_performance_keys(void)
 
         size = 0xdeadbeef;
         ret = RegQueryValueExA(keys[i], "cOuNtEr", NULL, NULL, NULL, &size);
-        ok(!ret, "got %u\n", ret);
-        ok(size > 0 && size < 0xdeadbeef, "got size %u\n", size);
+        ok(!ret, "got %lu\n", ret);
+        ok(size > 0 && size < 0xdeadbeef, "got size %lu\n", size);
 
         type = 0xdeadbeef;
         size = 0;
         ret = RegQueryValueExA(keys[i], "cOuNtEr", NULL, &type, buffer, &size);
-        ok(ret == ERROR_MORE_DATA, "got %u\n", ret);
-        ok(size > 0, "got size %u\n", size);
+        ok(ret == ERROR_MORE_DATA, "got %lu\n", ret);
+        ok(size > 0, "got size %lu\n", size);
 
         type = 0xdeadbeef;
         size = buffer_size;
         ret = RegQueryValueExA(keys[i], "cOuNtEr", NULL, &type, buffer, &size);
-        ok(!ret, "got %u\n", ret);
-        ok(type == REG_MULTI_SZ, "got type %u\n", type);
+        ok(!ret, "got %lu\n", ret);
+        ok(type == REG_MULTI_SZ, "got type %lu\n", type);
         test_counter_values(buffer, keys[i]);
 
         type = 0xdeadbeef;
         size = buffer_size;
         ret = RegQueryValueExA(keys[i], "cOuNtErwine", NULL, &type, buffer, &size);
-        ok(!ret, "got %u\n", ret);
-        ok(type == REG_MULTI_SZ, "got type %u\n", type);
+        ok(!ret, "got %lu\n", ret);
+        ok(type == REG_MULTI_SZ, "got type %lu\n", type);
         test_counter_values(buffer, keys[i]);
 
         size = 0;
         ret = RegQueryValueExW(keys[i], L"cOuNtEr", NULL, NULL, NULL, &size);
-        ok(!ret, "got %u\n", ret);
-        ok(size > 0, "got size %u\n", size);
+        ok(!ret, "got %lu\n", ret);
+        ok(size > 0, "got size %lu\n", size);
 
         bufferW = malloc(size);
 
         type = 0xdeadbeef;
         ret = RegQueryValueExW(keys[i], L"cOuNtEr", NULL, &type, bufferW, &size);
-        ok(!ret, "got %u\n", ret);
-        ok(type == REG_MULTI_SZ, "got type %u\n", type);
+        ok(!ret, "got %lu\n", ret);
+        ok(type == REG_MULTI_SZ, "got type %lu\n", type);
         WideCharToMultiByte(CP_ACP, 0, bufferW, size / sizeof(WCHAR), buffer, buffer_size, NULL, NULL);
         test_counter_values(buffer, keys[i]);
 
@@ -3819,14 +3819,14 @@ static void test_performance_keys(void)
 
         size = 0xdeadbeef;
         ret = RegQueryValueExA(keys[i], "hElP", NULL, NULL, NULL, &size);
-        ok(!ret, "got %u\n", ret);
-        ok(size > 0 && size < 0xdeadbeef, "got size %u\n", size);
+        ok(!ret, "got %lu\n", ret);
+        ok(size > 0 && size < 0xdeadbeef, "got size %lu\n", size);
 
         type = 0xdeadbeef;
         size = 0;
         ret = RegQueryValueExA(keys[i], "hElP", NULL, &type, buffer, &size);
-        ok(ret == ERROR_MORE_DATA, "got %u\n", ret);
-        ok(size > 0, "got size %u\n", size);
+        ok(ret == ERROR_MORE_DATA, "got %lu\n", ret);
+        ok(size > 0, "got size %lu\n", size);
 
         type = 0xdeadbeef;
         size = buffer_size;
@@ -3836,92 +3836,92 @@ static void test_performance_keys(void)
         type = 0xdeadbeef;
         size = buffer_size;
         ret = RegQueryValueExA(keys[i], "hElPwine", NULL, &type, buffer, &size);
-        ok(!ret, "got %u\n", ret);
-        ok(type == REG_MULTI_SZ, "got type %u\n", type);
+        ok(!ret, "got %lu\n", ret);
+        ok(type == REG_MULTI_SZ, "got type %lu\n", type);
         test_help_values(buffer, keys[i]);
 
         size = 0;
         ret = RegQueryValueExW(keys[i], L"hElP", NULL, NULL, NULL, &size);
-        ok(!ret, "got %u\n", ret);
-        ok(size > 0, "got size %u\n", size);
+        ok(!ret, "got %lu\n", ret);
+        ok(size > 0, "got size %lu\n", size);
 
         bufferW = malloc(size);
 
         type = 0xdeadbeef;
         ret = RegQueryValueExW(keys[i], L"hElP", NULL, &type, bufferW, &size);
-        ok(!ret, "got %u\n", ret);
-        ok(type == REG_MULTI_SZ, "got type %u\n", type);
+        ok(!ret, "got %lu\n", ret);
+        ok(type == REG_MULTI_SZ, "got type %lu\n", type);
         WideCharToMultiByte(CP_ACP, 0, bufferW, size / sizeof(WCHAR), buffer, buffer_size, NULL, NULL);
         test_help_values(buffer, keys[i]);
 
         /* test other registry APIs */
 
         ret = RegOpenKeyA(keys[i], NULL, &key);
-        todo_wine ok(ret == ERROR_INVALID_HANDLE, "got %u\n", ret);
+        todo_wine ok(ret == ERROR_INVALID_HANDLE, "got %lu\n", ret);
 
         ret = RegOpenKeyA(keys[i], "Global", &key);
-        ok(ret == ERROR_INVALID_HANDLE, "got %u\n", ret);
+        ok(ret == ERROR_INVALID_HANDLE, "got %lu\n", ret);
 
         ret = RegOpenKeyExA(keys[i], "Global", 0, KEY_READ, &key);
-        ok(ret == ERROR_INVALID_HANDLE, "got %u\n", ret);
+        ok(ret == ERROR_INVALID_HANDLE, "got %lu\n", ret);
 
         size = 0;
         ret = RegQueryValueA(keys[i], "Global", NULL, (LONG *)&size);
-        ok(ret == ERROR_INVALID_HANDLE, "got %u\n", ret);
+        ok(ret == ERROR_INVALID_HANDLE, "got %lu\n", ret);
 
         ret = RegSetValueA(keys[i], "Global", REG_SZ, "dummy", 5);
-        ok(ret == ERROR_INVALID_HANDLE, "got %u\n", ret);
+        ok(ret == ERROR_INVALID_HANDLE, "got %lu\n", ret);
 
         key_count = 0x900ddeed;
         ret = RegQueryInfoKeyA(keys[i], NULL, NULL, NULL, &key_count, NULL,
                 NULL, &value_count, NULL, NULL, NULL, NULL);
-        todo_wine ok(!ret, "got %u\n", ret);
-        todo_wine ok(!key_count, "got %u subkeys\n", key_count);
-        todo_wine ok(value_count == 2, "got %u values\n", value_count);
+        todo_wine ok(!ret, "got %lu\n", ret);
+        todo_wine ok(!key_count, "got %lu subkeys\n", key_count);
+        todo_wine ok(value_count == 2, "got %lu values\n", value_count);
 
         size = buffer_size;
         ret = RegEnumValueA(keys[i], 0, buffer, &size, NULL, NULL, NULL, NULL);
-        todo_wine ok(ret == ERROR_MORE_DATA, "got %u\n", ret);
-        ok(size == buffer_size, "got size %u\n", size);
+        todo_wine ok(ret == ERROR_MORE_DATA, "got %lu\n", ret);
+        ok(size == buffer_size, "got size %lu\n", size);
 
         ret = RegCloseKey(keys[i]);
-        ok(!ret, "got %u\n", ret);
+        ok(!ret, "got %lu\n", ret);
 
         ret = RegCloseKey(keys[i]);
-        ok(!ret, "got %u\n", ret);
+        ok(!ret, "got %lu\n", ret);
 
         winetest_pop_context();
     }
 
     ret = RegSetValueExA(HKEY_PERFORMANCE_DATA, "Global", 0, REG_SZ, (const BYTE *)"dummy", 5);
-    ok(ret == ERROR_INVALID_HANDLE, "got %u\n", ret);
+    ok(ret == ERROR_INVALID_HANDLE, "got %lu\n", ret);
 
     ret = RegSetValueExA(HKEY_PERFORMANCE_TEXT, "Global", 0, REG_SZ, (const BYTE *)"dummy", 5);
-    todo_wine ok(ret == ERROR_BADKEY, "got %u\n", ret);
+    todo_wine ok(ret == ERROR_BADKEY, "got %lu\n", ret);
 
     ret = RegSetValueExA(HKEY_PERFORMANCE_NLSTEXT, "Global", 0, REG_SZ, (const BYTE *)"dummy", 5);
-    todo_wine ok(ret == ERROR_BADKEY, "got %u\n", ret);
+    todo_wine ok(ret == ERROR_BADKEY, "got %lu\n", ret);
 
     if (pRegSetKeyValueW)
     {
         ret = pRegSetKeyValueW(HKEY_PERFORMANCE_DATA, NULL, L"Global", REG_SZ, L"dummy", 10);
-        ok(ret == ERROR_INVALID_HANDLE, "got %u\n", ret);
+        ok(ret == ERROR_INVALID_HANDLE, "got %lu\n", ret);
 
         ret = pRegSetKeyValueW(HKEY_PERFORMANCE_TEXT, NULL, L"Global", REG_SZ, L"dummy", 10);
-        todo_wine ok(ret == ERROR_BADKEY, "got %u\n", ret);
+        todo_wine ok(ret == ERROR_BADKEY, "got %lu\n", ret);
 
         ret = pRegSetKeyValueW(HKEY_PERFORMANCE_NLSTEXT, NULL, L"Global", REG_SZ, L"dummy", 10);
-        todo_wine ok(ret == ERROR_BADKEY, "got %u\n", ret);
+        todo_wine ok(ret == ERROR_BADKEY, "got %lu\n", ret);
     }
 
     ret = RegEnumKeyA(HKEY_PERFORMANCE_DATA, 0, buffer, buffer_size);
-    ok(ret == ERROR_INVALID_HANDLE, "got %u\n", ret);
+    ok(ret == ERROR_INVALID_HANDLE, "got %lu\n", ret);
 
     ret = RegEnumKeyA(HKEY_PERFORMANCE_TEXT, 0, buffer, buffer_size);
-    todo_wine ok(ret == ERROR_NO_MORE_ITEMS, "got %u\n", ret);
+    todo_wine ok(ret == ERROR_NO_MORE_ITEMS, "got %lu\n", ret);
 
     ret = RegEnumKeyA(HKEY_PERFORMANCE_NLSTEXT, 0, buffer, buffer_size);
-    todo_wine ok(ret == ERROR_NO_MORE_ITEMS, "got %u\n", ret);
+    todo_wine ok(ret == ERROR_NO_MORE_ITEMS, "got %lu\n", ret);
 
     free(buffer);
 }
@@ -3942,22 +3942,22 @@ static void test_perflib_key(void)
 
     ret = RegOpenKeyExA(HKEY_LOCAL_MACHINE,
             "Software\\Microsoft\\Windows NT\\CurrentVersion\\Perflib", 0, KEY_READ, &perflib_key);
-    ok(!ret, "got %u\n", ret);
+    ok(!ret, "got %lu\n", ret);
 
     ret = RegOpenKeyExA(perflib_key, "009", 0, KEY_READ, &key);
-    ok(!ret, "got %u\n", ret);
+    ok(!ret, "got %lu\n", ret);
     /* English always returns TEXT; most other languages return NLSTEXT, but
      * some (e.g. Hindi) return TEXT */
     ok(key == HKEY_PERFORMANCE_TEXT || key == HKEY_PERFORMANCE_NLSTEXT, "got key %p\n", key);
 
     ret = RegCloseKey(key);
-    ok(!ret, "got %u\n", ret);
+    ok(!ret, "got %lu\n", ret);
 
     RtlInitUnicodeString(&string, L"009");
     InitializeObjectAttributes(&attr, &string, OBJ_CASE_INSENSITIVE, perflib_key, NULL);
     ret = NtOpenKey((HANDLE *)&key, KEY_ALL_ACCESS, &attr);
     ok(ret == STATUS_PREDEFINED_HANDLE || ret == STATUS_ACCESS_DENIED
-            || ret == STATUS_SUCCESS /* Win < 7 */, "got %#x\n", ret);
+            || ret == STATUS_SUCCESS /* Win < 7 */, "got %#lx\n", ret);
     if (ret == STATUS_PREDEFINED_HANDLE)
         ok(!is_special_key(key), "expected a normal handle, got %p\n", key);
     else if (ret == STATUS_SUCCESS)
@@ -3972,42 +3972,42 @@ static void test_perflib_key(void)
     buffer = malloc(buffer_size);
 
     ret = NtQueryKey(key, KeyFullInformation, buffer, buffer_size, &size);
-    ok(ret == STATUS_INVALID_HANDLE, "got %#x\n", ret);
+    ok(ret == STATUS_INVALID_HANDLE, "got %#lx\n", ret);
 
     ret = NtEnumerateKey(key, 0, KeyFullInformation, buffer, buffer_size, &size);
-    ok(ret == STATUS_INVALID_HANDLE, "got %#x\n", ret);
+    ok(ret == STATUS_INVALID_HANDLE, "got %#lx\n", ret);
 
     RtlInitUnicodeString(&string, L"counter");
     ret = NtQueryValueKey(key, &string, KeyValuePartialInformation, buffer, buffer_size, &size);
-    ok(ret == STATUS_INVALID_HANDLE, "got %#x\n", ret);
+    ok(ret == STATUS_INVALID_HANDLE, "got %#lx\n", ret);
 
     ret = NtEnumerateValueKey(key, 0, KeyValuePartialInformation, buffer, buffer_size, &size);
-    ok(ret == STATUS_INVALID_HANDLE, "got %#x\n", ret);
+    ok(ret == STATUS_INVALID_HANDLE, "got %#lx\n", ret);
 
     ret = NtSetValueKey(key, &string, 0, REG_SZ, "test", 5);
-    ok(ret == STATUS_INVALID_HANDLE, "got %#x\n", ret);
+    ok(ret == STATUS_INVALID_HANDLE, "got %#lx\n", ret);
 
     ret = NtDeleteValueKey(key, &string);
-    ok(ret == STATUS_INVALID_HANDLE, "got %#x\n", ret);
+    ok(ret == STATUS_INVALID_HANDLE, "got %#lx\n", ret);
 
     ret = NtDeleteKey(key);
-    ok(ret == STATUS_INVALID_HANDLE, "got %#x\n", ret);
+    ok(ret == STATUS_INVALID_HANDLE, "got %#lx\n", ret);
 
     RtlInitUnicodeString(&string, L"subkey");
     InitializeObjectAttributes(&attr, &string, OBJ_CASE_INSENSITIVE, key, NULL);
     ret = NtOpenKey((HANDLE *)&key2, KEY_READ, &attr);
     if (is_special_key(key))
-        ok(ret == STATUS_INVALID_HANDLE, "got %#x\n", ret);
+        ok(ret == STATUS_INVALID_HANDLE, "got %#lx\n", ret);
     else
         ok(ret == STATUS_OBJECT_NAME_NOT_FOUND
-                || broken(ret == STATUS_INVALID_HANDLE) /* WoW64 */, "got %#x\n", ret);
+                || broken(ret == STATUS_INVALID_HANDLE) /* WoW64 */, "got %#lx\n", ret);
 
     ret = NtCreateKey((HANDLE *)&key2, KEY_ALL_ACCESS, &attr, 0, NULL, 0, NULL);
     if (is_special_key(key))
-        ok(ret == STATUS_INVALID_HANDLE, "got %#x\n", ret);
+        ok(ret == STATUS_INVALID_HANDLE, "got %#lx\n", ret);
     else
         ok(!ret || broken(ret == STATUS_ACCESS_DENIED) /* w8adm */
-                || broken(ret == STATUS_INVALID_HANDLE) /* WoW64 */, "got %#x\n", ret);
+                || broken(ret == STATUS_INVALID_HANDLE) /* WoW64 */, "got %#lx\n", ret);
     if (!ret)
     {
         NtDeleteKey(key2);
@@ -4017,9 +4017,9 @@ static void test_perflib_key(void)
     /* it's a real handle, though */
     ret = NtQueryObject(key, ObjectNameInformation, buffer, buffer_size, &size);
     if (is_special_key(key))
-        ok(ret == STATUS_INVALID_HANDLE, "got %#x\n", ret);
+        ok(ret == STATUS_INVALID_HANDLE, "got %#lx\n", ret);
     else
-        ok(!ret, "got %#x\n", ret);
+        ok(!ret, "got %#lx\n", ret);
     if (!ret)
     {
         name_info = (OBJECT_NAME_INFORMATION *)buffer;
@@ -4029,21 +4029,21 @@ static void test_perflib_key(void)
 
     ret = NtClose(key);
     if (is_special_key(key))
-        ok(ret == STATUS_INVALID_HANDLE, "got %#x\n", ret);
+        ok(ret == STATUS_INVALID_HANDLE, "got %#lx\n", ret);
     else
-        ok(!ret, "got %#x\n", ret);
+        ok(!ret, "got %#lx\n", ret);
 
     for (l = 0; l < ARRAY_SIZE(knames); l++)
     {
-        winetest_push_context("%d", l);
+        winetest_push_context("%ld", l);
       todo_wine_if(l == 1) {
         ret = RegOpenKeyExA(perflib_key, knames[l], 0, KEY_READ, &key);
-        ok(!ret, "got %u\n", ret);
+        ok(!ret, "got %lu\n", ret);
         if (is_special_key(key))
         {
             size = buffer_size;
             ret = RegQueryValueExA(key, "counter", NULL, NULL, (BYTE *)buffer, &size);
-            ok(!ret, "got %u\n", ret);
+            ok(!ret, "got %lu\n", ret);
             if (!ret)
             {
                 char *str;
@@ -4066,7 +4066,7 @@ static void test_perflib_key(void)
         }
 
         ret = RegCloseKey(key);
-        ok(!ret, "got %u\n", ret);
+        ok(!ret, "got %lu\n", ret);
       }
         winetest_pop_context();
     }
@@ -4089,22 +4089,22 @@ static void test_perflib_key(void)
 
         size = buffer_size;
         ret = RegQueryValueExA(key, "counter", NULL, NULL, (BYTE *)buffer, &size);
-        todo_wine ok(ret == ERROR_FILE_NOT_FOUND, "got %u\n", ret);
+        todo_wine ok(ret == ERROR_FILE_NOT_FOUND, "got %lu\n", ret);
 
         ret = RegCloseKey(key);
-        todo_wine ok(!ret, "got %u\n", ret);
+        todo_wine ok(!ret, "got %lu\n", ret);
     }
     /* else some languages don't have their own key. The keys are not really
      * usable anyway so assume it does not really matter.
      */
 
     ret = RegCloseKey(perflib_key);
-    ok(!ret, "got %u\n", ret);
+    ok(!ret, "got %lu\n", ret);
 
     RtlInitUnicodeString(&string, L"\\Registry\\PerfData");
     InitializeObjectAttributes(&attr, &string, OBJ_CASE_INSENSITIVE, NULL, NULL);
     ret = NtOpenKey((HANDLE *)&key, KEY_READ, &attr);
-    ok(ret == STATUS_OBJECT_NAME_NOT_FOUND, "got %#x\n", ret);
+    ok(ret == STATUS_OBJECT_NAME_NOT_FOUND, "got %#lx\n", ret);
 
     free(buffer);
 }
@@ -4161,11 +4161,11 @@ static void test_RegLoadMUIString(void)
     ret = RegOpenKeyExA(HKEY_LOCAL_MACHINE,
                         "Software\\Microsoft\\Windows NT\\CurrentVersion\\Time Zones\\UTC", 0,
                         KEY_READ, &hkey);
-    ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
 
     size = ARRAY_SIZE(buf);
     ret = RegQueryValueExA(hkey, tz_value, NULL, &type, (BYTE *)buf, &size);
-    ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
     ok(buf[0] == '@', "got %s\n", buf);
 
     /* setup MUI string for tests */
@@ -4197,48 +4197,48 @@ static void test_RegLoadMUIString(void)
 
     size = 0xdeadbeef;
     ret = pRegLoadMUIStringW(hkey, tz_valueW, NULL, 0, &size, 0, NULL);
-    ok(ret == ERROR_MORE_DATA, "got %d, expected ERROR_MORE_DATA\n", ret);
-    ok(size == text_size, "got %u, expected %u\n", size, text_size);
+    ok(ret == ERROR_MORE_DATA, "got %ld, expected ERROR_MORE_DATA\n", ret);
+    ok(size == text_size, "got %lu, expected %lu\n", size, text_size);
 
     memset(bufW, 0xff, sizeof(bufW));
     ret = pRegLoadMUIStringW(hkey, tz_valueW, bufW, sizeof(WCHAR)+1, &size, 0, NULL);
-    ok(ret == ERROR_INVALID_PARAMETER, "got %d, expected ERROR_INVALID_PARAMETER\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "got %ld, expected ERROR_INVALID_PARAMETER\n", ret);
     ok(bufW[0] == 0xffff, "got 0x%04x, expected 0xffff\n", bufW[0]);
 
     size = 0xdeadbeef;
     memset(bufW, 0xff, sizeof(bufW));
     ret = pRegLoadMUIStringW(hkey, tz_valueW, bufW, sizeof(WCHAR)*2, &size, 0, NULL);
-    ok(ret == ERROR_MORE_DATA, "got %d, expected ERROR_MORE_DATA\n", ret);
+    ok(ret == ERROR_MORE_DATA, "got %ld, expected ERROR_MORE_DATA\n", ret);
     ok(size == text_size || broken(size == text_size + sizeof(WCHAR) /* vista */),
-       "got %u, expected %u\n", size, text_size);
+       "got %lu, expected %lu\n", size, text_size);
     ok(bufW[0] == 0xffff, "got 0x%04x, expected 0xffff\n", bufW[0]);
 
     memset(bufW, 0xff, sizeof(bufW));
     ret = pRegLoadMUIStringW(hkey, tz_valueW, bufW, sizeof(WCHAR)*2, &size, REG_MUI_STRING_TRUNCATE, NULL);
-    ok(ret == ERROR_INVALID_PARAMETER, "got %d, expected ERROR_INVALID_PARAMETER\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "got %ld, expected ERROR_INVALID_PARAMETER\n", ret);
     ok(bufW[0] == 0xffff, "got 0x%04x, expected 0xffff\n", bufW[0]);
 
     memset(bufW, 0xff, sizeof(bufW));
     ret = pRegLoadMUIStringW(hkey, tz_valueW, bufW, sizeof(WCHAR)*2, NULL, 0xdeadbeef, NULL);
-    ok(ret == ERROR_INVALID_PARAMETER, "got %d, expected ERROR_INVALID_PARAMETER\n", ret);
+    ok(ret == ERROR_INVALID_PARAMETER, "got %ld, expected ERROR_INVALID_PARAMETER\n", ret);
     ok(bufW[0] == 0xffff, "got 0x%04x, expected 0xffff\n", bufW[0]);
 
     memset(bufW, 0xff, sizeof(bufW));
     ret = pRegLoadMUIStringW(hkey, tz_valueW, bufW, sizeof(WCHAR)*2, NULL, REG_MUI_STRING_TRUNCATE, NULL);
-    ok(ret == ERROR_SUCCESS, "got %d, expected ERROR_SUCCESS\n", ret);
+    ok(ret == ERROR_SUCCESS, "got %ld, expected ERROR_SUCCESS\n", ret);
     ok(bufW[0] == textW[0], "got 0x%04x, expected 0x%04x\n", bufW[0], textW[0]);
     ok(bufW[1] == 0, "got 0x%04x, expected nul\n", bufW[1]);
 
     size = 0xdeadbeef;
     memset(bufW, 0xff, sizeof(bufW));
     ret = pRegLoadMUIStringW(hkey, tz_valueW, bufW, ARRAY_SIZE(bufW), &size, 0, NULL);
-    ok(ret == ERROR_SUCCESS, "got %d, expected ERROR_SUCCESS\n", ret);
-    ok(size == text_size, "got %u, expected %u\n", size, text_size);
+    ok(ret == ERROR_SUCCESS, "got %ld, expected ERROR_SUCCESS\n", ret);
+    ok(size == text_size, "got %lu, expected %lu\n", size, text_size);
     ok(!memcmp(textW, bufW, size), "got %s, expected %s\n",
        wine_dbgstr_wn(bufW, size / sizeof(WCHAR)), wine_dbgstr_wn(textW, text_size / sizeof(WCHAR)));
 
     ret = pRegLoadMUIStringA(hkey, tz_value, buf, ARRAY_SIZE(buf), &size, 0, NULL);
-    ok(ret == ERROR_CALL_NOT_IMPLEMENTED, "got %d, expected ERROR_CALL_NOT_IMPLEMENTED\n", ret);
+    ok(ret == ERROR_CALL_NOT_IMPLEMENTED, "got %ld, expected ERROR_CALL_NOT_IMPLEMENTED\n", ret);
 
     /* change the current directory to other than system32 directory */
     SetCurrentDirectoryA("\\");
@@ -4246,19 +4246,19 @@ static void test_RegLoadMUIString(void)
     size = 0xdeadbeef;
     memset(bufW, 0xff, sizeof(bufW));
     ret = pRegLoadMUIStringW(hkey, tz_valueW, bufW, ARRAY_SIZE(bufW), &size, 0, sysdirW);
-    ok(ret == ERROR_SUCCESS, "got %d, expected ERROR_SUCCESS\n", ret);
-    ok(size == text_size, "got %u, expected %u\n", size, text_size);
+    ok(ret == ERROR_SUCCESS, "got %ld, expected ERROR_SUCCESS\n", ret);
+    ok(size == text_size, "got %lu, expected %lu\n", size, text_size);
     ok(!memcmp(textW, bufW, size), "got %s, expected %s\n",
        wine_dbgstr_wn(bufW, size / sizeof(WCHAR)), wine_dbgstr_wn(textW, text_size / sizeof(WCHAR)));
 
     ret = pRegLoadMUIStringA(hkey, tz_value, buf, ARRAY_SIZE(buf), &size, 0, sysdir);
-    ok(ret == ERROR_CALL_NOT_IMPLEMENTED, "got %d, expected ERROR_CALL_NOT_IMPLEMENTED\n", ret);
+    ok(ret == ERROR_CALL_NOT_IMPLEMENTED, "got %ld, expected ERROR_CALL_NOT_IMPLEMENTED\n", ret);
 
     ret = pRegLoadMUIStringW(hkey, tz_valueW, bufW, ARRAY_SIZE(bufW), &size, 0, NULL);
-    ok(ret == ERROR_FILE_NOT_FOUND, "got %d, expected ERROR_FILE_NOT_FOUND\n", ret);
+    ok(ret == ERROR_FILE_NOT_FOUND, "got %ld, expected ERROR_FILE_NOT_FOUND\n", ret);
 
     ret = pRegLoadMUIStringA(hkey, tz_value, buf, ARRAY_SIZE(buf), &size, 0, NULL);
-    ok(ret == ERROR_CALL_NOT_IMPLEMENTED, "got %d, expected ERROR_CALL_NOT_IMPLEMENTED\n", ret);
+    ok(ret == ERROR_CALL_NOT_IMPLEMENTED, "got %ld, expected ERROR_CALL_NOT_IMPLEMENTED\n", ret);
 
     RegCloseKey(hkey);
 
@@ -4280,7 +4280,7 @@ static void test_RegLoadMUIString(void)
         size = test_case[i].value ? strlen(test_case[i].value) + 1 : 0;
         ret = RegSetValueExA(hkey_main, tz_value, 0, test_case[i].type,
                              (const BYTE *)test_case[i].value, size);
-        ok(ret == ERROR_SUCCESS, "[%2u] got %d\n", i, ret);
+        ok(ret == ERROR_SUCCESS, "[%2u] got %ld\n", i, ret);
 
         size = 0xdeadbeef;
         memset(bufW, 0xff, sizeof(bufW));
@@ -4290,10 +4290,10 @@ static void test_RegLoadMUIString(void)
         ok(ret == test_case[i].expected ||
            broken(test_case[i].value[0] == '%' && ret == ERROR_SUCCESS /* vista */) ||
            broken(test_case[i].broken_ret && ret == test_case[i].broken_ret /* vista */),
-           "[%2u] expected %d, got %d\n", i, test_case[i].expected, ret);
+           "[%2u] expected %ld, got %ld\n", i, test_case[i].expected, ret);
         if (ret == ERROR_SUCCESS && test_case[i].expected == ERROR_SUCCESS)
         {
-            ok(size == text_size, "[%2u] got %u, expected %u\n", i, size, text_size);
+            ok(size == text_size, "[%2u] got %lu, expected %lu\n", i, size, text_size);
             ok(!memcmp(bufW, textW, size), "[%2u] got %s, expected %s\n", i,
                wine_dbgstr_wn(bufW, size/sizeof(WCHAR)),
                wine_dbgstr_wn(textW, text_size/sizeof(WCHAR)));
@@ -4338,29 +4338,29 @@ static void test_EnumDynamicTimeZoneInformation(void)
     SetLastError(0xdeadbeef);
     ret = pEnumDynamicTimeZoneInformation(0, NULL);
     gle = GetLastError();
-    ok(gle == 0xdeadbeef, "got 0x%x\n", gle);
-    ok(ret == ERROR_INVALID_PARAMETER, "got %d\n", ret);
+    ok(gle == 0xdeadbeef, "got 0x%lx\n", gle);
+    ok(ret == ERROR_INVALID_PARAMETER, "got %ld\n", ret);
 
     memset(&bogus_dtzi, 0xcc, sizeof(bogus_dtzi));
     memset(&dtzi, 0xcc, sizeof(dtzi));
     SetLastError(0xdeadbeef);
     ret = pEnumDynamicTimeZoneInformation(-1, &dtzi);
     gle = GetLastError();
-    ok(gle == 0xdeadbeef, "got 0x%x\n", gle);
-    ok(ret == ERROR_NO_MORE_ITEMS, "got %d\n", ret);
+    ok(gle == 0xdeadbeef, "got 0x%lx\n", gle);
+    ok(ret == ERROR_NO_MORE_ITEMS, "got %ld\n", ret);
     ok(!memcmp(&dtzi, &bogus_dtzi, sizeof(dtzi)), "mismatch\n");
 
     status = RegOpenKeyExA(HKEY_LOCAL_MACHINE,
             "Software\\Microsoft\\Windows NT\\CurrentVersion\\Time Zones", 0,
             KEY_ENUMERATE_SUB_KEYS|KEY_QUERY_VALUE, &key);
-    ok(status == ERROR_SUCCESS, "got %d\n", status);
+    ok(status == ERROR_SUCCESS, "got %ld\n", status);
     index = 0;
     while (!(status = RegEnumKeyW(key, index, keyname, ARRAY_SIZE(keyname))))
     {
         winetest_push_context("%s" , wine_dbgstr_w(keyname));
         subkey = NULL;
         status = RegOpenKeyExW(key, keyname, 0, KEY_QUERY_VALUE, &subkey);
-        ok(status == ERROR_SUCCESS, "got %d\n", status);
+        ok(status == ERROR_SUCCESS, "got %ld\n", status);
 
         memset(&dtzi, 0xcc, sizeof(dtzi));
         SetLastError(0xdeadbeef);
@@ -4370,8 +4370,8 @@ static void test_EnumDynamicTimeZoneInformation(void)
         ok(gle == ERROR_SUCCESS ||
            gle == ERROR_RESOURCE_TYPE_NOT_FOUND /* Win10 1809 32-bit */ ||
            gle == ERROR_MUI_FILE_NOT_FOUND /* Win10 1809 64-bit */,
-            "got 0x%x\n", gle);
-        ok(ret == ERROR_SUCCESS, "got %d\n", ret);
+            "got 0x%lx\n", gle);
+        ok(ret == ERROR_SUCCESS, "got %ld\n", ret);
         ok(!lstrcmpW(dtzi.TimeZoneKeyName, keyname), "expected %s, got %s\n",
             wine_dbgstr_w(keyname), wine_dbgstr_w(dtzi.TimeZoneKeyName));
 
@@ -4380,7 +4380,7 @@ static void test_EnumDynamicTimeZoneInformation(void)
             size = sizeof(name);
             memset(name, 0, sizeof(name));
             status = pRegGetValueW(subkey, NULL, L"Std", RRF_RT_REG_SZ, NULL, name, &size);
-            ok(status == ERROR_SUCCESS, "status %d Std %s\n", status,
+            ok(status == ERROR_SUCCESS, "status %ld Std %s\n", status,
                wine_dbgstr_w(name));
             ok(*name, "Std name is empty\n");
             if (pRegLoadMUIStringW)
@@ -4388,7 +4388,7 @@ static void test_EnumDynamicTimeZoneInformation(void)
                 size = sizeof(name);
                 memset(name, 0, sizeof(name));
                 status = pRegLoadMUIStringW(subkey, L"MUI_Std", name, size, &size, 0, sysdir);
-                ok(status == ERROR_SUCCESS, "status %d MUI_Std %s\n",
+                ok(status == ERROR_SUCCESS, "status %ld MUI_Std %s\n",
                    status, wine_dbgstr_w(name));
                 ok(*name, "MUI_Std name is empty\n");
             }
@@ -4398,7 +4398,7 @@ static void test_EnumDynamicTimeZoneInformation(void)
             size = sizeof(name);
             memset(name, 0, sizeof(name));
             status = pRegGetValueW(subkey, NULL, L"Dlt", RRF_RT_REG_SZ, NULL, name, &size);
-            ok(status == ERROR_SUCCESS, "status %d %s Dlt %s\n",
+            ok(status == ERROR_SUCCESS, "status %ld %s Dlt %s\n",
                status, wine_dbgstr_w(keyname), wine_dbgstr_w(name));
             ok(*name, "Dlt name is empty\n");
             if (pRegLoadMUIStringW)
@@ -4406,7 +4406,7 @@ static void test_EnumDynamicTimeZoneInformation(void)
                 size = sizeof(name);
                 memset(name, 0, sizeof(name));
                 status = pRegLoadMUIStringW(subkey, L"MUI_Dlt", name, size, &size, 0, sysdir);
-                ok(status == ERROR_SUCCESS, "status %d %s MUI_Dlt %s\n",
+                ok(status == ERROR_SUCCESS, "status %ld %s MUI_Dlt %s\n",
                    status, wine_dbgstr_w(keyname), wine_dbgstr_w(name));
                 ok(*name, "MUI_Dlt name is empty\n");
             }
@@ -4416,7 +4416,7 @@ static void test_EnumDynamicTimeZoneInformation(void)
             size = sizeof(name);
             memset(name, 0, sizeof(name));
             status = pRegGetValueW(subkey, NULL, L"Display", RRF_RT_REG_SZ, NULL, name, &size);
-            ok(status == ERROR_SUCCESS, "status %d %s Display %s\n",
+            ok(status == ERROR_SUCCESS, "status %ld %s Display %s\n",
                status, wine_dbgstr_w(keyname), wine_dbgstr_w(name));
             ok(*name, "Display name is empty\n");
             if (pRegLoadMUIStringW)
@@ -4428,7 +4428,7 @@ static void test_EnumDynamicTimeZoneInformation(void)
                 ok((status == ERROR_SUCCESS && *name) ||
                    broken(status == ERROR_RESOURCE_TYPE_NOT_FOUND) /* Win10 1809 32-bit */ ||
                    broken(status == ERROR_MUI_FILE_NOT_FOUND) /* Win10 1809 64-bit */,
-                   "status %d MUI_Display %s\n", status, wine_dbgstr_w(name));
+                   "status %ld MUI_Display %s\n", status, wine_dbgstr_w(name));
             }
         }
         else
@@ -4441,13 +4441,13 @@ static void test_EnumDynamicTimeZoneInformation(void)
 
         size = sizeof(tz_data);
         status = pRegGetValueW(key, keyname, L"TZI", RRF_RT_REG_BINARY, NULL, &tz_data, &size);
-        ok(status == ERROR_SUCCESS, "got %d\n", status);
+        ok(status == ERROR_SUCCESS, "got %ld\n", status);
 
-        ok(dtzi.Bias == tz_data.bias, "expected %d, got %d\n",
+        ok(dtzi.Bias == tz_data.bias, "expected %ld, got %ld\n",
             tz_data.bias, dtzi.Bias);
-        ok(dtzi.StandardBias == tz_data.std_bias, "expected %d, got %d\n",
+        ok(dtzi.StandardBias == tz_data.std_bias, "expected %ld, got %ld\n",
             tz_data.std_bias, dtzi.StandardBias);
-        ok(dtzi.DaylightBias == tz_data.dlt_bias, "expected %d, got %d\n",
+        ok(dtzi.DaylightBias == tz_data.dlt_bias, "expected %ld, got %ld\n",
             tz_data.dlt_bias, dtzi.DaylightBias);
 
         ok(!memcmp(&dtzi.StandardDate, &tz_data.std_date, sizeof(dtzi.StandardDate)),
@@ -4462,14 +4462,14 @@ static void test_EnumDynamicTimeZoneInformation(void)
         RegCloseKey(subkey);
         index++;
     }
-    ok(status == ERROR_NO_MORE_ITEMS, "got %d\n", status);
+    ok(status == ERROR_NO_MORE_ITEMS, "got %ld\n", status);
 
     memset(&dtzi, 0xcc, sizeof(dtzi));
     SetLastError(0xdeadbeef);
     ret = pEnumDynamicTimeZoneInformation(index, &dtzi);
     gle = GetLastError();
-    ok(gle == 0xdeadbeef, "got 0x%x\n", gle);
-    ok(ret == ERROR_NO_MORE_ITEMS, "got %d\n", ret);
+    ok(gle == 0xdeadbeef, "got 0x%lx\n", gle);
+    ok(ret == ERROR_NO_MORE_ITEMS, "got %ld\n", ret);
     ok(!memcmp(&dtzi, &bogus_dtzi, sizeof(dtzi)), "mismatch\n");
 
     RegCloseKey(key);
diff --git a/dlls/advapi32/tests/security.c b/dlls/advapi32/tests/security.c
index e0a86acd5df..135a45f7727 100644
--- a/dlls/advapi32/tests/security.c
+++ b/dlls/advapi32/tests/security.c
@@ -126,7 +126,7 @@ static const char* debugstr_sid(PSID sid)
     const char *res;
 
     if (!ConvertSidToStringSidA(sid, &sidstr))
-        res = wine_dbg_sprintf("ConvertSidToStringSidA failed le=%u", GetLastError());
+        res = wine_dbg_sprintf("ConvertSidToStringSidA failed le=%lu", GetLastError());
     else
     {
         res = __wine_dbg_strdup(sidstr);
@@ -193,7 +193,7 @@ static SECURITY_DESCRIPTOR* test_get_security_descriptor(HANDLE handle, int line
     ret = GetKernelObjectSecurity(handle, OWNER_SECURITY_INFORMATION | GROUP_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION,
                                   NULL, 0, &needed);
     ok_(__FILE__, line)(!ret, "GetKernelObjectSecurity should fail\n");
-    ok_(__FILE__, line)(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+    ok_(__FILE__, line)(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
     ok_(__FILE__, line)(needed != 0xdeadbeef, "GetKernelObjectSecurity should return required buffer length\n");
 
     length = needed;
@@ -203,8 +203,8 @@ static SECURITY_DESCRIPTOR* test_get_security_descriptor(HANDLE handle, int line
     SetLastError(0xdeadbeef);
     ret = GetKernelObjectSecurity(handle, OWNER_SECURITY_INFORMATION | GROUP_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION,
                                   sd, length, &needed);
-    ok_(__FILE__, line)(ret, "GetKernelObjectSecurity error %d\n", GetLastError());
-    ok_(__FILE__, line)(needed == length || needed == 0 /* file, pipe */, "GetKernelObjectSecurity should return %u instead of %u\n", length, needed);
+    ok_(__FILE__, line)(ret, "GetKernelObjectSecurity error %ld\n", GetLastError());
+    ok_(__FILE__, line)(needed == length || needed == 0 /* file, pipe */, "GetKernelObjectSecurity should return %lu instead of %lu\n", length, needed);
     return sd;
 }
 
@@ -218,7 +218,7 @@ static void test_owner_equal(HANDLE Handle, PSID expected, int line)
     queriedSD = test_get_security_descriptor( Handle, line );
 
     res = GetSecurityDescriptorOwner(queriedSD, &owner, &owner_defaulted);
-    ok_(__FILE__, line)(res, "GetSecurityDescriptorOwner failed with error %d\n", GetLastError());
+    ok_(__FILE__, line)(res, "GetSecurityDescriptorOwner failed with error %ld\n", GetLastError());
 
     ok_(__FILE__, line)(EqualSid(owner, expected), "Owner SIDs are not equal %s != %s\n",
                         debugstr_sid(owner), debugstr_sid(expected));
@@ -237,7 +237,7 @@ static void test_group_equal(HANDLE Handle, PSID expected, int line)
     queriedSD = test_get_security_descriptor( Handle, line );
 
     res = GetSecurityDescriptorGroup(queriedSD, &group, &group_defaulted);
-    ok_(__FILE__, line)(res, "GetSecurityDescriptorGroup failed with error %d\n", GetLastError());
+    ok_(__FILE__, line)(res, "GetSecurityDescriptorGroup failed with error %ld\n", GetLastError());
 
     ok_(__FILE__, line)(EqualSid(group, expected), "Group SIDs are not equal %s != %s\n",
                         debugstr_sid(group), debugstr_sid(expected));
@@ -321,45 +321,45 @@ static void test_ConvertStringSidToSid(void)
     if( GetLastError() == ERROR_CALL_NOT_IMPLEMENTED )
         return;
     ok( GetLastError() == ERROR_INVALID_PARAMETER,
-     "expected GetLastError() is ERROR_INVALID_PARAMETER, got %d\n",
+     "expected GetLastError() is ERROR_INVALID_PARAMETER, got %ld\n",
      GetLastError() );
 
     r = ConvertStringSidToSidA( refs[0].refStr, NULL );
     ok( !r && GetLastError() == ERROR_INVALID_PARAMETER,
-     "expected GetLastError() is ERROR_INVALID_PARAMETER, got %d\n",
+     "expected GetLastError() is ERROR_INVALID_PARAMETER, got %ld\n",
      GetLastError() );
 
     r = ConvertStringSidToSidA( NULL, &psid );
     ok( !r && GetLastError() == ERROR_INVALID_PARAMETER,
-     "expected GetLastError() is ERROR_INVALID_PARAMETER, got %d\n",
+     "expected GetLastError() is ERROR_INVALID_PARAMETER, got %ld\n",
      GetLastError() );
 
     r = ConvertStringSidToSidA( noSubAuthStr, &psid );
     ok( !r,
      "expected failure with no sub authorities\n" );
     ok( GetLastError() == ERROR_INVALID_SID,
-     "expected GetLastError() is ERROR_INVALID_SID, got %d\n",
+     "expected GetLastError() is ERROR_INVALID_SID, got %ld\n",
      GetLastError() );
 
     r = ConvertStringSidToSidA( "WDandmorecharacters", &psid );
     ok( !r,
      "expected failure with too many characters\n" );
     ok( GetLastError() == ERROR_INVALID_SID,
-     "expected GetLastError() is ERROR_INVALID_SID, got %d\n",
+     "expected GetLastError() is ERROR_INVALID_SID, got %ld\n",
      GetLastError() );
 
     r = ConvertStringSidToSidA( "WD)", &psid );
     ok( !r,
      "expected failure with too many characters\n" );
     ok( GetLastError() == ERROR_INVALID_SID,
-     "expected GetLastError() is ERROR_INVALID_SID, got %d\n",
+     "expected GetLastError() is ERROR_INVALID_SID, got %ld\n",
      GetLastError() );
 
     ok(ConvertStringSidToSidA("S-1-5-21-93476-23408-4576", &psid), "ConvertStringSidToSidA failed\n");
     pisid = psid;
     ok(pisid->SubAuthorityCount == 4, "Invalid sub authority count - expected 4, got %d\n", pisid->SubAuthorityCount);
-    ok(pisid->SubAuthority[0] == 21, "Invalid subauthority 0 - expected 21, got %d\n", pisid->SubAuthority[0]);
-    ok(pisid->SubAuthority[3] == 4576, "Invalid subauthority 0 - expected 4576, got %d\n", pisid->SubAuthority[3]);
+    ok(pisid->SubAuthority[0] == 21, "Invalid subauthority 0 - expected 21, got %ld\n", pisid->SubAuthority[0]);
+    ok(pisid->SubAuthority[3] == 4576, "Invalid subauthority 0 - expected 4576, got %ld\n", pisid->SubAuthority[3]);
     LocalFree(str);
     LocalFree(psid);
 
@@ -386,7 +386,7 @@ static void test_ConvertStringSidToSid(void)
          !memcmp( pisid->IdentifierAuthority.Value, refs[i].auth.Value,
          sizeof(refs[i].auth) ),
          "string sid %s didn't parse to expected value\n"
-         "(got 0x%04x%08x, expected 0x%04x%08x)\n",
+         "(got 0x%04x%08lx, expected 0x%04x%08lx)\n",
          refs[i].refStr,
          MAKEWORD( pisid->IdentifierAuthority.Value[1],
          pisid->IdentifierAuthority.Value[0] ),
@@ -625,17 +625,17 @@ static void test_allocateLuid(void)
         return;
 
     ok(ret,
-     "AllocateLocallyUniqueId failed: %d\n", GetLastError());
+     "AllocateLocallyUniqueId failed: %ld\n", GetLastError());
     ret = pAllocateLocallyUniqueId(&luid2);
     ok( ret,
-     "AllocateLocallyUniqueId failed: %d\n", GetLastError());
+     "AllocateLocallyUniqueId failed: %ld\n", GetLastError());
     ok(luid1.LowPart > SE_MAX_WELL_KNOWN_PRIVILEGE || luid1.HighPart != 0,
      "AllocateLocallyUniqueId returned a well-known LUID\n");
     ok(luid1.LowPart != luid2.LowPart || luid1.HighPart != luid2.HighPart,
      "AllocateLocallyUniqueId returned non-unique LUIDs\n");
     ret = pAllocateLocallyUniqueId(NULL);
     ok( !ret && GetLastError() == ERROR_NOACCESS,
-     "AllocateLocallyUniqueId(NULL) didn't return ERROR_NOACCESS: %d\n",
+     "AllocateLocallyUniqueId(NULL) didn't return ERROR_NOACCESS: %ld\n",
      GetLastError());
 }
 
@@ -661,18 +661,18 @@ static void test_lookupPrivilegeName(void)
     luid.LowPart = SE_CREATE_TOKEN_PRIVILEGE;
     ret = pLookupPrivilegeNameA(NULL, &luid, NULL, &cchName);
     ok( !ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-     "LookupPrivilegeNameA didn't fail with ERROR_INSUFFICIENT_BUFFER: %d\n",
+     "LookupPrivilegeNameA didn't fail with ERROR_INSUFFICIENT_BUFFER: %ld\n",
      GetLastError());
     ok(cchName == strlen("SeCreateTokenPrivilege") + 1,
      "LookupPrivilegeNameA returned an incorrect required length for\n"
-     "SeCreateTokenPrivilege (got %d, expected %d)\n", cchName,
+     "SeCreateTokenPrivilege (got %ld, expected %d)\n", cchName,
      lstrlenA("SeCreateTokenPrivilege") + 1);
     /* check a known value and its returned length on success */
     cchName = sizeof(buf);
     ok(pLookupPrivilegeNameA(NULL, &luid, buf, &cchName) &&
      cchName == strlen("SeCreateTokenPrivilege"),
      "LookupPrivilegeNameA returned an incorrect output length for\n"
-     "SeCreateTokenPrivilege (got %d, expected %d)\n", cchName,
+     "SeCreateTokenPrivilege (got %ld, expected %d)\n", cchName,
      (int)strlen("SeCreateTokenPrivilege"));
     /* check known values */
     for (i = SE_MIN_WELL_KNOWN_PRIVILEGE; i <= SE_MAX_WELL_KNOWN_PRIVILEGE; i++)
@@ -681,14 +681,14 @@ static void test_lookupPrivilegeName(void)
         cchName = sizeof(buf);
         ret = pLookupPrivilegeNameA(NULL, &luid, buf, &cchName);
         ok( ret || GetLastError() == ERROR_NO_SUCH_PRIVILEGE,
-         "LookupPrivilegeNameA(0.%d) failed: %d\n", i, GetLastError());
+         "LookupPrivilegeNameA(0.%ld) failed: %ld\n", i, GetLastError());
     }
     /* check a bogus LUID */
     luid.LowPart = 0xdeadbeef;
     cchName = sizeof(buf);
     ret = pLookupPrivilegeNameA(NULL, &luid, buf, &cchName);
     ok( !ret && GetLastError() == ERROR_NO_SUCH_PRIVILEGE,
-     "LookupPrivilegeNameA didn't fail with ERROR_NO_SUCH_PRIVILEGE: %d\n",
+     "LookupPrivilegeNameA didn't fail with ERROR_NO_SUCH_PRIVILEGE: %ld\n",
      GetLastError());
     /* check on a bogus system */
     luid.LowPart = SE_CREATE_TOKEN_PRIVILEGE;
@@ -696,7 +696,7 @@ static void test_lookupPrivilegeName(void)
     ret = pLookupPrivilegeNameA("b0gu5.Nam3", &luid, buf, &cchName);
     ok( !ret && (GetLastError() == RPC_S_SERVER_UNAVAILABLE ||
                  GetLastError() == RPC_S_INVALID_NET_ADDR) /* w2k8 */,
-     "LookupPrivilegeNameA didn't fail with RPC_S_SERVER_UNAVAILABLE or RPC_S_INVALID_NET_ADDR: %d\n",
+     "LookupPrivilegeNameA didn't fail with RPC_S_SERVER_UNAVAILABLE or RPC_S_INVALID_NET_ADDR: %ld\n",
      GetLastError());
 }
 
@@ -755,22 +755,22 @@ static void test_lookupPrivilegeValue(void)
     ret = pLookupPrivilegeValueA("b0gu5.Nam3", "SeCreateTokenPrivilege", &luid);
     ok( !ret && (GetLastError() == RPC_S_SERVER_UNAVAILABLE ||
                 GetLastError() == RPC_S_INVALID_NET_ADDR) /* w2k8 */,
-     "LookupPrivilegeValueA didn't fail with RPC_S_SERVER_UNAVAILABLE or RPC_S_INVALID_NET_ADDR: %d\n",
+     "LookupPrivilegeValueA didn't fail with RPC_S_SERVER_UNAVAILABLE or RPC_S_INVALID_NET_ADDR: %ld\n",
      GetLastError());
     /* check a NULL string */
     ret = pLookupPrivilegeValueA(NULL, 0, &luid);
     ok( !ret && GetLastError() == ERROR_NO_SUCH_PRIVILEGE,
-     "LookupPrivilegeValueA didn't fail with ERROR_NO_SUCH_PRIVILEGE: %d\n",
+     "LookupPrivilegeValueA didn't fail with ERROR_NO_SUCH_PRIVILEGE: %ld\n",
      GetLastError());
     /* check a bogus privilege name */
     ret = pLookupPrivilegeValueA(NULL, "SeBogusPrivilege", &luid);
     ok( !ret && GetLastError() == ERROR_NO_SUCH_PRIVILEGE,
-     "LookupPrivilegeValueA didn't fail with ERROR_NO_SUCH_PRIVILEGE: %d\n",
+     "LookupPrivilegeValueA didn't fail with ERROR_NO_SUCH_PRIVILEGE: %ld\n",
      GetLastError());
     /* check case insensitive */
     ret = pLookupPrivilegeValueA(NULL, "sEcREATEtOKENpRIVILEGE", &luid);
     ok( ret,
-     "LookupPrivilegeValueA(NULL, sEcREATEtOKENpRIVILEGE, &luid) failed: %d\n",
+     "LookupPrivilegeValueA(NULL, sEcREATEtOKENpRIVILEGE, &luid) failed: %ld\n",
      GetLastError());
     for (i = 0; i < ARRAY_SIZE(privs); i++)
     {
@@ -816,13 +816,13 @@ static void test_FileSecurity(void)
     SetLastError(0xdeadbeef);
     rc = CreateDirectoryA (path, NULL);
     ok (rc || GetLastError() == ERROR_ALREADY_EXISTS, "CreateDirectoryA "
-        "failed for '%s' with %d\n", path, GetLastError());
+        "failed for '%s' with %ld\n", path, GetLastError());
 
     strcat (strcpy (file, path), "\\ess");
     SetLastError(0xdeadbeef);
     fh = CreateFileA (file, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL);
     ok (fh != INVALID_HANDLE_VALUE, "CreateFileA "
-        "failed for '%s' with %d\n", file, GetLastError());
+        "failed for '%s' with %ld\n", file, GetLastError());
     CloseHandle (fh);
 
     /* For the temporary file ... */
@@ -838,8 +838,8 @@ static void test_FileSecurity(void)
     ok (!rc, "GetFileSecurityA "
         "was expected to fail for '%s'\n", file);
     ok (GetLastError() == ERROR_INSUFFICIENT_BUFFER, "GetFileSecurityA "
-        "returned %d; expected ERROR_INSUFFICIENT_BUFFER\n", GetLastError());
-    ok (retSize > sizeof (SECURITY_DESCRIPTOR), "GetFileSecurityA returned size %d\n", retSize);
+        "returned %ld; expected ERROR_INSUFFICIENT_BUFFER\n", GetLastError());
+    ok (retSize > sizeof (SECURITY_DESCRIPTOR), "GetFileSecurityA returned size %ld\n", retSize);
 
     sdSize = retSize;
     sd = HeapAlloc (GetProcessHeap (), 0, sdSize);
@@ -849,16 +849,16 @@ static void test_FileSecurity(void)
     SetLastError(0xdeadbeef);
     rc = GetFileSecurityA (file, request, sd, sdSize, &retSize);
     ok (rc, "GetFileSecurityA "
-        "was not expected to fail '%s': %d\n", file, GetLastError());
+        "was not expected to fail '%s': %ld\n", file, GetLastError());
     ok (retSize == sdSize ||
         broken(retSize == 0), /* NT4 */
-        "GetFileSecurityA returned size %d; expected %d\n", retSize, sdSize);
+        "GetFileSecurityA returned size %ld; expected %ld\n", retSize, sdSize);
 
     /* Use it to set security descriptor */
     SetLastError(0xdeadbeef);
     rc = pSetFileSecurityA (file, request, sd);
     ok (rc, "SetFileSecurityA "
-        "was not expected to fail '%s': %d\n", file, GetLastError());
+        "was not expected to fail '%s': %ld\n", file, GetLastError());
 
     HeapFree (GetProcessHeap (), 0, sd);
 
@@ -871,8 +871,8 @@ static void test_FileSecurity(void)
     ok (!rc, "GetFileSecurityA "
         "was expected to fail for '%s'\n", path);
     ok (GetLastError() == ERROR_INSUFFICIENT_BUFFER, "GetFileSecurityA "
-        "returned %d; expected ERROR_INSUFFICIENT_BUFFER\n", GetLastError());
-    ok (retSize > sizeof (SECURITY_DESCRIPTOR), "GetFileSecurityA returned size %d\n", retSize);
+        "returned %ld; expected ERROR_INSUFFICIENT_BUFFER\n", GetLastError());
+    ok (retSize > sizeof (SECURITY_DESCRIPTOR), "GetFileSecurityA returned size %ld\n", retSize);
 
     sdSize = retSize;
     sd = HeapAlloc (GetProcessHeap (), 0, sdSize);
@@ -882,16 +882,16 @@ static void test_FileSecurity(void)
     SetLastError(0xdeadbeef);
     rc = GetFileSecurityA (path, request, sd, sdSize, &retSize);
     ok (rc, "GetFileSecurityA "
-        "was not expected to fail '%s': %d\n", path, GetLastError());
+        "was not expected to fail '%s': %ld\n", path, GetLastError());
     ok (retSize == sdSize ||
         broken(retSize == 0), /* NT4 */
-        "GetFileSecurityA returned size %d; expected %d\n", retSize, sdSize);
+        "GetFileSecurityA returned size %ld; expected %ld\n", retSize, sdSize);
 
     /* Use it to set security descriptor */
     SetLastError(0xdeadbeef);
     rc = pSetFileSecurityA (path, request, sd);
     ok (rc, "SetFileSecurityA "
-        "was not expected to fail '%s': %d\n", path, GetLastError());
+        "was not expected to fail '%s': %ld\n", path, GetLastError());
     HeapFree (GetProcessHeap (), 0, sd);
 
     /* Old test */
@@ -900,7 +900,7 @@ static void test_FileSecurity(void)
     rc = GetFileSecurityA (wintmpdir, OWNER_SECURITY_INFORMATION, NULL, 0, &sdSize);
     ok (!rc, "GetFileSecurityA should fail for not existing directories/files\n");
     ok (GetLastError() == ERROR_FILE_NOT_FOUND,
-        "last error ERROR_FILE_NOT_FOUND expected, got %d\n", GetLastError());
+        "last error ERROR_FILE_NOT_FOUND expected, got %ld\n", GetLastError());
 
 cleanup:
     /* Remove temporary file and directory */
@@ -910,245 +910,245 @@ cleanup:
     /* Test file access permissions for a file with FILE_ATTRIBUTE_ARCHIVE */
     SetLastError(0xdeadbeef);
     rc = GetTempPathA(sizeof(wintmpdir), wintmpdir);
-    ok(rc, "GetTempPath error %d\n", GetLastError());
+    ok(rc, "GetTempPath error %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     rc = GetTempFileNameA(wintmpdir, "tmp", 0, file);
-    ok(rc, "GetTempFileName error %d\n", GetLastError());
+    ok(rc, "GetTempFileName error %ld\n", GetLastError());
 
     rc = GetFileAttributesA(file);
     rc &= ~(FILE_ATTRIBUTE_NOT_CONTENT_INDEXED|FILE_ATTRIBUTE_COMPRESSED);
-    ok(rc == FILE_ATTRIBUTE_ARCHIVE, "expected FILE_ATTRIBUTE_ARCHIVE got %#x\n", rc);
+    ok(rc == FILE_ATTRIBUTE_ARCHIVE, "expected FILE_ATTRIBUTE_ARCHIVE got %#lx\n", rc);
 
     rc = GetFileSecurityA(file, OWNER_SECURITY_INFORMATION|GROUP_SECURITY_INFORMATION|DACL_SECURITY_INFORMATION,
                           NULL, 0, &sdSize);
     ok(!rc, "GetFileSecurity should fail\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "expected ERROR_INSUFFICIENT_BUFFER got %d\n", GetLastError());
-    ok(sdSize > sizeof(SECURITY_DESCRIPTOR), "got sd size %d\n", sdSize);
+       "expected ERROR_INSUFFICIENT_BUFFER got %ld\n", GetLastError());
+    ok(sdSize > sizeof(SECURITY_DESCRIPTOR), "got sd size %ld\n", sdSize);
 
     sd = HeapAlloc(GetProcessHeap (), 0, sdSize);
     retSize = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = GetFileSecurityA(file, OWNER_SECURITY_INFORMATION|GROUP_SECURITY_INFORMATION|DACL_SECURITY_INFORMATION,
                           sd, sdSize, &retSize);
-    ok(rc, "GetFileSecurity error %d\n", GetLastError());
-    ok(retSize == sdSize || broken(retSize == 0) /* NT4 */, "expected %d, got %d\n", sdSize, retSize);
+    ok(rc, "GetFileSecurity error %ld\n", GetLastError());
+    ok(retSize == sdSize || broken(retSize == 0) /* NT4 */, "expected %ld, got %ld\n", sdSize, retSize);
 
     SetLastError(0xdeadbeef);
     rc = OpenThreadToken(GetCurrentThread(), TOKEN_QUERY, TRUE, &token);
     ok(!rc, "OpenThreadToken should fail\n");
-    ok(GetLastError() == ERROR_NO_TOKEN, "expected ERROR_NO_TOKEN, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_NO_TOKEN, "expected ERROR_NO_TOKEN, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     rc = ImpersonateSelf(SecurityIdentification);
-    ok(rc, "ImpersonateSelf error %d\n", GetLastError());
+    ok(rc, "ImpersonateSelf error %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     rc = OpenThreadToken(GetCurrentThread(), TOKEN_QUERY, TRUE, &token);
-    ok(rc, "OpenThreadToken error %d\n", GetLastError());
+    ok(rc, "OpenThreadToken error %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     rc = RevertToSelf();
-    ok(rc, "RevertToSelf error %d\n", GetLastError());
+    ok(rc, "RevertToSelf error %ld\n", GetLastError());
 
     priv_set_len = sizeof(priv_set);
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, FILE_READ_DATA, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == FILE_READ_DATA, "expected FILE_READ_DATA, got %#x\n", granted);
+    ok(granted == FILE_READ_DATA, "expected FILE_READ_DATA, got %#lx\n", granted);
 
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, FILE_WRITE_DATA, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == FILE_WRITE_DATA, "expected FILE_WRITE_DATA, got %#x\n", granted);
+    ok(granted == FILE_WRITE_DATA, "expected FILE_WRITE_DATA, got %#lx\n", granted);
 
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, FILE_EXECUTE, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == FILE_EXECUTE, "expected FILE_EXECUTE, got %#x\n", granted);
+    ok(granted == FILE_EXECUTE, "expected FILE_EXECUTE, got %#lx\n", granted);
 
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, DELETE, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == DELETE, "expected DELETE, got %#x\n", granted);
+    ok(granted == DELETE, "expected DELETE, got %#lx\n", granted);
 
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, FILE_DELETE_CHILD, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == FILE_DELETE_CHILD, "expected FILE_DELETE_CHILD, got %#x\n", granted);
+    ok(granted == FILE_DELETE_CHILD, "expected FILE_DELETE_CHILD, got %#lx\n", granted);
 
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, 0x1ff, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == 0x1ff, "expected 0x1ff, got %#x\n", granted);
+    ok(granted == 0x1ff, "expected 0x1ff, got %#lx\n", granted);
 
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, FILE_ALL_ACCESS, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == FILE_ALL_ACCESS, "expected FILE_ALL_ACCESS, got %#x\n", granted);
+    ok(granted == FILE_ALL_ACCESS, "expected FILE_ALL_ACCESS, got %#lx\n", granted);
 
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, 0xffffffff, &mapping, &priv_set, &priv_set_len, &granted, &status);
     ok(!rc, "AccessCheck should fail\n");
-    ok(GetLastError() == ERROR_GENERIC_NOT_MAPPED, "expected ERROR_GENERIC_NOT_MAPPED, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_GENERIC_NOT_MAPPED, "expected ERROR_GENERIC_NOT_MAPPED, got %ld\n", GetLastError());
 
     /* Test file access permissions for a file with FILE_ATTRIBUTE_READONLY */
     SetLastError(0xdeadbeef);
     fh = CreateFileA(file, FILE_READ_DATA, FILE_SHARE_READ, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_READONLY, 0);
-    ok(fh != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(fh != INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
     retSize = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = WriteFile(fh, "1", 1, &retSize, NULL);
     ok(!rc, "WriteFile should fail\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
-    ok(retSize == 0, "expected 0, got %d\n", retSize);
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
+    ok(retSize == 0, "expected 0, got %ld\n", retSize);
     CloseHandle(fh);
 
     rc = GetFileAttributesA(file);
     rc &= ~(FILE_ATTRIBUTE_NOT_CONTENT_INDEXED|FILE_ATTRIBUTE_COMPRESSED);
     todo_wine
     ok(rc == (FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_READONLY),
-       "expected FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_READONLY got %#x\n", rc);
+       "expected FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_READONLY got %#lx\n", rc);
 
     SetLastError(0xdeadbeef);
     rc = SetFileAttributesA(file, FILE_ATTRIBUTE_ARCHIVE);
-    ok(rc, "SetFileAttributes error %d\n", GetLastError());
+    ok(rc, "SetFileAttributes error %ld\n", GetLastError());
     SetLastError(0xdeadbeef);
     rc = DeleteFileA(file);
-    ok(rc, "DeleteFile error %d\n", GetLastError());
+    ok(rc, "DeleteFile error %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     fh = CreateFileA(file, FILE_READ_DATA, FILE_SHARE_READ, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_READONLY, 0);
-    ok(fh != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(fh != INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
     retSize = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = WriteFile(fh, "1", 1, &retSize, NULL);
     ok(!rc, "WriteFile should fail\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
-    ok(retSize == 0, "expected 0, got %d\n", retSize);
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
+    ok(retSize == 0, "expected 0, got %ld\n", retSize);
     CloseHandle(fh);
 
     rc = GetFileAttributesA(file);
     rc &= ~(FILE_ATTRIBUTE_NOT_CONTENT_INDEXED|FILE_ATTRIBUTE_COMPRESSED);
     ok(rc == (FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_READONLY),
-       "expected FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_READONLY got %#x\n", rc);
+       "expected FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_READONLY got %#lx\n", rc);
 
     retSize = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = GetFileSecurityA(file, OWNER_SECURITY_INFORMATION|GROUP_SECURITY_INFORMATION|DACL_SECURITY_INFORMATION,
                           sd, sdSize, &retSize);
-    ok(rc, "GetFileSecurity error %d\n", GetLastError());
-    ok(retSize == sdSize || broken(retSize == 0) /* NT4 */, "expected %d, got %d\n", sdSize, retSize);
+    ok(rc, "GetFileSecurity error %ld\n", GetLastError());
+    ok(retSize == sdSize || broken(retSize == 0) /* NT4 */, "expected %ld, got %ld\n", sdSize, retSize);
 
     priv_set_len = sizeof(priv_set);
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, FILE_READ_DATA, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == FILE_READ_DATA, "expected FILE_READ_DATA, got %#x\n", granted);
+    ok(granted == FILE_READ_DATA, "expected FILE_READ_DATA, got %#lx\n", granted);
 
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, FILE_WRITE_DATA, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
 todo_wine {
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == FILE_WRITE_DATA, "expected FILE_WRITE_DATA, got %#x\n", granted);
+    ok(granted == FILE_WRITE_DATA, "expected FILE_WRITE_DATA, got %#lx\n", granted);
 }
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, FILE_EXECUTE, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == FILE_EXECUTE, "expected FILE_EXECUTE, got %#x\n", granted);
+    ok(granted == FILE_EXECUTE, "expected FILE_EXECUTE, got %#lx\n", granted);
 
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, DELETE, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == DELETE, "expected DELETE, got %#x\n", granted);
+    ok(granted == DELETE, "expected DELETE, got %#lx\n", granted);
 
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, WRITE_OWNER, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == WRITE_OWNER, "expected WRITE_OWNER, got %#x\n", granted);
+    ok(granted == WRITE_OWNER, "expected WRITE_OWNER, got %#lx\n", granted);
 
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, SYNCHRONIZE, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == SYNCHRONIZE, "expected SYNCHRONIZE, got %#x\n", granted);
+    ok(granted == SYNCHRONIZE, "expected SYNCHRONIZE, got %#lx\n", granted);
 
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, FILE_DELETE_CHILD, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
 todo_wine {
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == FILE_DELETE_CHILD, "expected FILE_DELETE_CHILD, got %#x\n", granted);
+    ok(granted == FILE_DELETE_CHILD, "expected FILE_DELETE_CHILD, got %#lx\n", granted);
 }
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, 0x1ff, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
 todo_wine {
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == 0x1ff, "expected 0x1ff, got %#x\n", granted);
+    ok(granted == 0x1ff, "expected 0x1ff, got %#lx\n", granted);
 }
     granted = 0xdeadbeef;
     status = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     rc = AccessCheck(sd, token, FILE_ALL_ACCESS, &mapping, &priv_set, &priv_set_len, &granted, &status);
-    ok(rc, "AccessCheck error %d\n", GetLastError());
+    ok(rc, "AccessCheck error %ld\n", GetLastError());
 todo_wine {
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == FILE_ALL_ACCESS, "expected FILE_ALL_ACCESS, got %#x\n", granted);
+    ok(granted == FILE_ALL_ACCESS, "expected FILE_ALL_ACCESS, got %#lx\n", granted);
 }
     SetLastError(0xdeadbeef);
     rc = DeleteFileA(file);
     ok(!rc, "DeleteFile should fail\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
     SetLastError(0xdeadbeef);
     rc = SetFileAttributesA(file, FILE_ATTRIBUTE_ARCHIVE);
-    ok(rc, "SetFileAttributes error %d\n", GetLastError());
+    ok(rc, "SetFileAttributes error %ld\n", GetLastError());
     SetLastError(0xdeadbeef);
     rc = DeleteFileA(file);
-    ok(rc, "DeleteFile error %d\n", GetLastError());
+    ok(rc, "DeleteFile error %ld\n", GetLastError());
 
     CloseHandle(token);
     HeapFree(GetProcessHeap(), 0, sd);
@@ -1196,38 +1196,38 @@ static void test_AccessCheck(void)
         HeapFree(GetProcessHeap(), 0, Acl);
         return;
     }
-    ok(res, "InitializeAcl failed with error %d\n", GetLastError());
+    ok(res, "InitializeAcl failed with error %ld\n", GetLastError());
 
     res = AllocateAndInitializeSid( &SIDAuthWorld, 1, SECURITY_WORLD_RID, 0, 0, 0, 0, 0, 0, 0, &EveryoneSid);
-    ok(res, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(res, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     res = AllocateAndInitializeSid( &SIDAuthNT, 2, SECURITY_BUILTIN_DOMAIN_RID,
         DOMAIN_ALIAS_RID_ADMINS, 0, 0, 0, 0, 0, 0, &AdminSid);
-    ok(res, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(res, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     res = AllocateAndInitializeSid( &SIDAuthNT, 2, SECURITY_BUILTIN_DOMAIN_RID,
         DOMAIN_ALIAS_RID_USERS, 0, 0, 0, 0, 0, 0, &UsersSid);
-    ok(res, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(res, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     SecurityDescriptor = HeapAlloc(GetProcessHeap(), 0, SECURITY_DESCRIPTOR_MIN_LENGTH);
 
     res = InitializeSecurityDescriptor(SecurityDescriptor, SECURITY_DESCRIPTOR_REVISION);
-    ok(res, "InitializeSecurityDescriptor failed with error %d\n", GetLastError());
+    ok(res, "InitializeSecurityDescriptor failed with error %ld\n", GetLastError());
 
     res = SetSecurityDescriptorDacl(SecurityDescriptor, TRUE, Acl, FALSE);
-    ok(res, "SetSecurityDescriptorDacl failed with error %d\n", GetLastError());
+    ok(res, "SetSecurityDescriptorDacl failed with error %ld\n", GetLastError());
 
     PrivSetLen = FIELD_OFFSET(PRIVILEGE_SET, Privilege[16]);
     PrivSet = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, PrivSetLen);
     PrivSet->PrivilegeCount = 16;
 
     res = OpenProcessToken(GetCurrentProcess(), TOKEN_DUPLICATE|TOKEN_QUERY, &ProcessToken);
-    ok(res, "OpenProcessToken failed with error %d\n", GetLastError());
+    ok(res, "OpenProcessToken failed with error %ld\n", GetLastError());
 
     pRtlAdjustPrivilege(SE_SECURITY_PRIVILEGE, FALSE, TRUE, &Enabled);
 
     res = DuplicateToken(ProcessToken, SecurityImpersonation, &Token);
-    ok(res, "DuplicateToken failed with error %d\n", GetLastError());
+    ok(res, "DuplicateToken failed with error %ld\n", GetLastError());
 
     /* SD without owner/group */
     SetLastError(0xdeadbeef);
@@ -1236,15 +1236,15 @@ static void test_AccessCheck(void)
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_INVALID_SECURITY_DESCR, "AccessCheck should have "
-       "failed with ERROR_INVALID_SECURITY_DESCR, instead of %d\n", err);
+       "failed with ERROR_INVALID_SECURITY_DESCR, instead of %ld\n", err);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
     /* Set owner and group */
     res = SetSecurityDescriptorOwner(SecurityDescriptor, AdminSid, FALSE);
-    ok(res, "SetSecurityDescriptorOwner failed with error %d\n", GetLastError());
+    ok(res, "SetSecurityDescriptorOwner failed with error %ld\n", GetLastError());
     res = SetSecurityDescriptorGroup(SecurityDescriptor, UsersSid, TRUE);
-    ok(res, "SetSecurityDescriptorGroup failed with error %d\n", GetLastError());
+    ok(res, "SetSecurityDescriptorGroup failed with error %ld\n", GetLastError());
 
     /* Generic access mask */
     SetLastError(0xdeadbeef);
@@ -1253,7 +1253,7 @@ static void test_AccessCheck(void)
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_GENERIC_NOT_MAPPED, "AccessCheck should have failed "
-       "with ERROR_GENERIC_NOT_MAPPED, instead of %d\n", err);
+       "with ERROR_GENERIC_NOT_MAPPED, instead of %ld\n", err);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
@@ -1264,7 +1264,7 @@ static void test_AccessCheck(void)
                       NULL, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_NOACCESS, "AccessCheck should have failed "
-       "with ERROR_NOACCESS, instead of %d\n", err);
+       "with ERROR_NOACCESS, instead of %ld\n", err);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
@@ -1275,7 +1275,7 @@ static void test_AccessCheck(void)
                       PrivSet, NULL, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_NOACCESS, "AccessCheck should have failed "
-       "with ERROR_NOACCESS, instead of %d\n", err);
+       "with ERROR_NOACCESS, instead of %ld\n", err);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
@@ -1286,19 +1286,19 @@ static void test_AccessCheck(void)
                       NULL, NULL, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_NOACCESS, "AccessCheck should have failed "
-       "with ERROR_NOACCESS, instead of %d\n", err);
+       "with ERROR_NOACCESS, instead of %ld\n", err);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
     /* sd with no dacl present */
     Access = AccessStatus = 0x1abe11ed;
     ret = SetSecurityDescriptorDacl(SecurityDescriptor, FALSE, NULL, FALSE);
-    ok(ret, "SetSecurityDescriptorDacl failed with error %d\n", GetLastError());
+    ok(ret, "SetSecurityDescriptorDacl failed with error %ld\n", GetLastError());
     ret = AccessCheck(SecurityDescriptor, Token, KEY_READ, &Mapping,
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
-    ok(ret, "AccessCheck failed with error %d\n", GetLastError());
+    ok(ret, "AccessCheck failed with error %ld\n", GetLastError());
     ok(AccessStatus && (Access == KEY_READ),
-        "AccessCheck failed to grant access with error %d\n",
+        "AccessCheck failed to grant access with error %ld\n",
         GetLastError());
 
     /* sd with no dacl present - no privilegeset buffer */
@@ -1308,7 +1308,7 @@ static void test_AccessCheck(void)
                       NULL, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_NOACCESS, "AccessCheck should have failed "
-       "with ERROR_NOACCESS, instead of %d\n", err);
+       "with ERROR_NOACCESS, instead of %ld\n", err);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
@@ -1323,12 +1323,12 @@ static void test_AccessCheck(void)
                               NULL, &ntPrivSetLen, &Access, &ntAccessStatus);
        err = GetLastError();
        ok(ntret == STATUS_ACCESS_VIOLATION,
-          "NtAccessCheck should have failed with STATUS_ACCESS_VIOLATION, got %x\n", ntret);
+          "NtAccessCheck should have failed with STATUS_ACCESS_VIOLATION, got %lx\n", ntret);
        ok(err == 0xdeadbeef,
-          "NtAccessCheck shouldn't set last error, got %d\n", err);
+          "NtAccessCheck shouldn't set last error, got %ld\n", err);
        ok(Access == 0x1abe11ed && ntAccessStatus == 0x1abe11ed,
           "Access and/or AccessStatus were changed!\n");
-       ok(ntPrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %d\n", ntPrivSetLen);
+       ok(ntPrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %ld\n", ntPrivSetLen);
 
       /* Generic access mask - no returnlength */
       SetLastError(0xdeadbeef);
@@ -1337,9 +1337,9 @@ static void test_AccessCheck(void)
                              PrivSet, NULL, &Access, &ntAccessStatus);
       err = GetLastError();
       ok(ntret == STATUS_ACCESS_VIOLATION,
-         "NtAccessCheck should have failed with STATUS_ACCESS_VIOLATION, got %x\n", ntret);
+         "NtAccessCheck should have failed with STATUS_ACCESS_VIOLATION, got %lx\n", ntret);
       ok(err == 0xdeadbeef,
-         "NtAccessCheck shouldn't set last error, got %d\n", err);
+         "NtAccessCheck shouldn't set last error, got %ld\n", err);
       ok(Access == 0x1abe11ed && ntAccessStatus == 0x1abe11ed,
          "Access and/or AccessStatus were changed!\n");
 
@@ -1350,9 +1350,9 @@ static void test_AccessCheck(void)
                              NULL, NULL, &Access, &ntAccessStatus);
       err = GetLastError();
       ok(ntret == STATUS_ACCESS_VIOLATION,
-         "NtAccessCheck should have failed with STATUS_ACCESS_VIOLATION, got %x\n", ntret);
+         "NtAccessCheck should have failed with STATUS_ACCESS_VIOLATION, got %lx\n", ntret);
       ok(err == 0xdeadbeef,
-         "NtAccessCheck shouldn't set last error, got %d\n", err);
+         "NtAccessCheck shouldn't set last error, got %ld\n", err);
       ok(Access == 0x1abe11ed && ntAccessStatus == 0x1abe11ed,
          "Access and/or AccessStatus were changed!\n");
 
@@ -1364,12 +1364,12 @@ static void test_AccessCheck(void)
                              PrivSet, &ntPrivSetLen, &Access, &ntAccessStatus);
       err = GetLastError();
       ok(ntret == STATUS_GENERIC_NOT_MAPPED,
-         "NtAccessCheck should have failed with STATUS_GENERIC_NOT_MAPPED, got %x\n", ntret);
+         "NtAccessCheck should have failed with STATUS_GENERIC_NOT_MAPPED, got %lx\n", ntret);
       ok(err == 0xdeadbeef,
-         "NtAccessCheck shouldn't set last error, got %d\n", err);
+         "NtAccessCheck shouldn't set last error, got %ld\n", err);
       ok(Access == 0x1abe11ed && ntAccessStatus == 0x1abe11ed,
          "Access and/or AccessStatus were changed!\n");
-      ok(ntPrivSetLen == 0, "PrivSetLen returns %d\n", ntPrivSetLen);
+      ok(ntPrivSetLen == 0, "PrivSetLen returns %ld\n", ntPrivSetLen);
 
       /* Generic access mask - insufficient returnlength */
       SetLastError(0xdeadbeef);
@@ -1379,12 +1379,12 @@ static void test_AccessCheck(void)
                              PrivSet, &ntPrivSetLen, &Access, &ntAccessStatus);
       err = GetLastError();
       ok(ntret == STATUS_GENERIC_NOT_MAPPED,
-         "NtAccessCheck should have failed with STATUS_GENERIC_NOT_MAPPED, got %x\n", ntret);
+         "NtAccessCheck should have failed with STATUS_GENERIC_NOT_MAPPED, got %lx\n", ntret);
       ok(err == 0xdeadbeef,
-         "NtAccessCheck shouldn't set last error, got %d\n", err);
+         "NtAccessCheck shouldn't set last error, got %ld\n", err);
       ok(Access == 0x1abe11ed && ntAccessStatus == 0x1abe11ed,
          "Access and/or AccessStatus were changed!\n");
-      ok(ntPrivSetLen == sizeof(PRIVILEGE_SET)-1, "PrivSetLen returns %d\n", ntPrivSetLen);
+      ok(ntPrivSetLen == sizeof(PRIVILEGE_SET)-1, "PrivSetLen returns %ld\n", ntPrivSetLen);
 
       /* Key access mask - zero returnlength */
       SetLastError(0xdeadbeef);
@@ -1394,12 +1394,12 @@ static void test_AccessCheck(void)
                              PrivSet, &ntPrivSetLen, &Access, &ntAccessStatus);
       err = GetLastError();
       ok(ntret == STATUS_BUFFER_TOO_SMALL,
-         "NtAccessCheck should have failed with STATUS_BUFFER_TOO_SMALL, got %x\n", ntret);
+         "NtAccessCheck should have failed with STATUS_BUFFER_TOO_SMALL, got %lx\n", ntret);
       ok(err == 0xdeadbeef,
-         "NtAccessCheck shouldn't set last error, got %d\n", err);
+         "NtAccessCheck shouldn't set last error, got %ld\n", err);
       ok(Access == 0x1abe11ed && ntAccessStatus == 0x1abe11ed,
          "Access and/or AccessStatus were changed!\n");
-      ok(ntPrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %d\n", ntPrivSetLen);
+      ok(ntPrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %ld\n", ntPrivSetLen);
 
       /* Key access mask - insufficient returnlength */
       SetLastError(0xdeadbeef);
@@ -1409,12 +1409,12 @@ static void test_AccessCheck(void)
                              PrivSet, &ntPrivSetLen, &Access, &ntAccessStatus);
       err = GetLastError();
       ok(ntret == STATUS_BUFFER_TOO_SMALL,
-         "NtAccessCheck should have failed with STATUS_BUFFER_TOO_SMALL, got %x\n", ntret);
+         "NtAccessCheck should have failed with STATUS_BUFFER_TOO_SMALL, got %lx\n", ntret);
       ok(err == 0xdeadbeef,
-         "NtAccessCheck shouldn't set last error, got %d\n", err);
+         "NtAccessCheck shouldn't set last error, got %ld\n", err);
       ok(Access == 0x1abe11ed && ntAccessStatus == 0x1abe11ed,
          "Access and/or AccessStatus were changed!\n");
-      ok(ntPrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %d\n", ntPrivSetLen);
+      ok(ntPrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %ld\n", ntPrivSetLen);
     }
     else
        win_skip("NtAccessCheck unavailable. Skipping.\n");
@@ -1422,53 +1422,53 @@ static void test_AccessCheck(void)
     /* sd with NULL dacl */
     Access = AccessStatus = 0x1abe11ed;
     ret = SetSecurityDescriptorDacl(SecurityDescriptor, TRUE, NULL, FALSE);
-    ok(ret, "SetSecurityDescriptorDacl failed with error %d\n", GetLastError());
+    ok(ret, "SetSecurityDescriptorDacl failed with error %ld\n", GetLastError());
     ret = AccessCheck(SecurityDescriptor, Token, KEY_READ, &Mapping,
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
-    ok(ret, "AccessCheck failed with error %d\n", GetLastError());
+    ok(ret, "AccessCheck failed with error %ld\n", GetLastError());
     ok(AccessStatus && (Access == KEY_READ),
-        "AccessCheck failed to grant access with error %d\n",
+        "AccessCheck failed to grant access with error %ld\n",
         GetLastError());
     ret = AccessCheck(SecurityDescriptor, Token, MAXIMUM_ALLOWED, &Mapping,
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
-    ok(ret, "AccessCheck failed with error %d\n", GetLastError());
+    ok(ret, "AccessCheck failed with error %ld\n", GetLastError());
     ok(AccessStatus && (Access == KEY_ALL_ACCESS),
-        "AccessCheck failed to grant access with error %d\n",
+        "AccessCheck failed to grant access with error %ld\n",
         GetLastError());
 
     /* sd with blank dacl */
     ret = SetSecurityDescriptorDacl(SecurityDescriptor, TRUE, Acl, FALSE);
-    ok(ret, "SetSecurityDescriptorDacl failed with error %d\n", GetLastError());
+    ok(ret, "SetSecurityDescriptorDacl failed with error %ld\n", GetLastError());
     ret = AccessCheck(SecurityDescriptor, Token, KEY_READ, &Mapping,
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
-    ok(ret, "AccessCheck failed with error %d\n", GetLastError());
+    ok(ret, "AccessCheck failed with error %ld\n", GetLastError());
     err = GetLastError();
     ok(!AccessStatus && err == ERROR_ACCESS_DENIED, "AccessCheck should have failed "
-       "with ERROR_ACCESS_DENIED, instead of %d\n", err);
-    ok(!Access, "Should have failed to grant any access, got 0x%08x\n", Access);
+       "with ERROR_ACCESS_DENIED, instead of %ld\n", err);
+    ok(!Access, "Should have failed to grant any access, got 0x%08lx\n", Access);
 
     res = AddAccessAllowedAce(Acl, ACL_REVISION, KEY_READ, EveryoneSid);
-    ok(res, "AddAccessAllowedAce failed with error %d\n", GetLastError());
+    ok(res, "AddAccessAllowedAce failed with error %ld\n", GetLastError());
 
     res = AddAccessDeniedAce(Acl, ACL_REVISION, KEY_SET_VALUE, AdminSid);
-    ok(res, "AddAccessDeniedAce failed with error %d\n", GetLastError());
+    ok(res, "AddAccessDeniedAce failed with error %ld\n", GetLastError());
 
     /* sd with dacl */
     Access = AccessStatus = 0x1abe11ed;
     ret = AccessCheck(SecurityDescriptor, Token, KEY_READ, &Mapping,
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
-    ok(ret, "AccessCheck failed with error %d\n", GetLastError());
+    ok(ret, "AccessCheck failed with error %ld\n", GetLastError());
     ok(AccessStatus && (Access == KEY_READ),
-        "AccessCheck failed to grant access with error %d\n",
+        "AccessCheck failed to grant access with error %ld\n",
         GetLastError());
 
     ret = AccessCheck(SecurityDescriptor, Token, MAXIMUM_ALLOWED, &Mapping,
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
-    ok(ret, "AccessCheck failed with error %d\n", GetLastError());
+    ok(ret, "AccessCheck failed with error %ld\n", GetLastError());
     ok(AccessStatus,
-        "AccessCheck failed to grant any access with error %d\n",
+        "AccessCheck failed to grant any access with error %ld\n",
         GetLastError());
-    trace("AccessCheck with MAXIMUM_ALLOWED got Access 0x%08x\n", Access);
+    trace("AccessCheck with MAXIMUM_ALLOWED got Access 0x%08lx\n", Access);
 
     /* Null PrivSet with null PrivSetLen pointer */
     SetLastError(0xdeadbeef);
@@ -1477,7 +1477,7 @@ static void test_AccessCheck(void)
                       NULL, NULL, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_NOACCESS, "AccessCheck should have "
-       "failed with ERROR_NOACCESS, instead of %d\n", err);
+       "failed with ERROR_NOACCESS, instead of %ld\n", err);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
@@ -1490,9 +1490,9 @@ static void test_AccessCheck(void)
     err = GetLastError();
     todo_wine
     ok(!ret && err == ERROR_INSUFFICIENT_BUFFER, "AccessCheck should have "
-       "failed with ERROR_INSUFFICIENT_BUFFER, instead of %d\n", err);
+       "failed with ERROR_INSUFFICIENT_BUFFER, instead of %ld\n", err);
     todo_wine
-    ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %d\n", PrivSetLen);
+    ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %ld\n", PrivSetLen);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
@@ -1504,8 +1504,8 @@ static void test_AccessCheck(void)
                       0, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_NOACCESS, "AccessCheck should have "
-       "failed with ERROR_NOACCESS, instead of %d\n", err);
-    ok(PrivSetLen == 1, "PrivSetLen returns %d\n", PrivSetLen);
+       "failed with ERROR_NOACCESS, instead of %ld\n", err);
+    ok(PrivSetLen == 1, "PrivSetLen returns %ld\n", PrivSetLen);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
@@ -1517,8 +1517,8 @@ static void test_AccessCheck(void)
                       0, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_NOACCESS, "AccessCheck should have "
-       "failed with ERROR_NOACCESS, instead of %d\n", err);
-    ok(PrivSetLen == sizeof(PRIVILEGE_SET) - 1, "PrivSetLen returns %d\n", PrivSetLen);
+       "failed with ERROR_NOACCESS, instead of %ld\n", err);
+    ok(PrivSetLen == sizeof(PRIVILEGE_SET) - 1, "PrivSetLen returns %ld\n", PrivSetLen);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
@@ -1530,8 +1530,8 @@ static void test_AccessCheck(void)
                       0, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_NOACCESS, "AccessCheck should have "
-       "failed with ERROR_NOACCESS, instead of %d\n", err);
-    ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %d\n", PrivSetLen);
+       "failed with ERROR_NOACCESS, instead of %ld\n", err);
+    ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %ld\n", PrivSetLen);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
@@ -1543,8 +1543,8 @@ static void test_AccessCheck(void)
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_INSUFFICIENT_BUFFER, "AccessCheck should have "
-       "failed with ERROR_INSUFFICIENT_BUFFER, instead of %d\n", err);
-    ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %d\n", PrivSetLen);
+       "failed with ERROR_INSUFFICIENT_BUFFER, instead of %ld\n", err);
+    ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %ld\n", PrivSetLen);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
@@ -1556,8 +1556,8 @@ static void test_AccessCheck(void)
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_INSUFFICIENT_BUFFER, "AccessCheck should have "
-       "failed with ERROR_INSUFFICIENT_BUFFER, instead of %d\n", err);
-    ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %d\n", PrivSetLen);
+       "failed with ERROR_INSUFFICIENT_BUFFER, instead of %ld\n", err);
+    ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %ld\n", PrivSetLen);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
@@ -1570,8 +1570,8 @@ static void test_AccessCheck(void)
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_INSUFFICIENT_BUFFER, "AccessCheck should have "
-       "failed with ERROR_INSUFFICIENT_BUFFER, instead of %d\n", err);
-    ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %d\n", PrivSetLen);
+       "failed with ERROR_INSUFFICIENT_BUFFER, instead of %ld\n", err);
+    ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %ld\n", PrivSetLen);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
     ok(PrivSet->PrivilegeCount == 0xdeadbeef, "buffer contents should not be changed\n");
@@ -1584,11 +1584,11 @@ static void test_AccessCheck(void)
     ret = AccessCheck(SecurityDescriptor, Token, KEY_READ, &Mapping,
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
-    ok(ret, "AccessCheck failed with error %d\n", GetLastError());
-    ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %d\n", PrivSetLen);
+    ok(ret, "AccessCheck failed with error %ld\n", GetLastError());
+    ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %ld\n", PrivSetLen);
     ok(AccessStatus && (Access == KEY_READ),
-        "AccessCheck failed to grant access with error %d\n", GetLastError());
-    ok(PrivSet->PrivilegeCount == 0, "PrivilegeCount returns %d, expects 0\n",
+        "AccessCheck failed to grant access with error %ld\n", GetLastError());
+    ok(PrivSet->PrivilegeCount == 0, "PrivilegeCount returns %ld, expects 0\n",
         PrivSet->PrivilegeCount);
 
     /* Valid PrivSet with sufficient PrivSetLen */
@@ -1599,12 +1599,12 @@ static void test_AccessCheck(void)
     ret = AccessCheck(SecurityDescriptor, Token, KEY_READ, &Mapping,
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
-    ok(ret, "AccessCheck failed with error %d\n", GetLastError());
+    ok(ret, "AccessCheck failed with error %ld\n", GetLastError());
     todo_wine
-    ok(PrivSetLen == sizeof(PRIVILEGE_SET) + 1, "PrivSetLen returns %d\n", PrivSetLen);
+    ok(PrivSetLen == sizeof(PRIVILEGE_SET) + 1, "PrivSetLen returns %ld\n", PrivSetLen);
     ok(AccessStatus && (Access == KEY_READ),
-        "AccessCheck failed to grant access with error %d\n", GetLastError());
-    ok(PrivSet->PrivilegeCount == 0, "PrivilegeCount returns %d, expects 0\n",
+        "AccessCheck failed to grant access with error %ld\n", GetLastError());
+    ok(PrivSet->PrivilegeCount == 0, "PrivilegeCount returns %ld, expects 0\n",
         PrivSet->PrivilegeCount);
 
     PrivSetLen = FIELD_OFFSET(PRIVILEGE_SET, Privilege[16]);
@@ -1616,7 +1616,7 @@ static void test_AccessCheck(void)
                       0, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_NOACCESS, "AccessCheck should have "
-       "failed with ERROR_NOACCESS, instead of %d\n", err);
+       "failed with ERROR_NOACCESS, instead of %ld\n", err);
     ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
        "Access and/or AccessStatus were changed!\n");
 
@@ -1625,22 +1625,22 @@ static void test_AccessCheck(void)
     Access = AccessStatus = 0x1abe11ed;
     ret = AccessCheck(SecurityDescriptor, Token, KEY_WRITE, &Mapping,
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
-    ok(ret, "AccessCheck failed with error %d\n", GetLastError());
+    ok(ret, "AccessCheck failed with error %ld\n", GetLastError());
     err = GetLastError();
     ok(!AccessStatus && err == ERROR_ACCESS_DENIED, "AccessCheck should have failed "
-       "with ERROR_ACCESS_DENIED, instead of %d\n", err);
-    ok(!Access, "Should have failed to grant any access, got 0x%08x\n", Access);
+       "with ERROR_ACCESS_DENIED, instead of %ld\n", err);
+    ok(!Access, "Should have failed to grant any access, got 0x%08lx\n", Access);
 
     SetLastError(0xdeadbeef);
     PrivSet->PrivilegeCount = 16;
     ret = AccessCheck(SecurityDescriptor, Token, ACCESS_SYSTEM_SECURITY, &Mapping,
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
     ok(ret && !AccessStatus && GetLastError() == ERROR_PRIVILEGE_NOT_HELD,
-        "AccessCheck should have failed with ERROR_PRIVILEGE_NOT_HELD, instead of %d\n",
+        "AccessCheck should have failed with ERROR_PRIVILEGE_NOT_HELD, instead of %ld\n",
         GetLastError());
 
     ret = ImpersonateLoggedOnUser(Token);
-    ok(ret, "ImpersonateLoggedOnUser failed with error %d\n", GetLastError());
+    ok(ret, "ImpersonateLoggedOnUser failed with error %ld\n", GetLastError());
     ret = pRtlAdjustPrivilege(SE_SECURITY_PRIVILEGE, TRUE, TRUE, &Enabled);
     if (!ret)
     {
@@ -1652,8 +1652,8 @@ static void test_AccessCheck(void)
                           PrivSet, &PrivSetLen, &Access, &AccessStatus);
         err = GetLastError();
         ok(!ret && err == ERROR_INSUFFICIENT_BUFFER, "AccessCheck should have "
-           "failed with ERROR_INSUFFICIENT_BUFFER, instead of %d\n", err);
-        ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %d\n", PrivSetLen);
+           "failed with ERROR_INSUFFICIENT_BUFFER, instead of %ld\n", err);
+        ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %ld\n", PrivSetLen);
         ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
            "Access and/or AccessStatus were changed!\n");
 
@@ -1665,8 +1665,8 @@ static void test_AccessCheck(void)
                           PrivSet, &PrivSetLen, &Access, &AccessStatus);
         err = GetLastError();
         ok(!ret && err == ERROR_INSUFFICIENT_BUFFER, "AccessCheck should have "
-           "failed with ERROR_INSUFFICIENT_BUFFER, instead of %d\n", err);
-        ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %d\n", PrivSetLen);
+           "failed with ERROR_INSUFFICIENT_BUFFER, instead of %ld\n", err);
+        ok(PrivSetLen == sizeof(PRIVILEGE_SET), "PrivSetLen returns %ld\n", PrivSetLen);
         ok(Access == 0x1abe11ed && AccessStatus == 0x1abe11ed,
            "Access and/or AccessStatus were changed!\n");
 
@@ -1678,12 +1678,12 @@ static void test_AccessCheck(void)
         ret = AccessCheck(SecurityDescriptor, Token, ACCESS_SYSTEM_SECURITY, &Mapping,
                           PrivSet, &PrivSetLen, &Access, &AccessStatus);
         ok(ret && AccessStatus && GetLastError() == 0xdeadbeef,
-            "AccessCheck should have succeeded, error %d\n",
+            "AccessCheck should have succeeded, error %ld\n",
             GetLastError());
         ok(Access == ACCESS_SYSTEM_SECURITY,
-            "Access should be equal to ACCESS_SYSTEM_SECURITY instead of 0x%08x\n",
+            "Access should be equal to ACCESS_SYSTEM_SECURITY instead of 0x%08lx\n",
             Access);
-        ok(PrivSet->PrivilegeCount == 1, "PrivilegeCount returns %d, expects 1\n",
+        ok(PrivSet->PrivilegeCount == 1, "PrivilegeCount returns %ld, expects 1\n",
             PrivSet->PrivilegeCount);
 
         /* Valid PrivSet with large PrivSetLen */
@@ -1694,23 +1694,23 @@ static void test_AccessCheck(void)
         ret = AccessCheck(SecurityDescriptor, Token, ACCESS_SYSTEM_SECURITY, &Mapping,
                           PrivSet, &PrivSetLen, &Access, &AccessStatus);
         ok(ret && AccessStatus && GetLastError() == 0xdeadbeef,
-            "AccessCheck should have succeeded, error %d\n",
+            "AccessCheck should have succeeded, error %ld\n",
             GetLastError());
         ok(Access == ACCESS_SYSTEM_SECURITY,
-            "Access should be equal to ACCESS_SYSTEM_SECURITY instead of 0x%08x\n",
+            "Access should be equal to ACCESS_SYSTEM_SECURITY instead of 0x%08lx\n",
             Access);
-        ok(PrivSet->PrivilegeCount == 1, "PrivilegeCount returns %d, expects 1\n",
+        ok(PrivSet->PrivilegeCount == 1, "PrivilegeCount returns %ld, expects 1\n",
             PrivSet->PrivilegeCount);
     }
     else
         trace("Couldn't get SE_SECURITY_PRIVILEGE (0x%08x), skipping ACCESS_SYSTEM_SECURITY test\n",
             ret);
     ret = RevertToSelf();
-    ok(ret, "RevertToSelf failed with error %d\n", GetLastError());
+    ok(ret, "RevertToSelf failed with error %ld\n", GetLastError());
 
     /* test INHERIT_ONLY_ACE */
     ret = InitializeAcl(Acl, 256, ACL_REVISION);
-    ok(ret, "InitializeAcl failed with error %d\n", GetLastError());
+    ok(ret, "InitializeAcl failed with error %ld\n", GetLastError());
 
     /* NT doesn't have AddAccessAllowedAceEx. Skipping this call/test doesn't influence
      * the next ones.
@@ -1718,30 +1718,30 @@ static void test_AccessCheck(void)
     if (pAddAccessAllowedAceEx)
     {
         ret = pAddAccessAllowedAceEx(Acl, ACL_REVISION, INHERIT_ONLY_ACE, KEY_READ, EveryoneSid);
-        ok(ret, "AddAccessAllowedAceEx failed with error %d\n", GetLastError());
+        ok(ret, "AddAccessAllowedAceEx failed with error %ld\n", GetLastError());
     }
     else
         win_skip("AddAccessAllowedAceEx is not available\n");
 
     ret = AccessCheck(SecurityDescriptor, Token, KEY_READ, &Mapping,
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
-    ok(ret, "AccessCheck failed with error %d\n", GetLastError());
+    ok(ret, "AccessCheck failed with error %ld\n", GetLastError());
     err = GetLastError();
     ok(!AccessStatus && err == ERROR_ACCESS_DENIED, "AccessCheck should have failed "
-       "with ERROR_ACCESS_DENIED, instead of %d\n", err);
-    ok(!Access, "Should have failed to grant any access, got 0x%08x\n", Access);
+       "with ERROR_ACCESS_DENIED, instead of %ld\n", err);
+    ok(!Access, "Should have failed to grant any access, got 0x%08lx\n", Access);
 
     CloseHandle(Token);
 
     res = DuplicateToken(ProcessToken, SecurityAnonymous, &Token);
-    ok(res, "DuplicateToken failed with error %d\n", GetLastError());
+    ok(res, "DuplicateToken failed with error %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = AccessCheck(SecurityDescriptor, Token, MAXIMUM_ALLOWED, &Mapping,
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_BAD_IMPERSONATION_LEVEL, "AccessCheck should have failed "
-       "with ERROR_BAD_IMPERSONATION_LEVEL, instead of %d\n", err);
+       "with ERROR_BAD_IMPERSONATION_LEVEL, instead of %ld\n", err);
 
     CloseHandle(Token);
 
@@ -1750,7 +1750,7 @@ static void test_AccessCheck(void)
                       PrivSet, &PrivSetLen, &Access, &AccessStatus);
     err = GetLastError();
     ok(!ret && err == ERROR_NO_IMPERSONATION_TOKEN, "AccessCheck should have failed "
-       "with ERROR_NO_IMPERSONATION_TOKEN, instead of %d\n", err);
+       "with ERROR_NO_IMPERSONATION_TOKEN, instead of %ld\n", err);
 
     CloseHandle(ProcessToken);
 
@@ -1788,40 +1788,40 @@ static void test_token_attr(void)
         win_skip("OpenProcessToken is not implemented\n");
         return;
     }
-    ok(ret, "OpenProcessToken failed with error %d\n", GetLastError());
+    ok(ret, "OpenProcessToken failed with error %ld\n", GetLastError());
     if (ret)
     {
         DWORD buf[256]; /* GetTokenInformation wants a dword-aligned buffer */
         Size = sizeof(buf);
         ret = GetTokenInformation(Token, TokenUser,(void*)buf, Size, &Size);
-        ok(ret, "GetTokenInformation failed with error %d\n", GetLastError());
+        ok(ret, "GetTokenInformation failed with error %ld\n", GetLastError());
         Size = sizeof(ImpersonationLevel);
         ret = GetTokenInformation(Token, TokenImpersonationLevel, &ImpersonationLevel, Size, &Size);
         GLE = GetLastError();
-        ok(!ret && (GLE == ERROR_INVALID_PARAMETER), "GetTokenInformation(TokenImpersonationLevel) on primary token should have failed with ERROR_INVALID_PARAMETER instead of %d\n", GLE);
+        ok(!ret && (GLE == ERROR_INVALID_PARAMETER), "GetTokenInformation(TokenImpersonationLevel) on primary token should have failed with ERROR_INVALID_PARAMETER instead of %ld\n", GLE);
         CloseHandle(Token);
     }
 
     SetLastError(0xdeadbeef);
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_ALL_ACCESS, &Token);
-    ok(ret, "OpenProcessToken failed with error %d\n", GetLastError());
+    ok(ret, "OpenProcessToken failed with error %ld\n", GetLastError());
 
     /* groups */
     /* insufficient buffer length */
     SetLastError(0xdeadbeef);
     Size2 = 0;
     ret = GetTokenInformation(Token, TokenGroups, NULL, 0, &Size2);
-    ok(Size2 > 1, "got %d\n", Size2);
+    ok(Size2 > 1, "got %ld\n", Size2);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-        "%d with error %d\n", ret, GetLastError());
+        "%d with error %ld\n", ret, GetLastError());
     Size2 -= 1;
     Groups = HeapAlloc(GetProcessHeap(), 0, Size2);
     memset(Groups, 0xcc, Size2);
     Size = 0;
     ret = GetTokenInformation(Token, TokenGroups, Groups, Size2, &Size);
-    ok(Size > 1, "got %d\n", Size);
+    ok(Size > 1, "got %ld\n", Size);
     ok((!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER) || broken(ret) /* wow64 */,
-        "%d with error %d\n", ret, GetLastError());
+        "%d with error %ld\n", ret, GetLastError());
     if(!ret)
         ok(*((BYTE*)Groups) == 0xcc, "buffer altered\n");
 
@@ -1830,14 +1830,14 @@ static void test_token_attr(void)
     SetLastError(0xdeadbeef);
     ret = GetTokenInformation(Token, TokenGroups, NULL, 0, &Size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-        "GetTokenInformation(TokenGroups) %s with error %d\n",
+        "GetTokenInformation(TokenGroups) %s with error %ld\n",
         ret ? "succeeded" : "failed", GetLastError());
     Groups = HeapAlloc(GetProcessHeap(), 0, Size);
     SetLastError(0xdeadbeef);
     ret = GetTokenInformation(Token, TokenGroups, Groups, Size, &Size);
-    ok(ret, "GetTokenInformation(TokenGroups) failed with error %d\n", GetLastError());
+    ok(ret, "GetTokenInformation(TokenGroups) failed with error %ld\n", GetLastError());
     ok(GetLastError() == 0xdeadbeef,
-       "GetTokenInformation shouldn't have set last error to %d\n",
+       "GetTokenInformation shouldn't have set last error to %ld\n",
        GetLastError());
     trace("TokenGroups:\n");
     for (i = 0; i < Groups->GroupCount; i++)
@@ -1853,24 +1853,24 @@ static void test_token_attr(void)
         if (ret)
         {
             ConvertSidToStringSidA(Groups->Groups[i].Sid, &SidString);
-            trace("%s, %s\\%s use: %d attr: 0x%08x\n", SidString, Domain, Name, SidNameUse, Groups->Groups[i].Attributes);
+            trace("%s, %s\\%s use: %d attr: 0x%08lx\n", SidString, Domain, Name, SidNameUse, Groups->Groups[i].Attributes);
             LocalFree(SidString);
         }
-        else trace("attr: 0x%08x LookupAccountSid failed with error %d\n", Groups->Groups[i].Attributes, GetLastError());
+        else trace("attr: 0x%08lx LookupAccountSid failed with error %ld\n", Groups->Groups[i].Attributes, GetLastError());
     }
     HeapFree(GetProcessHeap(), 0, Groups);
 
     /* user */
     ret = GetTokenInformation(Token, TokenUser, NULL, 0, &Size);
     ok(!ret && (GetLastError() == ERROR_INSUFFICIENT_BUFFER),
-        "GetTokenInformation(TokenUser) failed with error %d\n", GetLastError());
+        "GetTokenInformation(TokenUser) failed with error %ld\n", GetLastError());
     User = HeapAlloc(GetProcessHeap(), 0, Size);
     ret = GetTokenInformation(Token, TokenUser, User, Size, &Size);
     ok(ret,
-        "GetTokenInformation(TokenUser) failed with error %d\n", GetLastError());
+        "GetTokenInformation(TokenUser) failed with error %ld\n", GetLastError());
 
     ConvertSidToStringSidA(User->User.Sid, &SidString);
-    trace("TokenUser: %s attr: 0x%08x\n", SidString, User->User.Attributes);
+    trace("TokenUser: %s attr: 0x%08lx\n", SidString, User->User.Attributes);
     LocalFree(SidString);
     HeapFree(GetProcessHeap(), 0, User);
 
@@ -1881,14 +1881,14 @@ static void test_token_attr(void)
     else
     {
         ok(!ret && (GetLastError() == ERROR_INSUFFICIENT_BUFFER),
-            "GetTokenInformation(TokenLogonSid) failed with error %d\n", GetLastError());
+            "GetTokenInformation(TokenLogonSid) failed with error %ld\n", GetLastError());
         Groups = HeapAlloc(GetProcessHeap(), 0, Size);
         ret = GetTokenInformation(Token, TokenLogonSid, Groups, Size, &Size);
         ok(ret,
-            "GetTokenInformation(TokenLogonSid) failed with error %d\n", GetLastError());
+            "GetTokenInformation(TokenLogonSid) failed with error %ld\n", GetLastError());
         if (ret)
         {
-            ok(Groups->GroupCount == 1, "got %d\n", Groups->GroupCount);
+            ok(Groups->GroupCount == 1, "got %ld\n", Groups->GroupCount);
             if(Groups->GroupCount == 1)
             {
                 ConvertSidToStringSidA(Groups->Groups[0].Sid, &SidString);
@@ -1907,27 +1907,27 @@ static void test_token_attr(void)
     /* privileges */
     ret = GetTokenInformation(Token, TokenPrivileges, NULL, 0, &Size);
     ok(!ret && (GetLastError() == ERROR_INSUFFICIENT_BUFFER),
-        "GetTokenInformation(TokenPrivileges) failed with error %d\n", GetLastError());
+        "GetTokenInformation(TokenPrivileges) failed with error %ld\n", GetLastError());
     Privileges = HeapAlloc(GetProcessHeap(), 0, Size);
     ret = GetTokenInformation(Token, TokenPrivileges, Privileges, Size, &Size);
     ok(ret,
-        "GetTokenInformation(TokenPrivileges) failed with error %d\n", GetLastError());
+        "GetTokenInformation(TokenPrivileges) failed with error %ld\n", GetLastError());
     trace("TokenPrivileges:\n");
     for (i = 0; i < Privileges->PrivilegeCount; i++)
     {
         CHAR Name[256];
         DWORD NameLen = ARRAY_SIZE(Name);
         LookupPrivilegeNameA(NULL, &Privileges->Privileges[i].Luid, Name, &NameLen);
-        trace("\t%s, 0x%x\n", Name, Privileges->Privileges[i].Attributes);
+        trace("\t%s, 0x%lx\n", Name, Privileges->Privileges[i].Attributes);
     }
     HeapFree(GetProcessHeap(), 0, Privileges);
 
     ret = DuplicateToken(Token, SecurityAnonymous, &ImpersonationToken);
-    ok(ret, "DuplicateToken failed with error %d\n", GetLastError());
+    ok(ret, "DuplicateToken failed with error %ld\n", GetLastError());
 
     Size = sizeof(ImpersonationLevel);
     ret = GetTokenInformation(ImpersonationToken, TokenImpersonationLevel, &ImpersonationLevel, Size, &Size);
-    ok(ret, "GetTokenInformation(TokenImpersonationLevel) failed with error %d\n", GetLastError());
+    ok(ret, "GetTokenInformation(TokenImpersonationLevel) failed with error %ld\n", GetLastError());
     ok(ImpersonationLevel == SecurityAnonymous, "ImpersonationLevel should have been SecurityAnonymous instead of %d\n", ImpersonationLevel);
 
     CloseHandle(ImpersonationToken);
@@ -1935,23 +1935,23 @@ static void test_token_attr(void)
     /* default dacl */
     ret = GetTokenInformation(Token, TokenDefaultDacl, NULL, 0, &Size);
     ok(!ret && (GetLastError() == ERROR_INSUFFICIENT_BUFFER),
-        "GetTokenInformation(TokenDefaultDacl) failed with error %u\n", GetLastError());
+        "GetTokenInformation(TokenDefaultDacl) failed with error %lu\n", GetLastError());
 
     Dacl = HeapAlloc(GetProcessHeap(), 0, Size);
     ret = GetTokenInformation(Token, TokenDefaultDacl, Dacl, Size, &Size);
-    ok(ret, "GetTokenInformation(TokenDefaultDacl) failed with error %u\n", GetLastError());
+    ok(ret, "GetTokenInformation(TokenDefaultDacl) failed with error %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = SetTokenInformation(Token, TokenDefaultDacl, NULL, 0);
     GLE = GetLastError();
     ok(!ret, "SetTokenInformation(TokenDefaultDacl) succeeded\n");
-    ok(GLE == ERROR_BAD_LENGTH, "expected ERROR_BAD_LENGTH got %u\n", GLE);
+    ok(GLE == ERROR_BAD_LENGTH, "expected ERROR_BAD_LENGTH got %lu\n", GLE);
 
     SetLastError(0xdeadbeef);
     ret = SetTokenInformation(Token, TokenDefaultDacl, NULL, Size);
     GLE = GetLastError();
     ok(!ret, "SetTokenInformation(TokenDefaultDacl) succeeded\n");
-    ok(GLE == ERROR_NOACCESS, "expected ERROR_NOACCESS got %u\n", GLE);
+    ok(GLE == ERROR_NOACCESS, "expected ERROR_NOACCESS got %lu\n", GLE);
 
     acl = Dacl->DefaultDacl;
     Dacl->DefaultDacl = NULL;
@@ -1962,18 +1962,18 @@ static void test_token_attr(void)
     Size2 = 0;
     Dacl->DefaultDacl = (ACL *)0xdeadbeef;
     ret = GetTokenInformation(Token, TokenDefaultDacl, Dacl, Size, &Size2);
-    ok(ret, "GetTokenInformation(TokenDefaultDacl) failed with error %u\n", GetLastError());
+    ok(ret, "GetTokenInformation(TokenDefaultDacl) failed with error %lu\n", GetLastError());
     ok(Dacl->DefaultDacl == NULL, "expected NULL, got %p\n", Dacl->DefaultDacl);
     ok(Size2 == sizeof(TOKEN_DEFAULT_DACL) || broken(Size2 == 2*sizeof(TOKEN_DEFAULT_DACL)), /* WoW64 */
-       "got %u expected sizeof(TOKEN_DEFAULT_DACL)\n", Size2);
+       "got %lu expected sizeof(TOKEN_DEFAULT_DACL)\n", Size2);
 
     Dacl->DefaultDacl = acl;
     ret = SetTokenInformation(Token, TokenDefaultDacl, Dacl, Size);
-    ok(ret, "SetTokenInformation(TokenDefaultDacl) failed with error %u\n", GetLastError());
+    ok(ret, "SetTokenInformation(TokenDefaultDacl) failed with error %lu\n", GetLastError());
 
     if (Size2 == sizeof(TOKEN_DEFAULT_DACL)) {
         ret = GetTokenInformation(Token, TokenDefaultDacl, Dacl, Size, &Size2);
-        ok(ret, "GetTokenInformation(TokenDefaultDacl) failed with error %u\n", GetLastError());
+        ok(ret, "GetTokenInformation(TokenDefaultDacl) failed with error %lu\n", GetLastError());
     } else
         win_skip("TOKEN_DEFAULT_DACL size too small on WoW64\n");
 
@@ -1988,7 +1988,7 @@ static void test_GetTokenInformation(void)
     BOOL ret;
 
     ret = OpenProcessToken(GetCurrentProcess(), MAXIMUM_ALLOWED, &token);
-    ok(ret, "OpenProcessToken failed: %u\n", GetLastError());
+    ok(ret, "OpenProcessToken failed: %lu\n", GetLastError());
 
     size = 0;
     is_app_container = 0xdeadbeef;
@@ -1996,10 +1996,10 @@ static void test_GetTokenInformation(void)
                               sizeof(is_app_container), &size);
     ok(ret || broken(GetLastError() == ERROR_INVALID_PARAMETER ||
                      GetLastError() == ERROR_INVALID_FUNCTION), /* pre-win8 */
-       "GetTokenInformation failed: %u\n", GetLastError());
+       "GetTokenInformation failed: %lu\n", GetLastError());
     if(ret) {
-        ok(size == sizeof(is_app_container), "size = %u\n", size);
-        ok(!is_app_container, "is_app_container = %x\n", is_app_container);
+        ok(size == sizeof(is_app_container), "size = %lu\n", size);
+        ok(!is_app_container, "is_app_container = %lx\n", is_app_container);
     }
 
     CloseHandle(token);
@@ -2015,7 +2015,7 @@ static void test_sid_str(PSID * sid)
 {
     char *str_sid;
     BOOL ret = ConvertSidToStringSidA(sid, &str_sid);
-    ok(ret, "ConvertSidToStringSidA() failed: %d\n", GetLastError());
+    ok(ret, "ConvertSidToStringSidA() failed: %ld\n", GetLastError());
     if (ret)
     {
         char account[MAX_PATH], domain[MAX_PATH];
@@ -2024,7 +2024,7 @@ static void test_sid_str(PSID * sid)
         DWORD dom_size = MAX_PATH;
         ret = LookupAccountSidA (NULL, sid, account, &acc_size, domain, &dom_size, &use);
         ok(ret || GetLastError() == ERROR_NONE_MAPPED,
-           "LookupAccountSid(%s) failed: %d\n", str_sid, GetLastError());
+           "LookupAccountSid(%s) failed: %ld\n", str_sid, GetLastError());
         if (ret)
             trace(" %s %s\\%s %d\n", str_sid, domain, account, use);
         else if (GetLastError() == ERROR_NONE_MAPPED)
@@ -2086,18 +2086,18 @@ static void test_CreateWellKnownSid(void)
     ret = CreateWellKnownSid(WinInteractiveSid, NULL, NULL, &size);
     error = GetLastError();
     ok(!ret, "CreateWellKnownSid succeeded\n");
-    ok(error == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %u\n", error);
+    ok(error == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %lu\n", error);
     ok(size, "expected size > 0\n");
 
     SetLastError(0xdeadbeef);
     ret = CreateWellKnownSid(WinInteractiveSid, NULL, NULL, &size);
     error = GetLastError();
     ok(!ret, "CreateWellKnownSid succeeded\n");
-    ok(error == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %u\n", error);
+    ok(error == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %lu\n", error);
 
     sid = HeapAlloc(GetProcessHeap(), 0, size);
     ret = CreateWellKnownSid(WinInteractiveSid, NULL, sid, &size);
-    ok(ret, "CreateWellKnownSid failed %u\n", GetLastError());
+    ok(ret, "CreateWellKnownSid failed %lu\n", GetLastError());
     HeapFree(GetProcessHeap(), 0, sid);
 
     /* a domain sid usually have three subauthorities but we test that CreateWellKnownSid doesn't check it */
@@ -2123,7 +2123,7 @@ static void test_CreateWellKnownSid(void)
 
         cb = sizeof(sid_buffer);
         ok(CreateWellKnownSid(i, value->without_domain ? NULL : domainsid, sid_buffer, &cb), "Couldn't create well known sid %u\n", i);
-        expect_eq(GetSidLengthRequired(*GetSidSubAuthorityCount(sid_buffer)), cb, DWORD, "%d");
+        expect_eq(GetSidLengthRequired(*GetSidSubAuthorityCount(sid_buffer)), cb, DWORD, "%ld");
         ok(IsValidSid(sid_buffer), "The sid is not valid\n");
         ok(ConvertSidToStringSidA(sid_buffer, &str), "Couldn't convert SID to string\n");
         ok(strcmp(str, value->sid_string) == 0, "%d: SID mismatch - expected %s, got %s\n", i,
@@ -2135,7 +2135,7 @@ static void test_CreateWellKnownSid(void)
             char buf2[SECURITY_MAX_SID_SIZE];
             cb = sizeof(buf2);
             ok(CreateWellKnownSid(i, domainsid, buf2, &cb), "Couldn't create well known sid %u with optional domain\n", i);
-            expect_eq(GetSidLengthRequired(*GetSidSubAuthorityCount(sid_buffer)), cb, DWORD, "%d");
+            expect_eq(GetSidLengthRequired(*GetSidSubAuthorityCount(sid_buffer)), cb, DWORD, "%ld");
             ok(memcmp(buf2, sid_buffer, cb) == 0, "SID create with domain is different than without (%u)\n", i);
         }
     }
@@ -2170,7 +2170,7 @@ static void test_LookupAccountSid(void)
     ret = AllocateAndInitializeSid(&SIDAuthNT, 2, SECURITY_BUILTIN_DOMAIN_RID,
         DOMAIN_ALIAS_RID_USERS, 0, 0, 0, 0, 0, 0, &pUsersSid);
     ok(ret || (GetLastError() == ERROR_CALL_NOT_IMPLEMENTED),
-       "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+       "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     /* not running on NT so give up */
     if (!ret && (GetLastError() == ERROR_CALL_NOT_IMPLEMENTED))
@@ -2200,7 +2200,7 @@ static void test_LookupAccountSid(void)
     ret = LookupAccountSidA(NULL, pUsersSid, accountA, &acc_sizeA, domainA, &dom_sizeA, &use);
     ok(!ret, "LookupAccountSidA() Expected FALSE got TRUE\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "LookupAccountSidA() Expected ERROR_NOT_ENOUGH_MEMORY, got %u\n", GetLastError());
+       "LookupAccountSidA() Expected ERROR_NOT_ENOUGH_MEMORY, got %lu\n", GetLastError());
 
     /* try a 0 sized account buffer */
     acc_sizeA = 0;
@@ -2209,7 +2209,7 @@ static void test_LookupAccountSid(void)
     LookupAccountSidA(NULL, pUsersSid, accountA, &acc_sizeA, domainA, &dom_sizeA, &use);
     /* this can fail or succeed depending on OS version but the size will always be returned */
     ok(acc_sizeA == real_acc_sizeA + 1,
-       "LookupAccountSidA() Expected acc_size = %u, got %u\n",
+       "LookupAccountSidA() Expected acc_size = %lu, got %lu\n",
        real_acc_sizeA + 1, acc_sizeA);
 
     /* try a 0 sized account buffer */
@@ -2218,7 +2218,7 @@ static void test_LookupAccountSid(void)
     LookupAccountSidA(NULL, pUsersSid, NULL, &acc_sizeA, domainA, &dom_sizeA, &use);
     /* this can fail or succeed depending on OS version but the size will always be returned */
     ok(acc_sizeA == real_acc_sizeA + 1,
-       "LookupAccountSid() Expected acc_size = %u, got %u\n",
+       "LookupAccountSid() Expected acc_size = %lu, got %lu\n",
        real_acc_sizeA + 1, acc_sizeA);
 
     /* try a small domain buffer */
@@ -2228,7 +2228,7 @@ static void test_LookupAccountSid(void)
     ret = LookupAccountSidA(NULL, pUsersSid, accountA, &acc_sizeA, domainA, &dom_sizeA, &use);
     ok(!ret, "LookupAccountSidA() Expected FALSE got TRUE\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "LookupAccountSidA() Expected ERROR_NOT_ENOUGH_MEMORY, got %u\n", GetLastError());
+       "LookupAccountSidA() Expected ERROR_NOT_ENOUGH_MEMORY, got %lu\n", GetLastError());
 
     /* try a 0 sized domain buffer */
     dom_sizeA = 0;
@@ -2237,7 +2237,7 @@ static void test_LookupAccountSid(void)
     LookupAccountSidA(NULL, pUsersSid, accountA, &acc_sizeA, domainA, &dom_sizeA, &use);
     /* this can fail or succeed depending on OS version but the size will always be returned */
     ok(dom_sizeA == real_dom_sizeA + 1,
-       "LookupAccountSidA() Expected dom_size = %u, got %u\n",
+       "LookupAccountSidA() Expected dom_size = %lu, got %lu\n",
        real_dom_sizeA + 1, dom_sizeA);
 
     /* try a 0 sized domain buffer */
@@ -2246,7 +2246,7 @@ static void test_LookupAccountSid(void)
     LookupAccountSidA(NULL, pUsersSid, accountA, &acc_sizeA, NULL, &dom_sizeA, &use);
     /* this can fail or succeed depending on OS version but the size will always be returned */
     ok(dom_sizeA == real_dom_sizeA + 1,
-       "LookupAccountSidA() Expected dom_size = %u, got %u\n",
+       "LookupAccountSidA() Expected dom_size = %lu, got %lu\n",
        real_dom_sizeA + 1, dom_sizeA);
 
     real_acc_sizeW = MAX_PATH;
@@ -2260,7 +2260,7 @@ static void test_LookupAccountSid(void)
     ret = LookupAccountSidA("deepthought", pUsersSid, accountA, &real_acc_sizeA, domainA, &real_dom_sizeA, &use);
     ok(!ret, "LookupAccountSidA() Expected FALSE got TRUE\n");
     ok(GetLastError() == RPC_S_SERVER_UNAVAILABLE || GetLastError() == RPC_S_INVALID_NET_ADDR /* Vista */,
-       "LookupAccountSidA() Expected RPC_S_SERVER_UNAVAILABLE or RPC_S_INVALID_NET_ADDR, got %u\n", GetLastError());
+       "LookupAccountSidA() Expected RPC_S_SERVER_UNAVAILABLE or RPC_S_INVALID_NET_ADDR, got %lu\n", GetLastError());
 
     /* native windows crashes if domainW or accountW is NULL */
 
@@ -2271,7 +2271,7 @@ static void test_LookupAccountSid(void)
     ret = LookupAccountSidW(NULL, pUsersSid, accountW, &acc_sizeW, domainW, &dom_sizeW, &use);
     ok(!ret, "LookupAccountSidW() Expected FALSE got TRUE\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "LookupAccountSidW() Expected ERROR_NOT_ENOUGH_MEMORY, got %u\n", GetLastError());
+       "LookupAccountSidW() Expected ERROR_NOT_ENOUGH_MEMORY, got %lu\n", GetLastError());
 
     /* try a 0 sized account buffer */
     acc_sizeW = 0;
@@ -2280,7 +2280,7 @@ static void test_LookupAccountSid(void)
     LookupAccountSidW(NULL, pUsersSid, accountW, &acc_sizeW, domainW, &dom_sizeW, &use);
     /* this can fail or succeed depending on OS version but the size will always be returned */
     ok(acc_sizeW == real_acc_sizeW + 1,
-       "LookupAccountSidW() Expected acc_size = %u, got %u\n",
+       "LookupAccountSidW() Expected acc_size = %lu, got %lu\n",
        real_acc_sizeW + 1, acc_sizeW);
 
     /* try a 0 sized account buffer */
@@ -2289,7 +2289,7 @@ static void test_LookupAccountSid(void)
     LookupAccountSidW(NULL, pUsersSid, NULL, &acc_sizeW, domainW, &dom_sizeW, &use);
     /* this can fail or succeed depending on OS version but the size will always be returned */
     ok(acc_sizeW == real_acc_sizeW + 1,
-       "LookupAccountSidW() Expected acc_size = %u, got %u\n",
+       "LookupAccountSidW() Expected acc_size = %lu, got %lu\n",
        real_acc_sizeW + 1, acc_sizeW);
 
     /* try a small domain buffer */
@@ -2299,7 +2299,7 @@ static void test_LookupAccountSid(void)
     ret = LookupAccountSidW(NULL, pUsersSid, accountW, &acc_sizeW, domainW, &dom_sizeW, &use);
     ok(!ret, "LookupAccountSidW() Expected FALSE got TRUE\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "LookupAccountSidW() Expected ERROR_NOT_ENOUGH_MEMORY, got %u\n", GetLastError());
+       "LookupAccountSidW() Expected ERROR_NOT_ENOUGH_MEMORY, got %lu\n", GetLastError());
 
     /* try a 0 sized domain buffer */
     dom_sizeW = 0;
@@ -2308,7 +2308,7 @@ static void test_LookupAccountSid(void)
     LookupAccountSidW(NULL, pUsersSid, accountW, &acc_sizeW, domainW, &dom_sizeW, &use);
     /* this can fail or succeed depending on OS version but the size will always be returned */
     ok(dom_sizeW == real_dom_sizeW + 1,
-       "LookupAccountSidW() Expected dom_size = %u, got %u\n",
+       "LookupAccountSidW() Expected dom_size = %lu, got %lu\n",
        real_dom_sizeW + 1, dom_sizeW);
 
     /* try a 0 sized domain buffer */
@@ -2317,15 +2317,15 @@ static void test_LookupAccountSid(void)
     LookupAccountSidW(NULL, pUsersSid, accountW, &acc_sizeW, NULL, &dom_sizeW, &use);
     /* this can fail or succeed depending on OS version but the size will always be returned */
     ok(dom_sizeW == real_dom_sizeW + 1,
-       "LookupAccountSidW() Expected dom_size = %u, got %u\n",
+       "LookupAccountSidW() Expected dom_size = %lu, got %lu\n",
        real_dom_sizeW + 1, dom_sizeW);
 
     acc_sizeW = dom_sizeW = use = 0;
     SetLastError(0xdeadbeef);
     ret = LookupAccountSidW(NULL, pUsersSid, NULL, &acc_sizeW, NULL, &dom_sizeW, &use);
     error = GetLastError();
-    ok(!ret, "LookupAccountSidW failed %u\n", GetLastError());
-    ok(error == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %u\n", error);
+    ok(!ret, "LookupAccountSidW failed %lu\n", GetLastError());
+    ok(error == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %lu\n", error);
     ok(acc_sizeW, "expected non-zero account size\n");
     ok(dom_sizeW, "expected non-zero domain size\n");
     ok(!use, "expected zero use %u\n", use);
@@ -2335,9 +2335,9 @@ static void test_LookupAccountSid(void)
     /* Test LookupAccountSid with Sid retrieved from token information.
      This assumes this process is running under the account of the current user.*/
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY|TOKEN_DUPLICATE, &hToken);
-    ok(ret, "OpenProcessToken failed with error %d\n", GetLastError());
+    ok(ret, "OpenProcessToken failed with error %ld\n", GetLastError());
     ret = GetTokenInformation(hToken, TokenUser, NULL, 0, &cbti);
-    ok(!ret, "GetTokenInformation failed with error %d\n", GetLastError());
+    ok(!ret, "GetTokenInformation failed with error %ld\n", GetLastError());
     ptiUser = HeapAlloc(GetProcessHeap(), 0, cbti);
     if (GetTokenInformation(hToken, TokenUser, ptiUser, cbti, &cbti))
     {
@@ -2369,7 +2369,7 @@ static void test_LookupAccountSid(void)
         else
         {
             if (GetLastError() != ERROR_INVALID_PARAMETER)
-                trace(" CreateWellKnownSid(%d) failed: %d\n", i, GetLastError());
+                trace(" CreateWellKnownSid(%d) failed: %ld\n", i, GetLastError());
             else
                 trace(" %d: not supported\n", i);
         }
@@ -2380,20 +2380,20 @@ static void test_LookupAccountSid(void)
 
     status = LsaOpenPolicy( NULL, &object_attributes, POLICY_ALL_ACCESS, &handle);
     ok(status == STATUS_SUCCESS || status == STATUS_ACCESS_DENIED,
-       "LsaOpenPolicy(POLICY_ALL_ACCESS) returned 0x%08x\n", status);
+       "LsaOpenPolicy(POLICY_ALL_ACCESS) returned 0x%08lx\n", status);
 
     /* try a more restricted access mask if necessary */
     if (status == STATUS_ACCESS_DENIED) {
         trace("LsaOpenPolicy(POLICY_ALL_ACCESS) failed, trying POLICY_VIEW_LOCAL_INFORMATION\n");
         status = LsaOpenPolicy( NULL, &object_attributes, POLICY_VIEW_LOCAL_INFORMATION, &handle);
-        ok(status == STATUS_SUCCESS, "LsaOpenPolicy(POLICY_VIEW_LOCAL_INFORMATION) returned 0x%08x\n", status);
+        ok(status == STATUS_SUCCESS, "LsaOpenPolicy(POLICY_VIEW_LOCAL_INFORMATION) returned 0x%08lx\n", status);
     }
 
     if (status == STATUS_SUCCESS)
     {
         PPOLICY_ACCOUNT_DOMAIN_INFO info;
         status = LsaQueryInformationPolicy(handle, PolicyAccountDomainInformation, (PVOID*)&info);
-        ok(status == STATUS_SUCCESS, "LsaQueryInformationPolicy() failed, returned 0x%08x\n", status);
+        ok(status == STATUS_SUCCESS, "LsaQueryInformationPolicy() failed, returned 0x%08lx\n", status);
         if (status == STATUS_SUCCESS)
         {
             ok(info->DomainSid!=0, "LsaQueryInformationPolicy(PolicyAccountDomainInformation) missing SID\n");
@@ -2435,7 +2435,7 @@ static void test_LookupAccountSid(void)
         }
 
         status = LsaClose(handle);
-        ok(status == STATUS_SUCCESS, "LsaClose() failed, returned 0x%08x\n", status);
+        ok(status == STATUS_SUCCESS, "LsaClose() failed, returned 0x%08lx\n", status);
     }
 }
 
@@ -2537,7 +2537,7 @@ static void test_LookupAccountName(void)
     user_size = UNLEN + 1;
     SetLastError(0xdeadbeef);
     ret = GetUserNameA(user_name, &user_size);
-    ok(ret, "Failed to get user name : %d\n", GetLastError());
+    ok(ret, "Failed to get user name : %ld\n", GetLastError());
 
     /* get sizes */
     sid_size = 0;
@@ -2552,7 +2552,7 @@ static void test_LookupAccountName(void)
     }
     ok(!ret, "Expected 0, got %d\n", ret);
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
     ok(sid_size != 0, "Expected non-zero sid size\n");
     ok(domain_size != 0, "Expected non-zero domain size\n");
     ok(sid_use == (SID_NAME_USE)0xcafebabe, "Expected 0xcafebabe, got %d\n", sid_use);
@@ -2567,11 +2567,11 @@ static void test_LookupAccountName(void)
     ret = LookupAccountNameA(NULL, user_name, psid, &sid_size, domain, &domain_size, &sid_use);
     get_sid_info(psid, &account, &sid_dom);
     ok(ret, "Failed to lookup account name\n");
-    ok(sid_size == GetLengthSid(psid), "Expected %d, got %d\n", GetLengthSid(psid), sid_size);
+    ok(sid_size == GetLengthSid(psid), "Expected %ld, got %ld\n", GetLengthSid(psid), sid_size);
     ok(!lstrcmpA(account, user_name), "Expected %s, got %s\n", user_name, account);
     ok(!lstrcmpiA(domain, sid_dom), "Expected %s, got %s\n", sid_dom, domain);
-    ok(domain_size == domain_save - 1, "Expected %d, got %d\n", domain_save - 1, domain_size);
-    ok(strlen(domain) == domain_size, "Expected %d, got %d\n", lstrlenA(domain), domain_size);
+    ok(domain_size == domain_save - 1, "Expected %ld, got %ld\n", domain_save - 1, domain_size);
+    ok(strlen(domain) == domain_size, "Expected %d, got %ld\n", lstrlenA(domain), domain_size);
     ok(sid_use == SidTypeUser, "Expected SidTypeUser (%d), got %d\n", SidTypeUser, sid_use);
     domain_size = domain_save;
     sid_size = sid_save;
@@ -2588,8 +2588,8 @@ static void test_LookupAccountName(void)
         ok(sid_size != 0, "sid_size was zero\n");
         ok(!lstrcmpA(account, "Everyone"), "Expected Everyone, got %s\n", account);
         ok(!lstrcmpiA(domain, sid_dom), "Expected %s, got %s\n", sid_dom, domain);
-        ok(domain_size == 0, "Expected 0, got %d\n", domain_size);
-        ok(strlen(domain) == domain_size, "Expected %d, got %d\n", lstrlenA(domain), domain_size);
+        ok(domain_size == 0, "Expected 0, got %ld\n", domain_size);
+        ok(strlen(domain) == domain_size, "Expected %d, got %ld\n", lstrlenA(domain), domain_size);
         ok(sid_use == SidTypeWellKnownGroup, "Expected SidTypeWellKnownGroup (%d), got %d\n", SidTypeWellKnownGroup, sid_use);
         domain_size = domain_save;
     }
@@ -2600,9 +2600,9 @@ static void test_LookupAccountName(void)
     ret = LookupAccountNameA(NULL, user_name, NULL, &sid_size, domain, &domain_size, &sid_use);
     ok(!ret, "Expected 0, got %d\n", ret);
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
-    ok(sid_size == sid_save, "Expected %d, got %d\n", sid_save, sid_size);
-    ok(domain_size == domain_save, "Expected %d, got %d\n", domain_save, domain_size);
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
+    ok(sid_size == sid_save, "Expected %ld, got %ld\n", sid_save, sid_size);
+    ok(domain_size == domain_save, "Expected %ld, got %ld\n", domain_save, domain_size);
 
     /* try cchReferencedDomainName - 1 */
     SetLastError(0xdeadbeef);
@@ -2610,9 +2610,9 @@ static void test_LookupAccountName(void)
     ret = LookupAccountNameA(NULL, user_name, NULL, &sid_size, domain, &domain_size, &sid_use);
     ok(!ret, "Expected 0, got %d\n", ret);
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
-    ok(sid_size == sid_save, "Expected %d, got %d\n", sid_save, sid_size);
-    ok(domain_size == domain_save, "Expected %d, got %d\n", domain_save, domain_size);
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
+    ok(sid_size == sid_save, "Expected %ld, got %ld\n", sid_save, sid_size);
+    ok(domain_size == domain_save, "Expected %ld, got %ld\n", domain_save, domain_size);
 
     /* NULL ReferencedDomainName with zero domain name size */
     SetLastError(0xdeadbeef);
@@ -2620,9 +2620,9 @@ static void test_LookupAccountName(void)
     ret = LookupAccountNameA(NULL, user_name, psid, &sid_size, NULL, &domain_size, &sid_use);
     ok(!ret, "Expected 0, got %d\n", ret);
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
-    ok(sid_size == sid_save, "Expected %d, got %d\n", sid_save, sid_size);
-    ok(domain_size == domain_save, "Expected %d, got %d\n", domain_save, domain_size);
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
+    ok(sid_size == sid_save, "Expected %ld, got %ld\n", sid_save, sid_size);
+    ok(domain_size == domain_save, "Expected %ld, got %ld\n", domain_save, domain_size);
 
     HeapFree(GetProcessHeap(), 0, psid);
     HeapFree(GetProcessHeap(), 0, domain);
@@ -2639,7 +2639,7 @@ static void test_LookupAccountName(void)
     {
         ok(!ret, "Expected 0, got %d\n", ret);
         ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-           "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+           "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
         ok(sid_size != 0, "Expected non-zero sid size\n");
         ok(domain_size != 0, "Expected non-zero domain size\n");
         ok(sid_use == (SID_NAME_USE)0xcafebabe, "Expected 0xcafebabe, got %d\n", sid_use);
@@ -2668,9 +2668,9 @@ static void test_LookupAccountName(void)
     ok(!ret, "Expected 0, got %d\n", ret);
     ok(GetLastError() == ERROR_NONE_MAPPED ||
        broken(GetLastError() == ERROR_TRUSTED_RELATIONSHIP_FAILURE),
-       "Expected ERROR_NONE_MAPPED, got %d\n", GetLastError());
-    ok(sid_size == 0, "Expected 0, got %d\n", sid_size);
-    ok(domain_size == 0, "Expected 0, got %d\n", domain_size);
+       "Expected ERROR_NONE_MAPPED, got %ld\n", GetLastError());
+    ok(sid_size == 0, "Expected 0, got %ld\n", sid_size);
+    ok(domain_size == 0, "Expected 0, got %ld\n", domain_size);
 
     /* try an invalid system name */
     SetLastError(0xdeadbeef);
@@ -2679,9 +2679,9 @@ static void test_LookupAccountName(void)
     ret = LookupAccountNameA("deepthought", NULL, NULL, &sid_size, NULL, &domain_size, &sid_use);
     ok(!ret, "Expected 0, got %d\n", ret);
     ok(GetLastError() == RPC_S_SERVER_UNAVAILABLE || GetLastError() == RPC_S_INVALID_NET_ADDR /* Vista */,
-       "Expected RPC_S_SERVER_UNAVAILABLE or RPC_S_INVALID_NET_ADDR, got %d\n", GetLastError());
-    ok(sid_size == 0, "Expected 0, got %d\n", sid_size);
-    ok(domain_size == 0, "Expected 0, got %d\n", domain_size);
+       "Expected RPC_S_SERVER_UNAVAILABLE or RPC_S_INVALID_NET_ADDR, got %ld\n", GetLastError());
+    ok(sid_size == 0, "Expected 0, got %ld\n", sid_size);
+    ok(domain_size == 0, "Expected 0, got %ld\n", domain_size);
 
     /* try with the computer name as the account name */
     domain_size = sizeof(computer_name);
@@ -2693,13 +2693,13 @@ static void test_LookupAccountName(void)
        GetLastError() == ERROR_NONE_MAPPED /* in a domain */ ||
        broken(GetLastError() == ERROR_TRUSTED_DOMAIN_FAILURE) ||
        broken(GetLastError() == ERROR_TRUSTED_RELATIONSHIP_FAILURE)),
-       "LookupAccountNameA failed: %d\n", GetLastError());
+       "LookupAccountNameA failed: %ld\n", GetLastError());
     if (GetLastError() == ERROR_INSUFFICIENT_BUFFER)
     {
         psid = HeapAlloc(GetProcessHeap(), 0, sid_size);
         domain = HeapAlloc(GetProcessHeap(), 0, domain_size);
         ret = LookupAccountNameA(NULL, computer_name, psid, &sid_size, domain, &domain_size, &sid_use);
-        ok(ret, "LookupAccountNameA failed: %d\n", GetLastError());
+        ok(ret, "LookupAccountNameA failed: %ld\n", GetLastError());
         ok(sid_use == SidTypeDomain ||
            (sid_use == SidTypeUser && ! strcmp(computer_name, user_name)), "expected SidTypeDomain for %s, got %d\n", computer_name, sid_use);
         HeapFree(GetProcessHeap(), 0, domain);
@@ -2767,7 +2767,7 @@ static void test_security_descriptor(void)
     SetLastError(0xdeadbeef);
     size = 5;
     expect_eq(MakeSelfRelativeSD(&sd, buf, &size), FALSE, BOOL, "%d");
-    expect_eq(GetLastError(), ERROR_INSUFFICIENT_BUFFER, DWORD, "%u");
+    expect_eq(GetLastError(), (DWORD)ERROR_INSUFFICIENT_BUFFER, DWORD, "%lu");
     ok(size > 5, "Size not increased\n");
     if (size <= 8192)
     {
@@ -2792,17 +2792,17 @@ static void test_security_descriptor(void)
         "O:SYG:S-1-5-21-93476-23408-4576D:(A;NP;GAGXGWGR;;;SU)(A;IOID;CCDC;;;SU)"
         "(D;OICI;0xffffffff;;;S-1-5-21-93476-23408-4576)S:(AU;OICINPIOIDSAFA;CCDCLCSWRPRC;;;SU)"
         "(AU;NPSA;0x12019f;;;SU)", SDDL_REVISION_1, (void **)&sd_rel, NULL);
-    ok(ret, "got %u\n", GetLastError());
+    ok(ret, "got %lu\n", GetLastError());
 
     size = 0;
     ret = MakeSelfRelativeSD(sd_rel, NULL, &size);
-    todo_wine ok(!ret && GetLastError() == ERROR_BAD_DESCRIPTOR_FORMAT, "got %u\n", GetLastError());
+    todo_wine ok(!ret && GetLastError() == ERROR_BAD_DESCRIPTOR_FORMAT, "got %lu\n", GetLastError());
 
     /* convert to absolute form */
     size = size_dacl = size_sacl = size_owner = size_group = 0;
     ret = MakeAbsoluteSD(sd_rel, NULL, &size, NULL, &size_dacl, NULL, &size_sacl, NULL, &size_owner, NULL,
                          &size_group);
-    ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got %u\n", GetLastError());
+    ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got %lu\n", GetLastError());
 
     sd_abs = HeapAlloc(GetProcessHeap(), 0, size + size_dacl + size_sacl + size_owner + size_group);
     dacl = (PACL)(sd_abs + 1);
@@ -2811,18 +2811,18 @@ static void test_security_descriptor(void)
     group = (PSID)((char *)owner + size_owner);
     ret = MakeAbsoluteSD(sd_rel, sd_abs, &size, dacl, &size_dacl, sacl, &size_sacl, owner, &size_owner,
                          group, &size_group);
-    ok(ret, "got %u\n", GetLastError());
+    ok(ret, "got %lu\n", GetLastError());
 
     size = 0;
     ret = MakeSelfRelativeSD(sd_abs, NULL, &size);
-    ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got %u\n", GetLastError());
-    ok(size == 184, "got %u\n", size);
+    ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got %lu\n", GetLastError());
+    ok(size == 184, "got %lu\n", size);
 
     size += 4;
     sd_rel2 = HeapAlloc(GetProcessHeap(), 0, size);
     ret = MakeSelfRelativeSD(sd_abs, sd_rel2, &size);
-    ok(ret, "got %u\n", GetLastError());
-    ok(size == 188, "got %u\n", size);
+    ok(ret, "got %lu\n", GetLastError());
+    ok(size == 188, "got %lu\n", size);
 
     HeapFree(GetProcessHeap(), 0, sd_abs);
     HeapFree(GetProcessHeap(), 0, sd_rel2);
@@ -2845,14 +2845,14 @@ static void test_granted_access(HANDLE handle, ACCESS_MASK access,
 
     status = pNtQueryObject( handle, ObjectBasicInformation, &obj_info,
                              sizeof(obj_info), NULL );
-    ok_(__FILE__, line)(!status, "NtQueryObject with err: %08x\n", status);
+    ok_(__FILE__, line)(!status, "NtQueryObject with err: %08lx\n", status);
     if (alt)
         ok_(__FILE__, line)(obj_info.GrantedAccess == access ||
-            obj_info.GrantedAccess == alt, "Granted access should be 0x%08x "
-            "or 0x%08x, instead of 0x%08x\n", access, alt, obj_info.GrantedAccess);
+            obj_info.GrantedAccess == alt, "Granted access should be 0x%08lx "
+            "or 0x%08lx, instead of 0x%08lx\n", access, alt, obj_info.GrantedAccess);
     else
         ok_(__FILE__, line)(obj_info.GrantedAccess == access, "Granted access should "
-            "be 0x%08x, instead of 0x%08x\n", access, obj_info.GrantedAccess);
+            "be 0x%08lx, instead of 0x%08lx\n", access, obj_info.GrantedAccess);
 }
 
 #define CHECK_SET_SECURITY(o,i,e) \
@@ -2863,10 +2863,10 @@ static void test_granted_access(HANDLE handle, ACCESS_MASK access,
         res_ = SetKernelObjectSecurity( o, i, SecurityDescriptor ); \
         err = GetLastError(); \
         if (e == ERROR_SUCCESS) \
-            ok(res_, "SetKernelObjectSecurity failed with %d\n", err); \
+            ok(res_, "SetKernelObjectSecurity failed with %ld\n", err); \
         else \
             ok(!res_ && err == e, "SetKernelObjectSecurity should have failed " \
-               "with %s, instead of %d\n", #e, err); \
+               "with %s, instead of %ld\n", #e, err); \
     }while(0)
 
 static void test_process_security(void)
@@ -2896,14 +2896,14 @@ static void test_process_security(void)
         HeapFree(GetProcessHeap(), 0, Acl);
         return;
     }
-    ok(res, "InitializeAcl failed with error %d\n", GetLastError());
+    ok(res, "InitializeAcl failed with error %ld\n", GetLastError());
 
     res = AllocateAndInitializeSid( &SIDAuthWorld, 1, SECURITY_WORLD_RID, 0, 0, 0, 0, 0, 0, 0, &EveryoneSid);
-    ok(res, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(res, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     /* get owner from the token we might be running as a user not admin */
     res = OpenProcessToken( GetCurrentProcess(), MAXIMUM_ALLOWED, &token );
-    ok(res, "OpenProcessToken failed with error %d\n", GetLastError());
+    ok(res, "OpenProcessToken failed with error %ld\n", GetLastError());
     if (!res)
     {
         HeapFree(GetProcessHeap(), 0, Acl);
@@ -2913,29 +2913,29 @@ static void test_process_security(void)
     res = GetTokenInformation( token, TokenOwner, NULL, 0, &size );
     ok(!res, "Expected failure, got %d\n", res);
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     owner = HeapAlloc(GetProcessHeap(), 0, size);
     res = GetTokenInformation( token, TokenOwner, owner, size, &size );
-    ok(res, "GetTokenInformation failed with error %d\n", GetLastError());
+    ok(res, "GetTokenInformation failed with error %ld\n", GetLastError());
     AdminSid = owner->Owner;
     test_sid_str(AdminSid);
 
     res = GetTokenInformation( token, TokenPrimaryGroup, NULL, 0, &size );
     ok(!res, "Expected failure, got %d\n", res);
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     group = HeapAlloc(GetProcessHeap(), 0, size);
     res = GetTokenInformation( token, TokenPrimaryGroup, group, size, &size );
-    ok(res, "GetTokenInformation failed with error %d\n", GetLastError());
+    ok(res, "GetTokenInformation failed with error %ld\n", GetLastError());
     UsersSid = group->PrimaryGroup;
     test_sid_str(UsersSid);
 
     acc_size = sizeof(account);
     dom_size = sizeof(domain);
     ret = LookupAccountSidA( NULL, UsersSid, account, &acc_size, domain, &dom_size, &use );
-    ok(ret, "LookupAccountSid failed with %d\n", ret);
+    ok(ret, "LookupAccountSid failed with %ld\n", ret);
     ok(use == SidTypeGroup, "expect SidTypeGroup, got %d\n", use);
     if (PRIMARYLANGID(GetSystemDefaultLangID()) != LANG_ENGLISH)
         skip("Non-English locale (test with hardcoded 'None')\n");
@@ -2945,11 +2945,11 @@ static void test_process_security(void)
     res = GetTokenInformation( token, TokenUser, NULL, 0, &size );
     ok(!res, "Expected failure, got %d\n", res);
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     user = HeapAlloc(GetProcessHeap(), 0, size);
     res = GetTokenInformation( token, TokenUser, user, size, &size );
-    ok(res, "GetTokenInformation failed with error %d\n", GetLastError());
+    ok(res, "GetTokenInformation failed with error %ld\n", GetLastError());
     UserSid = user->User.Sid;
     test_sid_str(UserSid);
     ok(EqualPrefixSid(UsersSid, UserSid), "TokenPrimaryGroup Sid and TokenUser Sid don't match.\n");
@@ -2965,16 +2965,16 @@ static void test_process_security(void)
     }
 
     res = AddAccessDeniedAce(Acl, ACL_REVISION, PROCESS_VM_READ, AdminSid);
-    ok(res, "AddAccessDeniedAce failed with error %d\n", GetLastError());
+    ok(res, "AddAccessDeniedAce failed with error %ld\n", GetLastError());
     res = AddAccessAllowedAce(Acl, ACL_REVISION, PROCESS_ALL_ACCESS, AdminSid);
-    ok(res, "AddAccessAllowedAce failed with error %d\n", GetLastError());
+    ok(res, "AddAccessAllowedAce failed with error %ld\n", GetLastError());
 
     SecurityDescriptor = HeapAlloc(GetProcessHeap(), 0, SECURITY_DESCRIPTOR_MIN_LENGTH);
     res = InitializeSecurityDescriptor(SecurityDescriptor, SECURITY_DESCRIPTOR_REVISION);
-    ok(res, "InitializeSecurityDescriptor failed with error %d\n", GetLastError());
+    ok(res, "InitializeSecurityDescriptor failed with error %ld\n", GetLastError());
 
     event = CreateEventA( NULL, TRUE, TRUE, "test_event" );
-    ok(event != NULL, "CreateEvent %d\n", GetLastError());
+    ok(event != NULL, "CreateEvent %ld\n", GetLastError());
 
     SecurityDescriptor->Revision = 0;
     CHECK_SET_SECURITY( event, OWNER_SECURITY_INFORMATION, ERROR_UNKNOWN_REVISION );
@@ -2990,17 +2990,17 @@ static void test_process_security(void)
 
     /* Set owner and group and dacl */
     res = SetSecurityDescriptorOwner(SecurityDescriptor, AdminSid, FALSE);
-    ok(res, "SetSecurityDescriptorOwner failed with error %d\n", GetLastError());
+    ok(res, "SetSecurityDescriptorOwner failed with error %ld\n", GetLastError());
     CHECK_SET_SECURITY( event, OWNER_SECURITY_INFORMATION, ERROR_SUCCESS );
     test_owner_equal( event, AdminSid, __LINE__ );
 
     res = SetSecurityDescriptorGroup(SecurityDescriptor, EveryoneSid, FALSE);
-    ok(res, "SetSecurityDescriptorGroup failed with error %d\n", GetLastError());
+    ok(res, "SetSecurityDescriptorGroup failed with error %ld\n", GetLastError());
     CHECK_SET_SECURITY( event, GROUP_SECURITY_INFORMATION, ERROR_SUCCESS );
     test_group_equal( event, EveryoneSid, __LINE__ );
 
     res = SetSecurityDescriptorDacl(SecurityDescriptor, TRUE, Acl, FALSE);
-    ok(res, "SetSecurityDescriptorDacl failed with error %d\n", GetLastError());
+    ok(res, "SetSecurityDescriptorDacl failed with error %ld\n", GetLastError());
     CHECK_SET_SECURITY( event, DACL_SECURITY_INFORMATION, ERROR_SUCCESS );
     /* setting a dacl should not change the owner or group */
     test_owner_equal( event, AdminSid, __LINE__ );
@@ -3009,12 +3009,12 @@ static void test_process_security(void)
     /* Test again with a different SID in case the previous SID also happens to
      * be the one that is incorrectly replacing the group. */
     res = SetSecurityDescriptorGroup(SecurityDescriptor, UsersSid, FALSE);
-    ok(res, "SetSecurityDescriptorGroup failed with error %d\n", GetLastError());
+    ok(res, "SetSecurityDescriptorGroup failed with error %ld\n", GetLastError());
     CHECK_SET_SECURITY( event, GROUP_SECURITY_INFORMATION, ERROR_SUCCESS );
     test_group_equal( event, UsersSid, __LINE__ );
 
     res = SetSecurityDescriptorDacl(SecurityDescriptor, TRUE, Acl, FALSE);
-    ok(res, "SetSecurityDescriptorDacl failed with error %d\n", GetLastError());
+    ok(res, "SetSecurityDescriptorDacl failed with error %ld\n", GetLastError());
     CHECK_SET_SECURITY( event, DACL_SECURITY_INFORMATION, ERROR_SUCCESS );
     test_group_equal( event, UsersSid, __LINE__ );
 
@@ -3030,22 +3030,22 @@ static void test_process_security(void)
 
     ThreadSecurityDescriptor = HeapAlloc( GetProcessHeap(), 0, SECURITY_DESCRIPTOR_MIN_LENGTH );
     res = InitializeSecurityDescriptor( ThreadSecurityDescriptor, SECURITY_DESCRIPTOR_REVISION );
-    ok(res, "InitializeSecurityDescriptor failed with error %d\n", GetLastError());
+    ok(res, "InitializeSecurityDescriptor failed with error %ld\n", GetLastError());
 
     ThreadAcl = HeapAlloc( GetProcessHeap(), 0, 256 );
     res = InitializeAcl( ThreadAcl, 256, ACL_REVISION );
-    ok(res, "InitializeAcl failed with error %d\n", GetLastError());
+    ok(res, "InitializeAcl failed with error %ld\n", GetLastError());
     res = AddAccessDeniedAce( ThreadAcl, ACL_REVISION, THREAD_SET_THREAD_TOKEN, AdminSid );
-    ok(res, "AddAccessDeniedAce failed with error %d\n", GetLastError() );
+    ok(res, "AddAccessDeniedAce failed with error %ld\n", GetLastError() );
     res = AddAccessAllowedAce( ThreadAcl, ACL_REVISION, THREAD_ALL_ACCESS, AdminSid );
-    ok(res, "AddAccessAllowedAce failed with error %d\n", GetLastError());
+    ok(res, "AddAccessAllowedAce failed with error %ld\n", GetLastError());
 
     res = SetSecurityDescriptorOwner( ThreadSecurityDescriptor, AdminSid, FALSE );
-    ok(res, "SetSecurityDescriptorOwner failed with error %d\n", GetLastError());
+    ok(res, "SetSecurityDescriptorOwner failed with error %ld\n", GetLastError());
     res = SetSecurityDescriptorGroup( ThreadSecurityDescriptor, UsersSid, FALSE );
-    ok(res, "SetSecurityDescriptorGroup failed with error %d\n", GetLastError());
+    ok(res, "SetSecurityDescriptorGroup failed with error %ld\n", GetLastError());
     res = SetSecurityDescriptorDacl( ThreadSecurityDescriptor, TRUE, ThreadAcl, FALSE );
-    ok(res, "SetSecurityDescriptorDacl failed with error %d\n", GetLastError());
+    ok(res, "SetSecurityDescriptorDacl failed with error %ld\n", GetLastError());
 
     tsa.nLength = sizeof(tsa);
     tsa.lpSecurityDescriptor = ThreadSecurityDescriptor;
@@ -3053,7 +3053,7 @@ static void test_process_security(void)
 
     /* Doesn't matter what ACL say we should get full access for ourselves */
     res = CreateProcessA( NULL, buffer, &psa, &tsa, FALSE, 0, NULL, NULL, &startup, &info );
-    ok(res, "CreateProcess with err:%d\n", GetLastError());
+    ok(res, "CreateProcess with err:%ld\n", GetLastError());
     TEST_GRANTED_ACCESS2( info.hProcess, PROCESS_ALL_ACCESS_NT4,
                           STANDARD_RIGHTS_ALL | SPECIFIC_RIGHTS_ALL );
     TEST_GRANTED_ACCESS2( info.hThread, THREAD_ALL_ACCESS_NT4,
@@ -3080,12 +3080,12 @@ static void test_process_security_child(void)
     DWORD err;
 
     handle = OpenProcess( PROCESS_TERMINATE, FALSE, GetCurrentProcessId() );
-    ok(handle != NULL, "OpenProcess(PROCESS_TERMINATE) with err:%d\n", GetLastError());
+    ok(handle != NULL, "OpenProcess(PROCESS_TERMINATE) with err:%ld\n", GetLastError());
     TEST_GRANTED_ACCESS( handle, PROCESS_TERMINATE );
 
     ret = DuplicateHandle( GetCurrentProcess(), handle, GetCurrentProcess(),
                            &handle1, 0, TRUE, DUPLICATE_SAME_ACCESS );
-    ok(ret, "duplicating handle err:%d\n", GetLastError());
+    ok(ret, "duplicating handle err:%ld\n", GetLastError());
     TEST_GRANTED_ACCESS( handle1, PROCESS_TERMINATE );
 
     CloseHandle( handle1 );
@@ -3095,7 +3095,7 @@ static void test_process_security_child(void)
                            &handle1, PROCESS_ALL_ACCESS, TRUE, 0 );
     err = GetLastError();
     ok(!ret && err == ERROR_ACCESS_DENIED, "duplicating handle should have failed "
-       "with STATUS_ACCESS_DENIED, instead of err:%d\n", err);
+       "with STATUS_ACCESS_DENIED, instead of err:%ld\n", err);
 
     CloseHandle( handle );
 
@@ -3108,7 +3108,7 @@ static void test_process_security_child(void)
     /* Documented privilege elevation */
     ret = DuplicateHandle( GetCurrentProcess(), GetCurrentProcess(), GetCurrentProcess(),
                            &handle, 0, TRUE, DUPLICATE_SAME_ACCESS );
-    ok(ret, "duplicating handle err:%d\n", GetLastError());
+    ok(ret, "duplicating handle err:%ld\n", GetLastError());
     TEST_GRANTED_ACCESS2( handle, PROCESS_ALL_ACCESS_NT4,
                           STANDARD_RIGHTS_ALL | SPECIFIC_RIGHTS_ALL );
 
@@ -3117,19 +3117,19 @@ static void test_process_security_child(void)
     /* Same only explicitly asking for all access rights */
     ret = DuplicateHandle( GetCurrentProcess(), GetCurrentProcess(), GetCurrentProcess(),
                            &handle, PROCESS_ALL_ACCESS, TRUE, 0 );
-    ok(ret, "duplicating handle err:%d\n", GetLastError());
+    ok(ret, "duplicating handle err:%ld\n", GetLastError());
     TEST_GRANTED_ACCESS2( handle, PROCESS_ALL_ACCESS_NT4,
                           PROCESS_ALL_ACCESS | PROCESS_QUERY_LIMITED_INFORMATION );
     ret = DuplicateHandle( GetCurrentProcess(), handle, GetCurrentProcess(),
                            &handle1, PROCESS_VM_READ, TRUE, 0 );
-    ok(ret, "duplicating handle err:%d\n", GetLastError());
+    ok(ret, "duplicating handle err:%ld\n", GetLastError());
     TEST_GRANTED_ACCESS( handle1, PROCESS_VM_READ );
     CloseHandle( handle1 );
     CloseHandle( handle );
 
     /* Test thread security */
     handle = OpenThread( THREAD_TERMINATE, FALSE, GetCurrentThreadId() );
-    ok(handle != NULL, "OpenThread(THREAD_TERMINATE) with err:%d\n", GetLastError());
+    ok(handle != NULL, "OpenThread(THREAD_TERMINATE) with err:%ld\n", GetLastError());
     TEST_GRANTED_ACCESS( handle, PROCESS_TERMINATE );
     CloseHandle( handle );
 
@@ -3161,47 +3161,47 @@ static void test_impersonation_level(void)
         win_skip("ImpersonateSelf is not implemented\n");
         return;
     }
-    ok(ret, "ImpersonateSelf(SecurityAnonymous) failed with error %d\n", GetLastError());
+    ok(ret, "ImpersonateSelf(SecurityAnonymous) failed with error %ld\n", GetLastError());
     ret = OpenThreadToken(GetCurrentThread(), TOKEN_QUERY | TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY_SOURCE | TOKEN_IMPERSONATE | TOKEN_ADJUST_DEFAULT, TRUE, &Token);
     ok(!ret, "OpenThreadToken should have failed\n");
     error = GetLastError();
-    ok(error == ERROR_CANT_OPEN_ANONYMOUS, "OpenThreadToken on anonymous token should have returned ERROR_CANT_OPEN_ANONYMOUS instead of %d\n", error);
+    ok(error == ERROR_CANT_OPEN_ANONYMOUS, "OpenThreadToken on anonymous token should have returned ERROR_CANT_OPEN_ANONYMOUS instead of %ld\n", error);
     /* can't perform access check when opening object against an anonymous impersonation token */
     todo_wine {
     error = RegOpenKeyExA(HKEY_CURRENT_USER, "Software", 0, KEY_READ, &hkey);
     ok(error == ERROR_INVALID_HANDLE || error == ERROR_CANT_OPEN_ANONYMOUS || error == ERROR_BAD_IMPERSONATION_LEVEL,
-       "RegOpenKeyEx failed with %d\n", error);
+       "RegOpenKeyEx failed with %ld\n", error);
     }
     RevertToSelf();
 
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_DUPLICATE, &ProcessToken);
-    ok(ret, "OpenProcessToken failed with error %d\n", GetLastError());
+    ok(ret, "OpenProcessToken failed with error %ld\n", GetLastError());
 
     ret = pDuplicateTokenEx(ProcessToken,
         TOKEN_QUERY | TOKEN_DUPLICATE | TOKEN_IMPERSONATE, NULL,
         SecurityAnonymous, TokenImpersonation, &Token);
-    ok(ret, "DuplicateTokenEx failed with error %d\n", GetLastError());
+    ok(ret, "DuplicateTokenEx failed with error %ld\n", GetLastError());
     /* can't increase the impersonation level */
     ret = DuplicateToken(Token, SecurityIdentification, &Token2);
     error = GetLastError();
     ok(!ret && error == ERROR_BAD_IMPERSONATION_LEVEL,
-        "Duplicating a token and increasing the impersonation level should have failed with ERROR_BAD_IMPERSONATION_LEVEL instead of %d\n", error);
+        "Duplicating a token and increasing the impersonation level should have failed with ERROR_BAD_IMPERSONATION_LEVEL instead of %ld\n", error);
     /* we can query anything from an anonymous token, including the user */
     ret = GetTokenInformation(Token, TokenUser, NULL, 0, &Size);
     error = GetLastError();
-    ok(!ret && error == ERROR_INSUFFICIENT_BUFFER, "GetTokenInformation(TokenUser) should have failed with ERROR_INSUFFICIENT_BUFFER instead of %d\n", error);
+    ok(!ret && error == ERROR_INSUFFICIENT_BUFFER, "GetTokenInformation(TokenUser) should have failed with ERROR_INSUFFICIENT_BUFFER instead of %ld\n", error);
     User = HeapAlloc(GetProcessHeap(), 0, Size);
     ret = GetTokenInformation(Token, TokenUser, User, Size, &Size);
-    ok(ret, "GetTokenInformation(TokenUser) failed with error %d\n", GetLastError());
+    ok(ret, "GetTokenInformation(TokenUser) failed with error %ld\n", GetLastError());
     HeapFree(GetProcessHeap(), 0, User);
 
     /* PrivilegeCheck fails with SecurityAnonymous level */
     ret = GetTokenInformation(Token, TokenPrivileges, NULL, 0, &Size);
     error = GetLastError();
-    ok(!ret && error == ERROR_INSUFFICIENT_BUFFER, "GetTokenInformation(TokenPrivileges) should have failed with ERROR_INSUFFICIENT_BUFFER instead of %d\n", error);
+    ok(!ret && error == ERROR_INSUFFICIENT_BUFFER, "GetTokenInformation(TokenPrivileges) should have failed with ERROR_INSUFFICIENT_BUFFER instead of %ld\n", error);
     Privileges = HeapAlloc(GetProcessHeap(), 0, Size);
     ret = GetTokenInformation(Token, TokenPrivileges, Privileges, Size, &Size);
-    ok(ret, "GetTokenInformation(TokenPrivileges) failed with error %d\n", GetLastError());
+    ok(ret, "GetTokenInformation(TokenPrivileges) failed with error %ld\n", GetLastError());
 
     PrivilegeSet = HeapAlloc(GetProcessHeap(), 0, FIELD_OFFSET(PRIVILEGE_SET, Privilege[Privileges->PrivilegeCount]));
     PrivilegeSet->PrivilegeCount = Privileges->PrivilegeCount;
@@ -3211,35 +3211,35 @@ static void test_impersonation_level(void)
 
     ret = PrivilegeCheck(Token, PrivilegeSet, &AccessGranted);
     error = GetLastError();
-    ok(!ret && error == ERROR_BAD_IMPERSONATION_LEVEL, "PrivilegeCheck for SecurityAnonymous token should have failed with ERROR_BAD_IMPERSONATION_LEVEL instead of %d\n", error);
+    ok(!ret && error == ERROR_BAD_IMPERSONATION_LEVEL, "PrivilegeCheck for SecurityAnonymous token should have failed with ERROR_BAD_IMPERSONATION_LEVEL instead of %ld\n", error);
 
     CloseHandle(Token);
 
     ret = ImpersonateSelf(SecurityIdentification);
-    ok(ret, "ImpersonateSelf(SecurityIdentification) failed with error %d\n", GetLastError());
+    ok(ret, "ImpersonateSelf(SecurityIdentification) failed with error %ld\n", GetLastError());
     ret = OpenThreadToken(GetCurrentThread(), TOKEN_QUERY | TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY_SOURCE | TOKEN_IMPERSONATE | TOKEN_ADJUST_DEFAULT, TRUE, &Token);
-    ok(ret, "OpenThreadToken failed with error %d\n", GetLastError());
+    ok(ret, "OpenThreadToken failed with error %ld\n", GetLastError());
 
     /* can't perform access check when opening object against an identification impersonation token */
     error = RegOpenKeyExA(HKEY_CURRENT_USER, "Software", 0, KEY_READ, &hkey);
     todo_wine {
     ok(error == ERROR_INVALID_HANDLE || error == ERROR_BAD_IMPERSONATION_LEVEL || error == ERROR_ACCESS_DENIED,
-       "RegOpenKeyEx should have failed with ERROR_INVALID_HANDLE, ERROR_BAD_IMPERSONATION_LEVEL or ERROR_ACCESS_DENIED instead of %d\n", error);
+       "RegOpenKeyEx should have failed with ERROR_INVALID_HANDLE, ERROR_BAD_IMPERSONATION_LEVEL or ERROR_ACCESS_DENIED instead of %ld\n", error);
     }
     ret = PrivilegeCheck(Token, PrivilegeSet, &AccessGranted);
-    ok(ret, "PrivilegeCheck for SecurityIdentification failed with error %d\n", GetLastError());
+    ok(ret, "PrivilegeCheck for SecurityIdentification failed with error %ld\n", GetLastError());
     CloseHandle(Token);
     RevertToSelf();
 
     ret = ImpersonateSelf(SecurityImpersonation);
-    ok(ret, "ImpersonateSelf(SecurityImpersonation) failed with error %d\n", GetLastError());
+    ok(ret, "ImpersonateSelf(SecurityImpersonation) failed with error %ld\n", GetLastError());
     ret = OpenThreadToken(GetCurrentThread(), TOKEN_QUERY | TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY_SOURCE | TOKEN_IMPERSONATE | TOKEN_ADJUST_DEFAULT, TRUE, &Token);
-    ok(ret, "OpenThreadToken failed with error %d\n", GetLastError());
+    ok(ret, "OpenThreadToken failed with error %ld\n", GetLastError());
     error = RegOpenKeyExA(HKEY_CURRENT_USER, "Software", 0, KEY_READ, &hkey);
-    ok(error == ERROR_SUCCESS, "RegOpenKeyEx should have succeeded instead of failing with %d\n", error);
+    ok(error == ERROR_SUCCESS, "RegOpenKeyEx should have succeeded instead of failing with %ld\n", error);
     RegCloseKey(hkey);
     ret = PrivilegeCheck(Token, PrivilegeSet, &AccessGranted);
-    ok(ret, "PrivilegeCheck for SecurityImpersonation failed with error %d\n", GetLastError());
+    ok(ret, "PrivilegeCheck for SecurityImpersonation failed with error %ld\n", GetLastError());
     RevertToSelf();
 
     CloseHandle(Token);
@@ -3272,7 +3272,7 @@ static void test_SetEntriesInAclW(void)
         win_skip("SetEntriesInAclW is not implemented\n");
         return;
     }
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %lu\n", res);
     ok(NewAcl == NULL ||
         broken(NewAcl != NULL), /* NT4 */
         "NewAcl=%p, expected NULL\n", NewAcl);
@@ -3286,17 +3286,17 @@ static void test_SetEntriesInAclW(void)
         HeapFree(GetProcessHeap(), 0, OldAcl);
         return;
     }
-    ok(res, "InitializeAcl failed with error %d\n", GetLastError());
+    ok(res, "InitializeAcl failed with error %ld\n", GetLastError());
 
     res = AllocateAndInitializeSid( &SIDAuthWorld, 1, SECURITY_WORLD_RID, 0, 0, 0, 0, 0, 0, 0, &EveryoneSid);
-    ok(res, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(res, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     res = AllocateAndInitializeSid( &SIDAuthNT, 2, SECURITY_BUILTIN_DOMAIN_RID,
         DOMAIN_ALIAS_RID_USERS, 0, 0, 0, 0, 0, 0, &UsersSid);
-    ok(res, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(res, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     res = AddAccessAllowedAce(OldAcl, ACL_REVISION, KEY_READ, UsersSid);
-    ok(res, "AddAccessAllowedAce failed with error %d\n", GetLastError());
+    ok(res, "AddAccessAllowedAce failed with error %ld\n", GetLastError());
 
     ExplicitAccess.grfAccessPermissions = KEY_WRITE;
     ExplicitAccess.grfAccessMode = GRANT_ACCESS;
@@ -3307,7 +3307,7 @@ static void test_SetEntriesInAclW(void)
     ExplicitAccess.Trustee.MultipleTrusteeOperation = 0xDEADBEEF;
     ExplicitAccess.Trustee.pMultipleTrustee = (PVOID)0xDEADBEEF;
     res = pSetEntriesInAclW(1, &ExplicitAccess, OldAcl, &NewAcl);
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %lu\n", res);
     ok(NewAcl != NULL, "returned acl was NULL\n");
     LocalFree(NewAcl);
 
@@ -3315,7 +3315,7 @@ static void test_SetEntriesInAclW(void)
     ExplicitAccess.Trustee.pMultipleTrustee = NULL;
     ExplicitAccess.Trustee.MultipleTrusteeOperation = NO_MULTIPLE_TRUSTEE;
     res = pSetEntriesInAclW(1, &ExplicitAccess, OldAcl, &NewAcl);
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %lu\n", res);
     ok(NewAcl != NULL, "returned acl was NULL\n");
     LocalFree(NewAcl);
 
@@ -3328,7 +3328,7 @@ static void test_SetEntriesInAclW(void)
         ExplicitAccess.Trustee.TrusteeForm = TRUSTEE_IS_NAME;
         ExplicitAccess.Trustee.ptstrName = (LPWSTR)wszEveryone;
         res = pSetEntriesInAclW(1, &ExplicitAccess, OldAcl, &NewAcl);
-        ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %u\n", res);
+        ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %lu\n", res);
         ok(NewAcl != NULL, "returned acl was NULL\n");
         LocalFree(NewAcl);
 
@@ -3336,7 +3336,7 @@ static void test_SetEntriesInAclW(void)
         res = pSetEntriesInAclW(1, &ExplicitAccess, OldAcl, &NewAcl);
         ok(res == ERROR_INVALID_PARAMETER ||
             broken(res == ERROR_NOT_SUPPORTED), /* NT4 */
-            "SetEntriesInAclW failed: %u\n", res);
+            "SetEntriesInAclW failed: %lu\n", res);
         ok(NewAcl == NULL ||
             broken(NewAcl != NULL), /* NT4 */
             "returned acl wasn't NULL: %p\n", NewAcl);
@@ -3346,7 +3346,7 @@ static void test_SetEntriesInAclW(void)
         res = pSetEntriesInAclW(1, &ExplicitAccess, OldAcl, &NewAcl);
         ok(res == ERROR_INVALID_PARAMETER ||
             broken(res == ERROR_NOT_SUPPORTED), /* NT4 */
-            "SetEntriesInAclW failed: %u\n", res);
+            "SetEntriesInAclW failed: %lu\n", res);
         ok(NewAcl == NULL ||
             broken(NewAcl != NULL), /* NT4 */
             "returned acl wasn't NULL: %p\n", NewAcl);
@@ -3354,7 +3354,7 @@ static void test_SetEntriesInAclW(void)
         ExplicitAccess.Trustee.MultipleTrusteeOperation = NO_MULTIPLE_TRUSTEE;
         ExplicitAccess.grfAccessMode = SET_ACCESS;
         res = pSetEntriesInAclW(1, &ExplicitAccess, OldAcl, &NewAcl);
-        ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %u\n", res);
+        ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %lu\n", res);
         ok(NewAcl != NULL, "returned acl was NULL\n");
         LocalFree(NewAcl);
     }
@@ -3362,7 +3362,7 @@ static void test_SetEntriesInAclW(void)
     ExplicitAccess.Trustee.TrusteeForm = TRUSTEE_IS_NAME;
     ExplicitAccess.Trustee.ptstrName = (LPWSTR)wszCurrentUser;
     res = pSetEntriesInAclW(1, &ExplicitAccess, OldAcl, &NewAcl);
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %lu\n", res);
     ok(NewAcl != NULL, "returned acl was NULL\n");
     LocalFree(NewAcl);
 
@@ -3370,7 +3370,7 @@ static void test_SetEntriesInAclW(void)
     ExplicitAccess.Trustee.TrusteeForm = TRUSTEE_IS_SID;
     ExplicitAccess.Trustee.ptstrName = UsersSid;
     res = pSetEntriesInAclW(1, &ExplicitAccess, OldAcl, &NewAcl);
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %lu\n", res);
     ok(NewAcl != NULL, "returned acl was NULL\n");
     LocalFree(NewAcl);
 
@@ -3397,7 +3397,7 @@ static void test_SetEntriesInAclA(void)
         win_skip("SetEntriesInAclA is not implemented\n");
         return;
     }
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %lu\n", res);
     ok(NewAcl == NULL ||
         broken(NewAcl != NULL), /* NT4 */
         "NewAcl=%p, expected NULL\n", NewAcl);
@@ -3411,17 +3411,17 @@ static void test_SetEntriesInAclA(void)
         HeapFree(GetProcessHeap(), 0, OldAcl);
         return;
     }
-    ok(res, "InitializeAcl failed with error %d\n", GetLastError());
+    ok(res, "InitializeAcl failed with error %ld\n", GetLastError());
 
     res = AllocateAndInitializeSid( &SIDAuthWorld, 1, SECURITY_WORLD_RID, 0, 0, 0, 0, 0, 0, 0, &EveryoneSid);
-    ok(res, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(res, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     res = AllocateAndInitializeSid( &SIDAuthNT, 2, SECURITY_BUILTIN_DOMAIN_RID,
         DOMAIN_ALIAS_RID_USERS, 0, 0, 0, 0, 0, 0, &UsersSid);
-    ok(res, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(res, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     res = AddAccessAllowedAce(OldAcl, ACL_REVISION, KEY_READ, UsersSid);
-    ok(res, "AddAccessAllowedAce failed with error %d\n", GetLastError());
+    ok(res, "AddAccessAllowedAce failed with error %ld\n", GetLastError());
 
     ExplicitAccess.grfAccessPermissions = KEY_WRITE;
     ExplicitAccess.grfAccessMode = GRANT_ACCESS;
@@ -3432,7 +3432,7 @@ static void test_SetEntriesInAclA(void)
     ExplicitAccess.Trustee.MultipleTrusteeOperation = NO_MULTIPLE_TRUSTEE;
     ExplicitAccess.Trustee.pMultipleTrustee = NULL;
     res = SetEntriesInAclA(1, &ExplicitAccess, OldAcl, &NewAcl);
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %lu\n", res);
     ok(NewAcl != NULL, "returned acl was NULL\n");
     LocalFree(NewAcl);
 
@@ -3440,7 +3440,7 @@ static void test_SetEntriesInAclA(void)
     ExplicitAccess.Trustee.pMultipleTrustee = NULL;
     ExplicitAccess.Trustee.MultipleTrusteeOperation = NO_MULTIPLE_TRUSTEE;
     res = SetEntriesInAclA(1, &ExplicitAccess, OldAcl, &NewAcl);
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %lu\n", res);
     ok(NewAcl != NULL, "returned acl was NULL\n");
     LocalFree(NewAcl);
 
@@ -3453,7 +3453,7 @@ static void test_SetEntriesInAclA(void)
         ExplicitAccess.Trustee.TrusteeForm = TRUSTEE_IS_NAME;
         ExplicitAccess.Trustee.ptstrName = (LPSTR)szEveryone;
         res = SetEntriesInAclA(1, &ExplicitAccess, OldAcl, &NewAcl);
-        ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %u\n", res);
+        ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %lu\n", res);
         ok(NewAcl != NULL, "returned acl was NULL\n");
         LocalFree(NewAcl);
 
@@ -3461,7 +3461,7 @@ static void test_SetEntriesInAclA(void)
         res = SetEntriesInAclA(1, &ExplicitAccess, OldAcl, &NewAcl);
         ok(res == ERROR_INVALID_PARAMETER ||
             broken(res == ERROR_NOT_SUPPORTED), /* NT4 */
-            "SetEntriesInAclA failed: %u\n", res);
+            "SetEntriesInAclA failed: %lu\n", res);
         ok(NewAcl == NULL ||
             broken(NewAcl != NULL), /* NT4 */
             "returned acl wasn't NULL: %p\n", NewAcl);
@@ -3471,7 +3471,7 @@ static void test_SetEntriesInAclA(void)
         res = SetEntriesInAclA(1, &ExplicitAccess, OldAcl, &NewAcl);
         ok(res == ERROR_INVALID_PARAMETER ||
             broken(res == ERROR_NOT_SUPPORTED), /* NT4 */
-            "SetEntriesInAclA failed: %u\n", res);
+            "SetEntriesInAclA failed: %lu\n", res);
         ok(NewAcl == NULL ||
             broken(NewAcl != NULL), /* NT4 */
             "returned acl wasn't NULL: %p\n", NewAcl);
@@ -3479,7 +3479,7 @@ static void test_SetEntriesInAclA(void)
         ExplicitAccess.Trustee.MultipleTrusteeOperation = NO_MULTIPLE_TRUSTEE;
         ExplicitAccess.grfAccessMode = SET_ACCESS;
         res = SetEntriesInAclA(1, &ExplicitAccess, OldAcl, &NewAcl);
-        ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %u\n", res);
+        ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %lu\n", res);
         ok(NewAcl != NULL, "returned acl was NULL\n");
         LocalFree(NewAcl);
     }
@@ -3487,7 +3487,7 @@ static void test_SetEntriesInAclA(void)
     ExplicitAccess.Trustee.TrusteeForm = TRUSTEE_IS_NAME;
     ExplicitAccess.Trustee.ptstrName = (LPSTR)szCurrentUser;
     res = SetEntriesInAclA(1, &ExplicitAccess, OldAcl, &NewAcl);
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %lu\n", res);
     ok(NewAcl != NULL, "returned acl was NULL\n");
     LocalFree(NewAcl);
 
@@ -3495,7 +3495,7 @@ static void test_SetEntriesInAclA(void)
     ExplicitAccess.Trustee.TrusteeForm = TRUSTEE_IS_SID;
     ExplicitAccess.Trustee.ptstrName = UsersSid;
     res = SetEntriesInAclA(1, &ExplicitAccess, OldAcl, &NewAcl);
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclA failed: %lu\n", res);
     ok(NewAcl != NULL, "returned acl was NULL\n");
     LocalFree(NewAcl);
 
@@ -3515,7 +3515,7 @@ static void get_nt_pathW(const char *name, UNICODE_STRING *nameW)
     pRtlInitAnsiString(&str, name);
 
     status = pRtlAnsiStringToUnicodeString(&strW, &str, TRUE);
-    ok(!status, "RtlAnsiStringToUnicodeString failed with %08x\n", status);
+    ok(!status, "RtlAnsiStringToUnicodeString failed with %08lx\n", status);
 
     ret = pRtlDosPathNameToNtPathName_U(strW.Buffer, nameW, NULL, NULL);
     ok(ret, "RtlDosPathNameToNtPathName_U failed\n");
@@ -3535,7 +3535,7 @@ static void test_inherited_dacl(PACL dacl, PSID admin_sid, PSID user_sid, DWORD
 
     todo_wine_if (todo_count)
         ok_(__FILE__, line)(acl_size.AceCount == 2,
-            "GetAclInformation returned unexpected entry count (%d != 2)\n",
+            "GetAclInformation returned unexpected entry count (%ld != 2)\n",
             acl_size.AceCount);
 
     if (acl_size.AceCount > 0)
@@ -3549,11 +3549,11 @@ static void test_inherited_dacl(PACL dacl, PSID admin_sid, PSID user_sid, DWORD
 
         todo_wine_if (todo_flags)
             ok_(__FILE__, line)(((ACE_HEADER *)ace)->AceFlags == flags,
-                "Current User ACE has unexpected flags (0x%x != 0x%x)\n",
+                "Current User ACE has unexpected flags (0x%x != 0x%lx)\n",
                 ((ACE_HEADER *)ace)->AceFlags, flags);
 
         ok_(__FILE__, line)(ace->Mask == mask,
-            "Current User ACE has unexpected mask (0x%x != 0x%x)\n",
+            "Current User ACE has unexpected mask (0x%lx != 0x%lx)\n",
             ace->Mask, mask);
     }
     if (acl_size.AceCount > 1)
@@ -3567,11 +3567,11 @@ static void test_inherited_dacl(PACL dacl, PSID admin_sid, PSID user_sid, DWORD
 
         todo_wine_if (todo_flags)
             ok_(__FILE__, line)(((ACE_HEADER *)ace)->AceFlags == flags,
-                "Administators Group ACE has unexpected flags (0x%x != 0x%x)\n",
+                "Administators Group ACE has unexpected flags (0x%x != 0x%lx)\n",
                 ((ACE_HEADER *)ace)->AceFlags, flags);
 
         ok_(__FILE__, line)(ace->Mask == mask,
-            "Administators Group ACE has unexpected mask (0x%x != 0x%x)\n",
+            "Administators Group ACE has unexpected mask (0x%lx != 0x%lx)\n",
             ace->Mask, mask);
     }
 }
@@ -3615,10 +3615,10 @@ static void test_CreateDirectoryA(void)
     }
     bret = GetTokenInformation(token, TokenUser, NULL, 0, &user_size);
     ok(!bret && (GetLastError() == ERROR_INSUFFICIENT_BUFFER),
-        "GetTokenInformation(TokenUser) failed with error %d\n", GetLastError());
+        "GetTokenInformation(TokenUser) failed with error %ld\n", GetLastError());
     user = HeapAlloc(GetProcessHeap(), 0, user_size);
     bret = GetTokenInformation(token, TokenUser, user, user_size, &user_size);
-    ok(bret, "GetTokenInformation(TokenUser) failed with error %d\n", GetLastError());
+    ok(bret, "GetTokenInformation(TokenUser) failed with error %ld\n", GetLastError());
     CloseHandle( token );
     user_sid = ((TOKEN_USER *)user)->User.Sid;
 
@@ -3642,7 +3642,7 @@ static void test_CreateDirectoryA(void)
     GetTempPathA(MAX_PATH, tmpdir);
     lstrcatA(tmpdir, "Please Remove Me");
     bret = CreateDirectoryA(tmpdir, &sa);
-    ok(bret == TRUE, "CreateDirectoryA(%s) failed err=%d\n", tmpdir, GetLastError());
+    ok(bret == TRUE, "CreateDirectoryA(%s) failed err=%ld\n", tmpdir, GetLastError());
     HeapFree(GetProcessHeap(), 0, pDacl);
 
     SetLastError(0xdeadbeef);
@@ -3654,7 +3654,7 @@ static void test_CreateDirectoryA(void)
         win_skip("GetNamedSecurityInfoA is not implemented\n");
         goto done;
     }
-    ok(!error, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(!error, "GetNamedSecurityInfo failed with error %ld\n", error);
     test_inherited_dacl(pDacl, admin_sid, user_sid, OBJECT_INHERIT_ACE|CONTAINER_INHERIT_ACE,
                         0x1f01ff, FALSE, TRUE, FALSE, __LINE__);
     LocalFree(pSD);
@@ -3665,7 +3665,7 @@ static void test_CreateDirectoryA(void)
 
     hTemp = CreateFileA(tmpfile, GENERIC_WRITE, FILE_SHARE_READ, NULL,
                         CREATE_NEW, FILE_FLAG_DELETE_ON_CLOSE, NULL);
-    ok(hTemp != INVALID_HANDLE_VALUE, "CreateFile error %u\n", GetLastError());
+    ok(hTemp != INVALID_HANDLE_VALUE, "CreateFile error %lu\n", GetLastError());
 
     error = pGetNamedSecurityInfoA(tmpfile, SE_FILE_OBJECT,
                                    OWNER_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION,
@@ -3694,16 +3694,16 @@ static void test_CreateDirectoryA(void)
     sa.bInheritHandle = TRUE;
     hTemp = CreateFileA(tmpfile, GENERIC_WRITE, FILE_SHARE_READ, &sa,
                         CREATE_NEW, FILE_FLAG_DELETE_ON_CLOSE, NULL);
-    ok(hTemp != INVALID_HANDLE_VALUE, "CreateFile error %u\n", GetLastError());
+    ok(hTemp != INVALID_HANDLE_VALUE, "CreateFile error %lu\n", GetLastError());
     HeapFree(GetProcessHeap(), 0, pDacl);
 
     error = GetSecurityInfo(hTemp, SE_FILE_OBJECT, OWNER_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION,
             (PSID *)&owner, NULL, &pDacl, NULL, &pSD);
-    ok(error == ERROR_SUCCESS, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(error == ERROR_SUCCESS, "GetNamedSecurityInfo failed with error %ld\n", error);
     bret = GetAclInformation(pDacl, &acl_size, sizeof(acl_size), AclSizeInformation);
     ok(bret, "GetAclInformation failed\n");
     todo_wine
-    ok(acl_size.AceCount == 0, "GetAclInformation returned unexpected entry count (%d != 0).\n",
+    ok(acl_size.AceCount == 0, "GetAclInformation returned unexpected entry count (%ld != 0).\n",
                                acl_size.AceCount);
     LocalFree(pSD);
 
@@ -3711,13 +3711,13 @@ static void test_CreateDirectoryA(void)
                                    OWNER_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION,
                                    (PSID *)&owner, NULL, &pDacl, NULL, &pSD);
     todo_wine
-    ok(error == ERROR_SUCCESS, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(error == ERROR_SUCCESS, "GetNamedSecurityInfo failed with error %ld\n", error);
     if (error == ERROR_SUCCESS)
     {
         bret = GetAclInformation(pDacl, &acl_size, sizeof(acl_size), AclSizeInformation);
         ok(bret, "GetAclInformation failed\n");
         todo_wine
-        ok(acl_size.AceCount == 0, "GetAclInformation returned unexpected entry count (%d != 0).\n",
+        ok(acl_size.AceCount == 0, "GetAclInformation returned unexpected entry count (%ld != 0).\n",
                                    acl_size.AceCount);
         LocalFree(pSD);
     }
@@ -3737,7 +3737,7 @@ static void test_CreateDirectoryA(void)
 
     status = pNtCreateFile(&hTemp, GENERIC_WRITE | DELETE, &attr, &io, NULL, 0,
                            FILE_SHARE_READ, FILE_CREATE, FILE_DELETE_ON_CLOSE, NULL, 0);
-    ok(!status, "NtCreateFile failed with %08x\n", status);
+    ok(!status, "NtCreateFile failed with %08lx\n", status);
     pRtlFreeUnicodeString(&tmpfileW);
 
     error = pGetNamedSecurityInfoA(tmpfile, SE_FILE_OBJECT,
@@ -3772,17 +3772,17 @@ static void test_CreateDirectoryA(void)
 
     status = pNtCreateFile(&hTemp, GENERIC_WRITE | DELETE, &attr, &io, NULL, 0,
                            FILE_SHARE_READ, FILE_CREATE, FILE_DELETE_ON_CLOSE, NULL, 0);
-    ok(!status, "NtCreateFile failed with %08x\n", status);
+    ok(!status, "NtCreateFile failed with %08lx\n", status);
     pRtlFreeUnicodeString(&tmpfileW);
     HeapFree(GetProcessHeap(), 0, pDacl);
 
     error = GetSecurityInfo(hTemp, SE_FILE_OBJECT, OWNER_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION,
             (PSID *)&owner, NULL, &pDacl, NULL, &pSD);
-    ok(error == ERROR_SUCCESS, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(error == ERROR_SUCCESS, "GetNamedSecurityInfo failed with error %ld\n", error);
     bret = GetAclInformation(pDacl, &acl_size, sizeof(acl_size), AclSizeInformation);
     ok(bret, "GetAclInformation failed\n");
     todo_wine
-    ok(acl_size.AceCount == 0, "GetAclInformation returned unexpected entry count (%d != 0).\n",
+    ok(acl_size.AceCount == 0, "GetAclInformation returned unexpected entry count (%ld != 0).\n",
                                acl_size.AceCount);
     LocalFree(pSD);
 
@@ -3790,13 +3790,13 @@ static void test_CreateDirectoryA(void)
                                    OWNER_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION,
                                    (PSID *)&owner, NULL, &pDacl, NULL, &pSD);
     todo_wine
-    ok(error == ERROR_SUCCESS, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(error == ERROR_SUCCESS, "GetNamedSecurityInfo failed with error %ld\n", error);
     if (error == ERROR_SUCCESS)
     {
         bret = GetAclInformation(pDacl, &acl_size, sizeof(acl_size), AclSizeInformation);
         ok(bret, "GetAclInformation failed\n");
         todo_wine
-        ok(acl_size.AceCount == 0, "GetAclInformation returned unexpected entry count (%d != 0).\n",
+        ok(acl_size.AceCount == 0, "GetAclInformation returned unexpected entry count (%ld != 0).\n",
                                    acl_size.AceCount);
         LocalFree(pSD);
     }
@@ -3857,15 +3857,15 @@ static void test_GetNamedSecurityInfoA(void)
     }
     bret = GetTokenInformation(token, TokenUser, NULL, 0, &user_size);
     ok(!bret && (GetLastError() == ERROR_INSUFFICIENT_BUFFER),
-        "GetTokenInformation(TokenUser) failed with error %d\n", GetLastError());
+        "GetTokenInformation(TokenUser) failed with error %ld\n", GetLastError());
     user = HeapAlloc(GetProcessHeap(), 0, user_size);
     bret = GetTokenInformation(token, TokenUser, user, user_size, &user_size);
-    ok(bret, "GetTokenInformation(TokenUser) failed with error %d\n", GetLastError());
+    ok(bret, "GetTokenInformation(TokenUser) failed with error %ld\n", GetLastError());
     CloseHandle( token );
     user_sid = ((TOKEN_USER *)user)->User.Sid;
 
     bret = GetWindowsDirectoryA(windows_dir, MAX_PATH);
-    ok(bret, "GetWindowsDirectory failed with error %d\n", GetLastError());
+    ok(bret, "GetWindowsDirectory failed with error %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     error = pGetNamedSecurityInfoA(windows_dir, SE_FILE_OBJECT,
@@ -3877,23 +3877,23 @@ static void test_GetNamedSecurityInfoA(void)
         HeapFree(GetProcessHeap(), 0, user);
         return;
     }
-    ok(!error, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(!error, "GetNamedSecurityInfo failed with error %ld\n", error);
 
     bret = GetSecurityDescriptorControl(pSD, &control, &revision);
-    ok(bret, "GetSecurityDescriptorControl failed with error %d\n", GetLastError());
+    ok(bret, "GetSecurityDescriptorControl failed with error %ld\n", GetLastError());
     ok((control & (SE_SELF_RELATIVE|SE_DACL_PRESENT)) == (SE_SELF_RELATIVE|SE_DACL_PRESENT) ||
         broken((control & (SE_SELF_RELATIVE|SE_DACL_PRESENT)) == SE_DACL_PRESENT), /* NT4 */
         "control (0x%x) doesn't have (SE_SELF_RELATIVE|SE_DACL_PRESENT) flags set\n", control);
-    ok(revision == SECURITY_DESCRIPTOR_REVISION1, "revision was %d instead of 1\n", revision);
+    ok(revision == SECURITY_DESCRIPTOR_REVISION1, "revision was %ld instead of 1\n", revision);
 
     isNT4 = (control & (SE_SELF_RELATIVE|SE_DACL_PRESENT)) == SE_DACL_PRESENT;
 
     bret = GetSecurityDescriptorOwner(pSD, &owner, &owner_defaulted);
-    ok(bret, "GetSecurityDescriptorOwner failed with error %d\n", GetLastError());
+    ok(bret, "GetSecurityDescriptorOwner failed with error %ld\n", GetLastError());
     ok(owner != NULL, "owner should not be NULL\n");
 
     bret = GetSecurityDescriptorGroup(pSD, &group, &group_defaulted);
-    ok(bret, "GetSecurityDescriptorGroup failed with error %d\n", GetLastError());
+    ok(bret, "GetSecurityDescriptorGroup failed with error %ld\n", GetLastError());
     ok(group != NULL, "group should not be NULL\n");
     LocalFree(pSD);
 
@@ -3908,24 +3908,24 @@ static void test_GetNamedSecurityInfoA(void)
 
     error = pGetNamedSecurityInfoA(windows_dir, SE_FILE_OBJECT,DACL_SECURITY_INFORMATION,
         NULL, NULL, NULL, NULL, NULL);
-    ok(error==ERROR_INVALID_PARAMETER, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(error==ERROR_INVALID_PARAMETER, "GetNamedSecurityInfo failed with error %ld\n", error);
 
     pDacl = NULL;
     error = pGetNamedSecurityInfoA(windows_dir, SE_FILE_OBJECT,DACL_SECURITY_INFORMATION,
         NULL, NULL, &pDacl, NULL, &pSD);
-    ok(!error, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(!error, "GetNamedSecurityInfo failed with error %ld\n", error);
     ok(pDacl != NULL, "DACL should not be NULL\n");
     LocalFree(pSD);
 
     error = pGetNamedSecurityInfoA(windows_dir, SE_FILE_OBJECT,OWNER_SECURITY_INFORMATION,
         NULL, NULL, &pDacl, NULL, NULL);
-    ok(error==ERROR_INVALID_PARAMETER, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(error==ERROR_INVALID_PARAMETER, "GetNamedSecurityInfo failed with error %ld\n", error);
 
     /* Test behavior of SetNamedSecurityInfo with an invalid path */
     SetLastError(0xdeadbeef);
     error = pSetNamedSecurityInfoA(invalid_path, SE_FILE_OBJECT, DACL_SECURITY_INFORMATION, NULL,
                                    NULL, NULL, NULL);
-    ok(error == ERROR_FILE_NOT_FOUND, "Unexpected error returned: 0x%x\n", error);
+    ok(error == ERROR_FILE_NOT_FOUND, "Unexpected error returned: 0x%lx\n", error);
     ok(GetLastError() == 0xdeadbeef, "Expected last error to remain unchanged.\n");
 
     /* Create security descriptor information and test that it comes back the same */
@@ -3955,7 +3955,7 @@ static void test_GetNamedSecurityInfoA(void)
         CloseHandle(hTemp);
         return;
     }
-    ok(!error, "SetNamedSecurityInfoA failed with error %d\n", error);
+    ok(!error, "SetNamedSecurityInfoA failed with error %ld\n", error);
     SetLastError(0xdeadbeef);
     error = pGetNamedSecurityInfoA(tmpfile, SE_FILE_OBJECT, DACL_SECURITY_INFORMATION,
                                    NULL, NULL, &pDacl, NULL, &pSD);
@@ -3966,7 +3966,7 @@ static void test_GetNamedSecurityInfoA(void)
         CloseHandle(hTemp);
         return;
     }
-    ok(!error, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(!error, "GetNamedSecurityInfo failed with error %ld\n", error);
 
     bret = GetAclInformation(pDacl, &acl_size, sizeof(acl_size), AclSizeInformation);
     ok(bret, "GetAclInformation failed\n");
@@ -3979,7 +3979,7 @@ static void test_GetNamedSecurityInfoA(void)
                      debugstr_sid(&ace->SidStart), debugstr_sid(user_sid));
         ok(((ACE_HEADER *)ace)->AceFlags == 0,
            "Current User ACE has unexpected flags (0x%x != 0x0)\n", ((ACE_HEADER *)ace)->AceFlags);
-        ok(ace->Mask == 0x1f01ff, "Current User ACE has unexpected mask (0x%x != 0x1f01ff)\n",
+        ok(ace->Mask == 0x1f01ff, "Current User ACE has unexpected mask (0x%lx != 0x1f01ff)\n",
                                   ace->Mask);
     }
     if (acl_size.AceCount > 1)
@@ -3993,7 +3993,7 @@ static void test_GetNamedSecurityInfoA(void)
         ok(((ACE_HEADER *)ace)->AceFlags == 0,
            "Administators Group ACE has unexpected flags (0x%x != 0x0)\n", ((ACE_HEADER *)ace)->AceFlags);
         ok(ace->Mask == 0x1f01ff || broken(ace->Mask == GENERIC_ALL) /* win2k */,
-           "Administators Group ACE has unexpected mask (0x%x != 0x1f01ff)\n", ace->Mask);
+           "Administators Group ACE has unexpected mask (0x%lx != 0x1f01ff)\n", ace->Mask);
     }
     LocalFree(pSD);
 
@@ -4003,12 +4003,12 @@ static void test_GetNamedSecurityInfoA(void)
     ok(bret, "Failed to initialize ACL.\n");
     error =  pSetNamedSecurityInfoA(tmpfile, SE_FILE_OBJECT, DACL_SECURITY_INFORMATION,
             NULL, NULL, pDacl, NULL);
-    ok(!error, "SetNamedSecurityInfoA failed with error %d\n", error);
+    ok(!error, "SetNamedSecurityInfoA failed with error %ld\n", error);
     HeapFree(GetProcessHeap(), 0, pDacl);
 
     error = pGetNamedSecurityInfoA(tmpfile, SE_FILE_OBJECT, DACL_SECURITY_INFORMATION,
             NULL, NULL, &pDacl, NULL, &pSD);
-    ok(!error, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(!error, "GetNamedSecurityInfo failed with error %ld\n", error);
 
     bret = GetAclInformation(pDacl, &acl_size, sizeof(acl_size), AclSizeInformation);
     ok(bret, "GetAclInformation failed\n");
@@ -4023,23 +4023,23 @@ static void test_GetNamedSecurityInfoA(void)
 
     h = CreateFileA(tmpfile, GENERIC_READ, FILE_SHARE_DELETE|FILE_SHARE_WRITE|FILE_SHARE_READ,
             NULL, OPEN_EXISTING, 0, NULL);
-    ok(h != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(h != INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
     CloseHandle(h);
 
     /* test setting NULL DACL */
     error = pSetNamedSecurityInfoA(tmpfile, SE_FILE_OBJECT,
             DACL_SECURITY_INFORMATION, NULL, NULL, NULL, NULL);
-    ok(!error, "SetNamedSecurityInfoA failed with error %d\n", error);
+    ok(!error, "SetNamedSecurityInfoA failed with error %ld\n", error);
 
     error = pGetNamedSecurityInfoA(tmpfile, SE_FILE_OBJECT, DACL_SECURITY_INFORMATION,
                 NULL, NULL, &pDacl, NULL, &pSD);
-    ok(!error, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(!error, "GetNamedSecurityInfo failed with error %ld\n", error);
     todo_wine ok(!pDacl, "pDacl != NULL\n");
     LocalFree(pSD);
 
     h = CreateFileA(tmpfile, GENERIC_READ, FILE_SHARE_DELETE|FILE_SHARE_WRITE|FILE_SHARE_READ,
             NULL, OPEN_EXISTING, 0, NULL);
-    ok(h != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(h != INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
     CloseHandle(h);
 
     /* NtSetSecurityObject doesn't inherit DACL entries */
@@ -4051,30 +4051,30 @@ static void test_GetNamedSecurityInfoA(void)
     bret = SetSecurityDescriptorDacl(pSD, TRUE, pDacl, FALSE);
     ok(bret, "Failed to add ACL to security descriptor.\n");
     status = pNtSetSecurityObject(hTemp, DACL_SECURITY_INFORMATION, pSD);
-    ok(status == ERROR_SUCCESS, "NtSetSecurityObject returned %x\n", status);
+    ok(status == ERROR_SUCCESS, "NtSetSecurityObject returned %lx\n", status);
 
     h = CreateFileA(tmpfile, GENERIC_READ, FILE_SHARE_DELETE|FILE_SHARE_WRITE|FILE_SHARE_READ,
             NULL, OPEN_EXISTING, 0, NULL);
-    ok(h == INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(h == INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
     CloseHandle(h);
 
     pSetSecurityDescriptorControl(pSD, SE_DACL_AUTO_INHERIT_REQ, SE_DACL_AUTO_INHERIT_REQ);
     status = pNtSetSecurityObject(hTemp, DACL_SECURITY_INFORMATION, pSD);
-    ok(status == ERROR_SUCCESS, "NtSetSecurityObject returned %x\n", status);
+    ok(status == ERROR_SUCCESS, "NtSetSecurityObject returned %lx\n", status);
 
     h = CreateFileA(tmpfile, GENERIC_READ, FILE_SHARE_DELETE|FILE_SHARE_WRITE|FILE_SHARE_READ,
             NULL, OPEN_EXISTING, 0, NULL);
-    ok(h == INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(h == INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
     CloseHandle(h);
 
     pSetSecurityDescriptorControl(pSD, SE_DACL_AUTO_INHERIT_REQ|SE_DACL_AUTO_INHERITED,
             SE_DACL_AUTO_INHERIT_REQ|SE_DACL_AUTO_INHERITED);
     status = pNtSetSecurityObject(hTemp, DACL_SECURITY_INFORMATION, pSD);
-    ok(status == ERROR_SUCCESS, "NtSetSecurityObject returned %x\n", status);
+    ok(status == ERROR_SUCCESS, "NtSetSecurityObject returned %lx\n", status);
 
     h = CreateFileA(tmpfile, GENERIC_READ, FILE_SHARE_DELETE|FILE_SHARE_WRITE|FILE_SHARE_READ,
             NULL, OPEN_EXISTING, 0, NULL);
-    ok(h == INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(h == INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
     CloseHandle(h);
 
     /* test if DACL is properly mapped to permission */
@@ -4087,11 +4087,11 @@ static void test_GetNamedSecurityInfoA(void)
     bret = SetSecurityDescriptorDacl(pSD, TRUE, pDacl, FALSE);
     ok(bret, "Failed to add ACL to security descriptor.\n");
     status = pNtSetSecurityObject(hTemp, DACL_SECURITY_INFORMATION, pSD);
-    ok(status == ERROR_SUCCESS, "NtSetSecurityObject returned %x\n", status);
+    ok(status == ERROR_SUCCESS, "NtSetSecurityObject returned %lx\n", status);
 
     h = CreateFileA(tmpfile, GENERIC_READ, FILE_SHARE_DELETE|FILE_SHARE_WRITE|FILE_SHARE_READ,
             NULL, OPEN_EXISTING, 0, NULL);
-    ok(h != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(h != INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
     CloseHandle(h);
 
     bret = InitializeAcl(pDacl, 100, ACL_REVISION);
@@ -4103,11 +4103,11 @@ static void test_GetNamedSecurityInfoA(void)
     bret = SetSecurityDescriptorDacl(pSD, TRUE, pDacl, FALSE);
     ok(bret, "Failed to add ACL to security descriptor.\n");
     status = pNtSetSecurityObject(hTemp, DACL_SECURITY_INFORMATION, pSD);
-    ok(status == ERROR_SUCCESS, "NtSetSecurityObject returned %x\n", status);
+    ok(status == ERROR_SUCCESS, "NtSetSecurityObject returned %lx\n", status);
 
     h = CreateFileA(tmpfile, GENERIC_READ, FILE_SHARE_DELETE|FILE_SHARE_WRITE|FILE_SHARE_READ,
             NULL, OPEN_EXISTING, 0, NULL);
-    ok(h == INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(h == INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
     HeapFree(GetProcessHeap(), 0, pDacl);
     HeapFree(GetProcessHeap(), 0, user);
     CloseHandle(hTemp);
@@ -4118,20 +4118,20 @@ static void test_GetNamedSecurityInfoA(void)
     error = pGetNamedSecurityInfoA(software_key, SE_REGISTRY_KEY,
                                    OWNER_SECURITY_INFORMATION|GROUP_SECURITY_INFORMATION,
                                    NULL, NULL, NULL, NULL, &pSD);
-    ok(!error, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(!error, "GetNamedSecurityInfo failed with error %ld\n", error);
 
     bret = AllocateAndInitializeSid(&SIDAuthNT, 1, SECURITY_LOCAL_SYSTEM_RID, 0, 0, 0, 0, 0, 0, 0, &localsys_sid);
-    ok(bret, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(bret, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     bret = GetSecurityDescriptorOwner(pSD, &owner, &owner_defaulted);
-    ok(bret, "GetSecurityDescriptorOwner failed with error %d\n", GetLastError());
+    ok(bret, "GetSecurityDescriptorOwner failed with error %ld\n", GetLastError());
     ok(owner != NULL, "owner should not be NULL\n");
     ok(EqualSid(owner, admin_sid) || EqualSid(owner, localsys_sid),
                 "MACHINE\\Software owner SID (%s) != Administrators SID (%s) or Local System Sid (%s).\n",
                 debugstr_sid(owner), debugstr_sid(admin_sid), debugstr_sid(localsys_sid));
 
     bret = GetSecurityDescriptorGroup(pSD, &group, &group_defaulted);
-    ok(bret, "GetSecurityDescriptorGroup failed with error %d\n", GetLastError());
+    ok(bret, "GetSecurityDescriptorGroup failed with error %ld\n", GetLastError());
     ok(group != NULL, "group should not be NULL\n");
     ok(EqualSid(group, admin_sid) || broken(EqualSid(group, system_sid)) /* before Win7 */
        || broken(((SID*)group)->SubAuthority[0] == SECURITY_NT_NON_UNIQUE) /* Vista */,
@@ -4144,10 +4144,10 @@ static void test_GetNamedSecurityInfoA(void)
     CreateWellKnownSid(WinBuiltinUsersSid, NULL, users_sid, &sid_size);
     error = pGetNamedSecurityInfoA(software_key, SE_REGISTRY_KEY, DACL_SECURITY_INFORMATION,
                                    NULL, NULL, NULL, NULL, &pSD);
-    ok(!error, "GetNamedSecurityInfo failed with error %d\n", error);
+    ok(!error, "GetNamedSecurityInfo failed with error %ld\n", error);
 
     bret = GetSecurityDescriptorDacl(pSD, &dacl_present, &pDacl, &dacl_defaulted);
-    ok(bret, "GetSecurityDescriptorDacl failed with error %d\n", GetLastError());
+    ok(bret, "GetSecurityDescriptorDacl failed with error %ld\n", GetLastError());
     ok(dacl_present, "DACL should be present\n");
     ok(pDacl && IsValidAcl(pDacl), "GetSecurityDescriptorDacl returned invalid DACL.\n");
     bret = GetAclInformation(pDacl, &acl_size, sizeof(acl_size), AclSizeInformation);
@@ -4177,7 +4177,7 @@ static void test_GetNamedSecurityInfoA(void)
            INHERIT_ONLY_ACE|CONTAINER_INHERIT_ACE);
         ok(ace->Mask == GENERIC_READ
            || broken(ace->Mask == KEY_READ), /* win 10 */
-           "Builtin Users ACE has unexpected mask (0x%x != 0x%x)\n",
+           "Builtin Users ACE has unexpected mask (0x%lx != 0x%x)\n",
                                       ace->Mask, GENERIC_READ);
     }
     ok(admins_ace_id != -1, "Builtin Admins ACE not found.\n");
@@ -4194,7 +4194,7 @@ static void test_GetNamedSecurityInfoA(void)
            || broken(flags == CONTAINER_INHERIT_ACE), /* win 10 */
            "Builtin Admins ACE has unexpected flags (0x%x != 0x0)\n", flags);
         ok(ace->Mask == KEY_ALL_ACCESS || broken(ace->Mask == GENERIC_ALL) /* w2k8 */,
-           "Builtin Admins ACE has unexpected mask (0x%x != 0x%x)\n", ace->Mask, KEY_ALL_ACCESS);
+           "Builtin Admins ACE has unexpected mask (0x%lx != 0x%x)\n", ace->Mask, KEY_ALL_ACCESS);
     }
 
     FreeSid(localsys_sid);
@@ -4266,11 +4266,11 @@ static void test_ConvertStringSecurityDescriptor(void)
         ret = ConvertStringSecurityDescriptorToSecurityDescriptorA(
             cssd[i].sidstring, cssd[i].revision, &pSD, NULL);
         GLE = GetLastError();
-        ok(ret == cssd[i].ret, "(%02u) Expected %s (%d)\n", i, cssd[i].ret ? "success" : "failure", GLE);
+        ok(ret == cssd[i].ret, "(%02u) Expected %s (%ld)\n", i, cssd[i].ret ? "success" : "failure", GLE);
         if (!cssd[i].ret)
             ok(GLE == cssd[i].GLE ||
                (cssd[i].altGLE && GLE == cssd[i].altGLE),
-               "(%02u) Unexpected last error %d\n", i, GLE);
+               "(%02u) Unexpected last error %ld\n", i, GLE);
         if (ret)
             LocalFree(pSD);
     }
@@ -4281,50 +4281,50 @@ static void test_ConvertStringSecurityDescriptor(void)
         NULL, 0xdeadbeef, &pSD, NULL);
     todo_wine
     ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
-        "ConvertStringSecurityDescriptorToSecurityDescriptor should have failed with ERROR_INVALID_PARAMETER instead of %d\n",
+        "ConvertStringSecurityDescriptorToSecurityDescriptor should have failed with ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pConvertStringSecurityDescriptorToSecurityDescriptorW(
         NULL, 0xdeadbeef, &pSD, NULL);
     ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
-        "ConvertStringSecurityDescriptorToSecurityDescriptor should have failed with ERROR_INVALID_PARAMETER instead of %d\n",
+        "ConvertStringSecurityDescriptorToSecurityDescriptor should have failed with ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = ConvertStringSecurityDescriptorToSecurityDescriptorA(
         "D:(A;;ROB;;;WD)", 0xdeadbeef, NULL, NULL);
     ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
-        "ConvertStringSecurityDescriptorToSecurityDescriptor should have failed with ERROR_INVALID_PARAMETER instead of %d\n",
+        "ConvertStringSecurityDescriptorToSecurityDescriptor should have failed with ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = ConvertStringSecurityDescriptorToSecurityDescriptorA(
         "D:(A;;ROB;;;WD)", SDDL_REVISION_1, NULL, NULL);
     ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
-        "ConvertStringSecurityDescriptorToSecurityDescriptor should have failed with ERROR_INVALID_PARAMETER instead of %d\n",
+        "ConvertStringSecurityDescriptorToSecurityDescriptor should have failed with ERROR_INVALID_PARAMETER instead of %ld\n",
         GetLastError());
 
     /* test behaviour with empty strings */
     SetLastError(0xdeadbeef);
     ret = pConvertStringSecurityDescriptorToSecurityDescriptorW(
         Blank, SDDL_REVISION_1, &pSD, NULL);
-    ok(ret, "ConvertStringSecurityDescriptorToSecurityDescriptor failed with error %d\n", GetLastError());
+    ok(ret, "ConvertStringSecurityDescriptorToSecurityDescriptor failed with error %ld\n", GetLastError());
     LocalFree(pSD);
 
     SetLastError(0xdeadbeef);
     ret = ConvertStringSecurityDescriptorToSecurityDescriptorA(
         "D:P(A;;GRGW;;;BA)(A;;GRGW;;;S-1-5-21-0-0-0-1000)S:(ML;;NWNR;;;S-1-16-12288)", SDDL_REVISION_1, &pSD, NULL);
     ok(ret || broken(!ret && GetLastError() == ERROR_INVALID_DATATYPE) /* win2k */,
-       "ConvertStringSecurityDescriptorToSecurityDescriptor failed with error %u\n", GetLastError());
+       "ConvertStringSecurityDescriptorToSecurityDescriptor failed with error %lu\n", GetLastError());
     if (ret) LocalFree(pSD);
 
     /* empty DACL */
     size = 0;
     SetLastError(0xdeadbeef);
     ret = ConvertStringSecurityDescriptorToSecurityDescriptorA("D:", SDDL_REVISION_1, &pSD, &size);
-    ok(ret, "unexpected error %u\n", GetLastError());
-    ok(size == sizeof(SECURITY_DESCRIPTOR_RELATIVE) + sizeof(ACL), "got %u\n", size);
+    ok(ret, "unexpected error %lu\n", GetLastError());
+    ok(size == sizeof(SECURITY_DESCRIPTOR_RELATIVE) + sizeof(ACL), "got %lu\n", size);
     acl = (ACL *)((char *)pSD + sizeof(SECURITY_DESCRIPTOR_RELATIVE));
     ok(acl->AclRevision == ACL_REVISION, "got %u\n", acl->AclRevision);
     ok(!acl->Sbz1, "got %u\n", acl->Sbz1);
@@ -4337,8 +4337,8 @@ static void test_ConvertStringSecurityDescriptor(void)
     size = 0;
     SetLastError(0xdeadbeef);
     ret = ConvertStringSecurityDescriptorToSecurityDescriptorA("S:", SDDL_REVISION_1, &pSD, &size);
-    ok(ret, "unexpected error %u\n", GetLastError());
-    ok(size == sizeof(SECURITY_DESCRIPTOR_RELATIVE) + sizeof(ACL), "got %u\n", size);
+    ok(ret, "unexpected error %lu\n", GetLastError());
+    ok(size == sizeof(SECURITY_DESCRIPTOR_RELATIVE) + sizeof(ACL), "got %lu\n", size);
     acl = (ACL *)((char *)pSD + sizeof(SECURITY_DESCRIPTOR_RELATIVE));
     ok(!acl->Sbz1, "got %u\n", acl->Sbz1);
     ok(acl->AclSize == sizeof(*acl), "got %u\n", acl->AclSize);
@@ -4369,12 +4369,12 @@ static void test_ConvertSecurityDescriptorToString(void)
  * don't replicate this feature so we only test len >= strlen+1. */
 #define CHECK_RESULT_AND_FREE(exp_str) \
     ok(strcmp(string, (exp_str)) == 0, "String mismatch (expected \"%s\", got \"%s\")\n", (exp_str), string); \
-    ok(len >= (strlen(exp_str) + 1), "Length mismatch (expected %d, got %d)\n", lstrlenA(exp_str) + 1, len); \
+    ok(len >= (strlen(exp_str) + 1), "Length mismatch (expected %d, got %ld)\n", lstrlenA(exp_str) + 1, len); \
     LocalFree(string);
 
 #define CHECK_ONE_OF_AND_FREE(exp_str1, exp_str2) \
     ok(strcmp(string, (exp_str1)) == 0 || strcmp(string, (exp_str2)) == 0, "String mismatch (expected\n\"%s\" or\n\"%s\", got\n\"%s\")\n", (exp_str1), (exp_str2), string); \
-    ok(len >= (strlen(exp_str1) + 1) || len >= (strlen(exp_str2) + 1), "Length mismatch (expected %d or %d, got %d)\n", lstrlenA(exp_str1) + 1, lstrlenA(exp_str2) + 1, len); \
+    ok(len >= (strlen(exp_str1) + 1) || len >= (strlen(exp_str2) + 1), "Length mismatch (expected %d or %d, got %ld)\n", lstrlenA(exp_str1) + 1, lstrlenA(exp_str2) + 1, len); \
     LocalFree(string);
 
     InitializeSecurityDescriptor(&desc, SECURITY_DESCRIPTOR_REVISION);
@@ -4589,26 +4589,26 @@ static void test_PrivateObjectSecurity(void)
     expect_eq(ctrl, 0x9014, int, "%x");
 
     ret = GetPrivateObjectSecurity(sec, GROUP_SECURITY_INFORMATION, buf, dwDescSize, &retSize);
-    ok(ret, "GetPrivateObjectSecurity failed (err=%u)\n", GetLastError());
-    ok(retSize <= dwDescSize, "Buffer too small (%d vs %d)\n", retSize, dwDescSize);
+    ok(ret, "GetPrivateObjectSecurity failed (err=%lu)\n", GetLastError());
+    ok(retSize <= dwDescSize, "Buffer too small (%ld vs %ld)\n", retSize, dwDescSize);
     ok(pConvertSecurityDescriptorToStringSecurityDescriptorA(buf, SDDL_REVISION_1, sec_info, &string, &len), "Conversion failed\n");
     CHECK_RESULT_AND_FREE("G:S-1-5-21-93476-23408-4576");
     GetSecurityDescriptorControl(buf, &ctrl, &dwRevision);
     expect_eq(ctrl, 0x8000, int, "%x");
 
     ret = GetPrivateObjectSecurity(sec, GROUP_SECURITY_INFORMATION|DACL_SECURITY_INFORMATION, buf, dwDescSize, &retSize);
-    ok(ret, "GetPrivateObjectSecurity failed (err=%u)\n", GetLastError());
-    ok(retSize <= dwDescSize, "Buffer too small (%d vs %d)\n", retSize, dwDescSize);
+    ok(ret, "GetPrivateObjectSecurity failed (err=%lu)\n", GetLastError());
+    ok(retSize <= dwDescSize, "Buffer too small (%ld vs %ld)\n", retSize, dwDescSize);
     ret = pConvertSecurityDescriptorToStringSecurityDescriptorA(buf, SDDL_REVISION_1, sec_info, &string, &len);
-    ok(ret, "Conversion failed err=%u\n", GetLastError());
+    ok(ret, "Conversion failed err=%lu\n", GetLastError());
     CHECK_ONE_OF_AND_FREE("G:S-1-5-21-93476-23408-4576D:(A;NP;GAGXGWGR;;;SU)(A;IOID;CCDC;;;SU)(D;OICI;0xffffffff;;;S-1-5-21-93476-23408-4576)",
         "G:S-1-5-21-93476-23408-4576D:P(A;NP;GAGXGWGR;;;SU)(A;IOID;CCDC;;;SU)(D;OICI;0xffffffff;;;S-1-5-21-93476-23408-4576)"); /* Win7 */
     GetSecurityDescriptorControl(buf, &ctrl, &dwRevision);
     expect_eq(ctrl & (~ SE_DACL_PROTECTED), 0x8004, int, "%x");
 
     ret = GetPrivateObjectSecurity(sec, sec_info, buf, dwDescSize, &retSize);
-    ok(ret, "GetPrivateObjectSecurity failed (err=%u)\n", GetLastError());
-    ok(retSize == dwDescSize, "Buffer too small (%d vs %d)\n", retSize, dwDescSize);
+    ok(ret, "GetPrivateObjectSecurity failed (err=%lu)\n", GetLastError());
+    ok(retSize == dwDescSize, "Buffer too small (%ld vs %ld)\n", retSize, dwDescSize);
     ok(pConvertSecurityDescriptorToStringSecurityDescriptorA(buf, SDDL_REVISION_1, sec_info, &string, &len), "Conversion failed\n");
     CHECK_ONE_OF_AND_FREE("O:SY"
         "G:S-1-5-21-93476-23408-4576"
@@ -4623,7 +4623,7 @@ static void test_PrivateObjectSecurity(void)
 
     SetLastError(0xdeadbeef);
     ok(GetPrivateObjectSecurity(sec, sec_info, buf, 5, &retSize) == FALSE, "GetPrivateObjectSecurity should have failed\n");
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Expected error ERROR_INSUFFICIENT_BUFFER, got %u\n", GetLastError());
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Expected error ERROR_INSUFFICIENT_BUFFER, got %lu\n", GetLastError());
 
     LocalFree(sec);
     HeapFree(GetProcessHeap(), 0, buf);
@@ -4645,43 +4645,43 @@ static void test_InitializeAcl(void)
         return;
     }
 
-    ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "InitializeAcl with too small a buffer should have failed with ERROR_INSUFFICIENT_BUFFER instead of %d\n", GetLastError());
+    ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "InitializeAcl with too small a buffer should have failed with ERROR_INSUFFICIENT_BUFFER instead of %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = InitializeAcl(pAcl, 0xffffffff, ACL_REVISION);
-    ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, "InitializeAcl with too large a buffer should have failed with ERROR_INVALID_PARAMETER instead of %d\n", GetLastError());
+    ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, "InitializeAcl with too large a buffer should have failed with ERROR_INVALID_PARAMETER instead of %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = InitializeAcl(pAcl, sizeof(buffer), ACL_REVISION1);
-    ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, "InitializeAcl(ACL_REVISION1) should have failed with ERROR_INVALID_PARAMETER instead of %d\n", GetLastError());
+    ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, "InitializeAcl(ACL_REVISION1) should have failed with ERROR_INVALID_PARAMETER instead of %ld\n", GetLastError());
 
     ret = InitializeAcl(pAcl, sizeof(buffer), ACL_REVISION2);
-    ok(ret, "InitializeAcl(ACL_REVISION2) failed with error %d\n", GetLastError());
+    ok(ret, "InitializeAcl(ACL_REVISION2) failed with error %ld\n", GetLastError());
 
     ret = IsValidAcl(pAcl);
-    ok(ret, "IsValidAcl failed with error %d\n", GetLastError());
+    ok(ret, "IsValidAcl failed with error %ld\n", GetLastError());
 
     ret = InitializeAcl(pAcl, sizeof(buffer), ACL_REVISION3);
-    ok(ret, "InitializeAcl(ACL_REVISION3) failed with error %d\n", GetLastError());
+    ok(ret, "InitializeAcl(ACL_REVISION3) failed with error %ld\n", GetLastError());
 
     ret = IsValidAcl(pAcl);
-    ok(ret, "IsValidAcl failed with error %d\n", GetLastError());
+    ok(ret, "IsValidAcl failed with error %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = InitializeAcl(pAcl, sizeof(buffer), ACL_REVISION4);
     if (GetLastError() != ERROR_INVALID_PARAMETER)
     {
-        ok(ret, "InitializeAcl(ACL_REVISION4) failed with error %d\n", GetLastError());
+        ok(ret, "InitializeAcl(ACL_REVISION4) failed with error %ld\n", GetLastError());
 
         ret = IsValidAcl(pAcl);
-        ok(ret, "IsValidAcl failed with error %d\n", GetLastError());
+        ok(ret, "IsValidAcl failed with error %ld\n", GetLastError());
     }
     else
         win_skip("ACL_REVISION4 is not implemented on NT4\n");
 
     SetLastError(0xdeadbeef);
     ret = InitializeAcl(pAcl, sizeof(buffer), -1);
-    ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, "InitializeAcl(-1) failed with error %d\n", GetLastError());
+    ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, "InitializeAcl(-1) failed with error %ld\n", GetLastError());
 }
 
 static void test_GetSecurityInfo(void)
@@ -4724,7 +4724,7 @@ static void test_GetSecurityInfo(void)
         return;
     }
     bret = GetTokenInformation(token, TokenUser, b, l, &l);
-    ok(bret, "GetTokenInformation(TokenUser) failed with error %d\n", GetLastError());
+    ok(bret, "GetTokenInformation(TokenUser) failed with error %ld\n", GetLastError());
     CloseHandle( token );
     user_sid = ((TOKEN_USER *)b)->User.Sid;
 
@@ -4746,7 +4746,7 @@ static void test_GetSecurityInfo(void)
         CloseHandle(obj);
         return;
     }
-    ok(ret == ERROR_SUCCESS, "GetSecurityInfo returned %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "GetSecurityInfo returned %ld\n", ret);
     ok(pSD != NULL, "GetSecurityInfo\n");
     ok(owner != NULL, "GetSecurityInfo\n");
     ok(group != NULL, "GetSecurityInfo\n");
@@ -4762,7 +4762,7 @@ static void test_GetSecurityInfo(void)
     ret = GetSecurityInfo(obj, SE_FILE_OBJECT,
                           OWNER_SECURITY_INFORMATION | GROUP_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION,
                           &owner, &group, &pDacl, NULL, NULL);
-    ok(ret == ERROR_SUCCESS, "GetSecurityInfo returned %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "GetSecurityInfo returned %ld\n", ret);
     ok(owner != NULL, "GetSecurityInfo\n");
     ok(group != NULL, "GetSecurityInfo\n");
     if (pDacl != NULL)
@@ -4785,10 +4785,10 @@ static void test_GetSecurityInfo(void)
     ok(bret, "Failed to add ACL to security descriptor.\n");
     ret = pSetSecurityInfo(obj, SE_FILE_OBJECT, DACL_SECURITY_INFORMATION,
                           NULL, NULL, pDacl, NULL);
-    ok(ret == ERROR_SUCCESS, "SetSecurityInfo returned %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "SetSecurityInfo returned %ld\n", ret);
     ret = GetSecurityInfo(obj, SE_FILE_OBJECT, DACL_SECURITY_INFORMATION,
                           NULL, NULL, &pDacl, NULL, &pSD);
-    ok(ret == ERROR_SUCCESS, "GetSecurityInfo returned %d\n", ret);
+    ok(ret == ERROR_SUCCESS, "GetSecurityInfo returned %ld\n", ret);
     ok(pDacl && IsValidAcl(pDacl), "GetSecurityInfo returned invalid DACL.\n");
     bret = GetAclInformation(pDacl, &acl_size, sizeof(acl_size), AclSizeInformation);
     ok(bret, "GetAclInformation failed\n");
@@ -4801,7 +4801,7 @@ static void test_GetSecurityInfo(void)
                      debugstr_sid(&ace->SidStart), debugstr_sid(user_sid));
         ok(((ACE_HEADER *)ace)->AceFlags == 0,
            "Current User ACE has unexpected flags (0x%x != 0x0)\n", ((ACE_HEADER *)ace)->AceFlags);
-        ok(ace->Mask == 0x1f01ff, "Current User ACE has unexpected mask (0x%x != 0x1f01ff)\n",
+        ok(ace->Mask == 0x1f01ff, "Current User ACE has unexpected mask (0x%lx != 0x1f01ff)\n",
                                     ace->Mask);
     }
     if (acl_size.AceCount > 1)
@@ -4812,7 +4812,7 @@ static void test_GetSecurityInfo(void)
         todo_wine ok(bret, "Administators Group ACE (%s) != Administators Group SID (%s).\n", debugstr_sid(&ace->SidStart), debugstr_sid(admin_sid));
         ok(((ACE_HEADER *)ace)->AceFlags == 0,
            "Administators Group ACE has unexpected flags (0x%x != 0x0)\n", ((ACE_HEADER *)ace)->AceFlags);
-        ok(ace->Mask == 0x1f01ff, "Administators Group ACE has unexpected mask (0x%x != 0x1f01ff)\n",
+        ok(ace->Mask == 0x1f01ff, "Administators Group ACE has unexpected mask (0x%lx != 0x1f01ff)\n",
                                   ace->Mask);
     }
     LocalFree(pSD);
@@ -4835,16 +4835,16 @@ static void test_GetSecurityInfo(void)
     ret = GetSecurityInfo(GetCurrentProcess(), SE_KERNEL_OBJECT,
                            OWNER_SECURITY_INFORMATION|GROUP_SECURITY_INFORMATION,
                            NULL, NULL, NULL, NULL, &pSD);
-    ok(!ret, "GetNamedSecurityInfo failed with error %d\n", ret);
+    ok(!ret, "GetNamedSecurityInfo failed with error %ld\n", ret);
 
     bret = GetSecurityDescriptorOwner(pSD, &owner, &owner_defaulted);
-    ok(bret, "GetSecurityDescriptorOwner failed with error %d\n", GetLastError());
+    ok(bret, "GetSecurityDescriptorOwner failed with error %ld\n", GetLastError());
     ok(owner != NULL, "owner should not be NULL\n");
     ok(EqualSid(owner, admin_sid) || EqualSid(owner, user_sid),
        "Process owner SID != Administrators SID.\n");
 
     bret = GetSecurityDescriptorGroup(pSD, &group, &group_defaulted);
-    ok(bret, "GetSecurityDescriptorGroup failed with error %d\n", GetLastError());
+    ok(bret, "GetSecurityDescriptorGroup failed with error %ld\n", GetLastError());
     ok(group != NULL, "group should not be NULL\n");
     ok(EqualSid(group, domain_users_sid), "Process group SID != Domain Users SID.\n");
     LocalFree(pSD);
@@ -4852,10 +4852,10 @@ static void test_GetSecurityInfo(void)
     /* Test querying the DACL of a process */
     ret = GetSecurityInfo(GetCurrentProcess(), SE_KERNEL_OBJECT, DACL_SECURITY_INFORMATION,
                                    NULL, NULL, NULL, NULL, &pSD);
-    ok(!ret, "GetSecurityInfo failed with error %d\n", ret);
+    ok(!ret, "GetSecurityInfo failed with error %ld\n", ret);
 
     bret = GetSecurityDescriptorDacl(pSD, &dacl_present, &pDacl, &dacl_defaulted);
-    ok(bret, "GetSecurityDescriptorDacl failed with error %d\n", GetLastError());
+    ok(bret, "GetSecurityDescriptorDacl failed with error %ld\n", GetLastError());
     ok(dacl_present, "DACL should be present\n");
     ok(pDacl && IsValidAcl(pDacl), "GetSecurityDescriptorDacl returned invalid DACL.\n");
     bret = GetAclInformation(pDacl, &acl_size, sizeof(acl_size), AclSizeInformation);
@@ -4880,7 +4880,7 @@ static void test_GetSecurityInfo(void)
         ok(flags == (INHERIT_ONLY_ACE|CONTAINER_INHERIT_ACE),
            "Domain Users ACE has unexpected flags (0x%x != 0x%x)\n", flags,
            INHERIT_ONLY_ACE|CONTAINER_INHERIT_ACE);
-        ok(ace->Mask == GENERIC_READ, "Domain Users ACE has unexpected mask (0x%x != 0x%x)\n",
+        ok(ace->Mask == GENERIC_READ, "Domain Users ACE has unexpected mask (0x%lx != 0x%x)\n",
                                       ace->Mask, GENERIC_READ);
     }
     ok(admins_ace_id != -1 || broken(admins_ace_id == -1) /* xp */,
@@ -4892,7 +4892,7 @@ static void test_GetSecurityInfo(void)
         flags = ((ACE_HEADER *)ace)->AceFlags;
         ok(flags == 0x0, "Builtin Admins ACE has unexpected flags (0x%x != 0x0)\n", flags);
         ok(ace->Mask == PROCESS_ALL_ACCESS || broken(ace->Mask == 0x1f0fff) /* win2k */,
-           "Builtin Admins ACE has unexpected mask (0x%x != 0x%x)\n", ace->Mask, PROCESS_ALL_ACCESS);
+           "Builtin Admins ACE has unexpected mask (0x%lx != 0x%x)\n", ace->Mask, PROCESS_ALL_ACCESS);
     }
     LocalFree(pSD);
 }
@@ -4907,16 +4907,16 @@ static void test_GetSidSubAuthority(void)
     ok(IsValidSid(psid),"Sid is not valid\n");
     SetLastError(0xbebecaca);
     ok(*GetSidSubAuthorityCount(psid) == 4,"GetSidSubAuthorityCount gave %d expected 4\n", *GetSidSubAuthorityCount(psid));
-    ok(GetLastError() == 0,"GetLastError returned %d instead of 0\n",GetLastError());
+    ok(GetLastError() == 0,"GetLastError returned %ld instead of 0\n",GetLastError());
     SetLastError(0xbebecaca);
-    ok(*GetSidSubAuthority(psid,0) == 21,"GetSidSubAuthority gave %d expected 21\n", *GetSidSubAuthority(psid,0));
-    ok(GetLastError() == 0,"GetLastError returned %d instead of 0\n",GetLastError());
+    ok(*GetSidSubAuthority(psid,0) == 21,"GetSidSubAuthority gave %ld expected 21\n", *GetSidSubAuthority(psid,0));
+    ok(GetLastError() == 0,"GetLastError returned %ld instead of 0\n",GetLastError());
     SetLastError(0xbebecaca);
-    ok(*GetSidSubAuthority(psid,1) == 93476,"GetSidSubAuthority gave %d expected 93476\n", *GetSidSubAuthority(psid,1));
-    ok(GetLastError() == 0,"GetLastError returned %d instead of 0\n",GetLastError());
+    ok(*GetSidSubAuthority(psid,1) == 93476,"GetSidSubAuthority gave %ld expected 93476\n", *GetSidSubAuthority(psid,1));
+    ok(GetLastError() == 0,"GetLastError returned %ld instead of 0\n",GetLastError());
     SetLastError(0xbebecaca);
     ok(GetSidSubAuthority(psid,4) != NULL,"Expected out of bounds GetSidSubAuthority to return a non-NULL pointer\n");
-    ok(GetLastError() == 0,"GetLastError returned %d instead of 0\n",GetLastError());
+    ok(GetLastError() == 0,"GetLastError returned %ld instead of 0\n",GetLastError());
     LocalFree(psid);
 }
 
@@ -4935,19 +4935,19 @@ static void test_CheckTokenMembership(void)
         return;
     }
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_DUPLICATE|TOKEN_QUERY, &process_token);
-    ok(ret, "OpenProcessToken failed with error %d\n", GetLastError());
+    ok(ret, "OpenProcessToken failed with error %ld\n", GetLastError());
 
     ret = DuplicateToken(process_token, SecurityImpersonation, &token);
-    ok(ret, "DuplicateToken failed with error %d\n", GetLastError());
+    ok(ret, "DuplicateToken failed with error %ld\n", GetLastError());
 
     /* groups */
     ret = GetTokenInformation(token, TokenGroups, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-        "GetTokenInformation(TokenGroups) %s with error %d\n",
+        "GetTokenInformation(TokenGroups) %s with error %ld\n",
         ret ? "succeeded" : "failed", GetLastError());
     token_groups = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetTokenInformation(token, TokenGroups, token_groups, size, &size);
-    ok(ret, "GetTokenInformation(TokenGroups) failed with error %d\n", GetLastError());
+    ok(ret, "GetTokenInformation(TokenGroups) failed with error %ld\n", GetLastError());
 
     for (i = 0; i < token_groups->GroupCount; i++)
     {
@@ -4965,19 +4965,19 @@ static void test_CheckTokenMembership(void)
 
     is_member = FALSE;
     ret = pCheckTokenMembership(token, token_groups->Groups[i].Sid, &is_member);
-    ok(ret, "CheckTokenMembership failed with error %d\n", GetLastError());
+    ok(ret, "CheckTokenMembership failed with error %ld\n", GetLastError());
     ok(is_member, "CheckTokenMembership should have detected sid as member\n");
 
     is_member = FALSE;
     ret = pCheckTokenMembership(NULL, token_groups->Groups[i].Sid, &is_member);
-    ok(ret, "CheckTokenMembership failed with error %d\n", GetLastError());
+    ok(ret, "CheckTokenMembership failed with error %ld\n", GetLastError());
     ok(is_member, "CheckTokenMembership should have detected sid as member\n");
 
     is_member = TRUE;
     SetLastError(0xdeadbeef);
     ret = pCheckTokenMembership(process_token, token_groups->Groups[i].Sid, &is_member);
     ok(!ret && GetLastError() == ERROR_NO_IMPERSONATION_TOKEN,
-        "CheckTokenMembership with process token %s with error %d\n",
+        "CheckTokenMembership with process token %s with error %ld\n",
         ret ? "succeeded" : "failed", GetLastError());
     ok(!is_member, "CheckTokenMembership should have cleared is_member\n");
 
@@ -5001,33 +5001,33 @@ static void test_EqualSid(void)
         win_skip("AllocateAndInitializeSid is not implemented\n");
         return;
     }
-    ok(ret, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(ret, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
     ok(GetLastError() == 0xdeadbeef,
-       "AllocateAndInitializeSid shouldn't have set last error to %d\n",
+       "AllocateAndInitializeSid shouldn't have set last error to %ld\n",
        GetLastError());
 
     ret = AllocateAndInitializeSid(&SIDAuthWorld, 1, SECURITY_WORLD_RID,
         0, 0, 0, 0, 0, 0, 0, &sid2);
-    ok(ret, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(ret, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = EqualSid(sid1, sid2);
     ok(!ret, "World and domain admins sids shouldn't have been equal\n");
     ok(GetLastError() == ERROR_SUCCESS ||
        broken(GetLastError() == 0xdeadbeef), /* NT4 */
-       "EqualSid should have set last error to ERROR_SUCCESS instead of %d\n",
+       "EqualSid should have set last error to ERROR_SUCCESS instead of %ld\n",
        GetLastError());
 
     SetLastError(0xdeadbeef);
     sid2 = FreeSid(sid2);
     ok(!sid2, "FreeSid should have returned NULL instead of %p\n", sid2);
     ok(GetLastError() == 0xdeadbeef,
-       "FreeSid shouldn't have set last error to %d\n",
+       "FreeSid shouldn't have set last error to %ld\n",
        GetLastError());
 
     ret = AllocateAndInitializeSid(&SIDAuthNT, 2, SECURITY_BUILTIN_DOMAIN_RID,
         DOMAIN_ALIAS_RID_ADMINS, 0, 0, 0, 0, 0, 0, &sid2);
-    ok(ret, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(ret, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = EqualSid(sid1, sid2);
@@ -5035,7 +5035,7 @@ static void test_EqualSid(void)
        debugstr_sid(sid1), debugstr_sid(sid2));
     ok(GetLastError() == ERROR_SUCCESS ||
        broken(GetLastError() == 0xdeadbeef), /* NT4 */
-       "EqualSid should have set last error to ERROR_SUCCESS instead of %d\n",
+       "EqualSid should have set last error to ERROR_SUCCESS instead of %ld\n",
        GetLastError());
 
     ((SID *)sid2)->Revision = 2;
@@ -5044,7 +5044,7 @@ static void test_EqualSid(void)
     ok(!ret, "EqualSid with invalid sid should have returned FALSE\n");
     ok(GetLastError() == ERROR_SUCCESS ||
        broken(GetLastError() == 0xdeadbeef), /* NT4 */
-       "EqualSid should have set last error to ERROR_SUCCESS instead of %d\n",
+       "EqualSid should have set last error to ERROR_SUCCESS instead of %ld\n",
        GetLastError());
     ((SID *)sid2)->Revision = SID_REVISION;
 
@@ -5069,15 +5069,15 @@ static void test_GetUserNameA(void)
     required_len = 0;
     ret = GetUserNameA(NULL, &required_len);
     ok(ret == FALSE, "GetUserNameA returned %d\n", ret);
-    ok(required_len != 0, "Outputted buffer length was %u\n", required_len);
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %u\n", GetLastError());
+    ok(required_len != 0, "Outputted buffer length was %lu\n", required_len);
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     required_len = 1;
     ret = GetUserNameA(NULL, &required_len);
     ok(ret == FALSE, "GetUserNameA returned %d\n", ret);
-    ok(required_len != 0 && required_len != 1, "Outputted buffer length was %u\n", required_len);
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %u\n", GetLastError());
+    ok(required_len != 0 && required_len != 1, "Outputted buffer length was %lu\n", required_len);
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %lu\n", GetLastError());
 
     /* Tests crashes on Windows. */
     if (0)
@@ -5100,19 +5100,19 @@ static void test_GetUserNameA(void)
     ret = GetUserNameA(buffer, &required_len);
     ok(ret == FALSE, "GetUserNameA returned %d\n", ret);
     ok(!memcmp(buffer, filler, sizeof(filler)), "Output buffer was altered\n");
-    ok(required_len != 0, "Outputted buffer length was %u\n", required_len);
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %u\n", GetLastError());
+    ok(required_len != 0, "Outputted buffer length was %lu\n", required_len);
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     memcpy(buffer, filler, sizeof(filler));
     buffer_len = required_len;
     ret = GetUserNameA(buffer, &buffer_len);
-    ok(ret == TRUE, "GetUserNameA returned %d, last error %u\n", ret, GetLastError());
+    ok(ret == TRUE, "GetUserNameA returned %d, last error %lu\n", ret, GetLastError());
     ok(memcmp(buffer, filler, sizeof(filler)) != 0, "Output buffer was untouched\n");
     ok(buffer_len == required_len ||
        broken(buffer_len == required_len / sizeof(WCHAR)), /* XP+ */
-       "Outputted buffer length was %u\n", buffer_len);
-    ok(GetLastError() == 0xdeadbeef, "Last error was %u\n", GetLastError());
+       "Outputted buffer length was %lu\n", buffer_len);
+    ok(GetLastError() == 0xdeadbeef, "Last error was %lu\n", GetLastError());
 
     /* Use the reported buffer size from the last GetUserNameA call and pass
      * a length that is one less than the required value. */
@@ -5122,8 +5122,8 @@ static void test_GetUserNameA(void)
     ret = GetUserNameA(buffer, &buffer_len);
     ok(ret == FALSE, "GetUserNameA returned %d\n", ret);
     ok(!memcmp(buffer, filler, sizeof(filler)), "Output buffer was untouched\n");
-    ok(buffer_len == required_len, "Outputted buffer length was %u\n", buffer_len);
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %u\n", GetLastError());
+    ok(buffer_len == required_len, "Outputted buffer length was %lu\n", buffer_len);
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %lu\n", GetLastError());
 }
 
 static void test_GetUserNameW(void)
@@ -5143,15 +5143,15 @@ static void test_GetUserNameW(void)
     required_len = 0;
     ret = GetUserNameW(NULL, &required_len);
     ok(ret == FALSE, "GetUserNameW returned %d\n", ret);
-    ok(required_len != 0, "Outputted buffer length was %u\n", required_len);
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %u\n", GetLastError());
+    ok(required_len != 0, "Outputted buffer length was %lu\n", required_len);
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     required_len = 1;
     ret = GetUserNameW(NULL, &required_len);
     ok(ret == FALSE, "GetUserNameW returned %d\n", ret);
-    ok(required_len != 0 && required_len != 1, "Outputted buffer length was %u\n", required_len);
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %u\n", GetLastError());
+    ok(required_len != 0 && required_len != 1, "Outputted buffer length was %lu\n", required_len);
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %lu\n", GetLastError());
 
     /* Tests crash on Windows. */
     if (0)
@@ -5172,17 +5172,17 @@ static void test_GetUserNameW(void)
     ret = GetUserNameW(buffer, &required_len);
     ok(ret == FALSE, "GetUserNameW returned %d\n", ret);
     ok(!memcmp(buffer, filler, sizeof(filler)), "Output buffer was altered\n");
-    ok(required_len != 0, "Outputted buffer length was %u\n", required_len);
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %u\n", GetLastError());
+    ok(required_len != 0, "Outputted buffer length was %lu\n", required_len);
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     memcpy(buffer, filler, sizeof(filler));
     buffer_len = required_len;
     ret = GetUserNameW(buffer, &buffer_len);
-    ok(ret == TRUE, "GetUserNameW returned %d, last error %u\n", ret, GetLastError());
+    ok(ret == TRUE, "GetUserNameW returned %d, last error %lu\n", ret, GetLastError());
     ok(memcmp(buffer, filler, sizeof(filler)) != 0, "Output buffer was untouched\n");
-    ok(buffer_len == required_len, "Outputted buffer length was %u\n", buffer_len);
-    ok(GetLastError() == 0xdeadbeef, "Last error was %u\n", GetLastError());
+    ok(buffer_len == required_len, "Outputted buffer length was %lu\n", buffer_len);
+    ok(GetLastError() == 0xdeadbeef, "Last error was %lu\n", GetLastError());
 
     /* GetUserNameW on XP and newer writes a truncated portion of the username string to the buffer. */
     SetLastError(0xdeadbeef);
@@ -5193,8 +5193,8 @@ static void test_GetUserNameW(void)
     ok(!memcmp(buffer, filler, sizeof(filler)) ||
        broken(memcmp(buffer, filler, sizeof(filler)) != 0), /* XP+ */
        "Output buffer was altered\n");
-    ok(buffer_len == required_len, "Outputted buffer length was %u\n", buffer_len);
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %u\n", GetLastError());
+    ok(buffer_len == required_len, "Outputted buffer length was %lu\n", buffer_len);
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Last error was %lu\n", GetLastError());
 }
 
 static void test_CreateRestrictedToken(void)
@@ -5216,18 +5216,18 @@ static void test_CreateRestrictedToken(void)
     DWORD i;
 
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_DUPLICATE|TOKEN_QUERY, &process_token);
-    ok(ret, "got error %d\n", GetLastError());
+    ok(ret, "got error %ld\n", GetLastError());
 
     ret = DuplicateTokenEx(process_token, TOKEN_DUPLICATE|TOKEN_ADJUST_GROUPS|TOKEN_QUERY,
         NULL, SecurityImpersonation, TokenImpersonation, &token);
-    ok(ret, "got error %d\n", GetLastError());
+    ok(ret, "got error %ld\n", GetLastError());
 
     ret = GetTokenInformation(token, TokenGroups, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-        "got %d with error %d\n", ret, GetLastError());
+        "got %d with error %ld\n", ret, GetLastError());
     token_groups = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetTokenInformation(token, TokenGroups, token_groups, size, &size);
-    ok(ret, "got error %d\n", GetLastError());
+    ok(ret, "got error %ld\n", GetLastError());
 
     for (i = 0; i < token_groups->GroupCount; i++)
     {
@@ -5241,34 +5241,34 @@ static void test_CreateRestrictedToken(void)
 
     is_member = FALSE;
     ret = pCheckTokenMembership(token, removed_sid, &is_member);
-    ok(ret, "got error %d\n", GetLastError());
+    ok(ret, "got error %ld\n", GetLastError());
     ok(is_member, "not a member\n");
 
     sattr.Sid = removed_sid;
     sattr.Attributes = 0;
     r_token = NULL;
     ret = CreateRestrictedToken(token, 0, 1, &sattr, 0, NULL, 0, NULL, &r_token);
-    ok(ret, "got error %d\n", GetLastError());
+    ok(ret, "got error %ld\n", GetLastError());
 
     is_member = TRUE;
     ret = pCheckTokenMembership(r_token, removed_sid, &is_member);
-    ok(ret, "got error %d\n", GetLastError());
+    ok(ret, "got error %ld\n", GetLastError());
     ok(!is_member, "not a member\n");
 
     ret = GetTokenInformation(r_token, TokenGroups, NULL, 0, &size);
-    ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got %d with error %d\n",
+    ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got %d with error %ld\n",
         ret, GetLastError());
     groups2 = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetTokenInformation(r_token, TokenGroups, groups2, size, &size);
-    ok(ret, "got error %d\n", GetLastError());
+    ok(ret, "got error %ld\n", GetLastError());
 
     for (i = 0; i < groups2->GroupCount; i++)
     {
         if (EqualSid(groups2->Groups[i].Sid, removed_sid))
         {
             DWORD attr = groups2->Groups[i].Attributes;
-            ok(attr & SE_GROUP_USE_FOR_DENY_ONLY, "got wrong attributes %#x\n", attr);
-            ok(!(attr & SE_GROUP_ENABLED), "got wrong attributes %#x\n", attr);
+            ok(attr & SE_GROUP_USE_FOR_DENY_ONLY, "got wrong attributes %#lx\n", attr);
+            ok(!(attr & SE_GROUP_ENABLED), "got wrong attributes %#lx\n", attr);
             break;
         }
     }
@@ -5277,29 +5277,29 @@ static void test_CreateRestrictedToken(void)
 
     size = sizeof(type);
     ret = GetTokenInformation(r_token, TokenType, &type, size, &size);
-    ok(ret, "got error %d\n", GetLastError());
+    ok(ret, "got error %ld\n", GetLastError());
     ok(type == TokenImpersonation, "got type %u\n", type);
 
     size = sizeof(level);
     ret = GetTokenInformation(r_token, TokenImpersonationLevel, &level, size, &size);
-    ok(ret, "got error %d\n", GetLastError());
+    ok(ret, "got error %ld\n", GetLastError());
     ok(level == SecurityImpersonation, "got level %u\n", type);
 
     CloseHandle(r_token);
 
     r_token = NULL;
     ret = CreateRestrictedToken(process_token, 0, 1, &sattr, 0, NULL, 0, NULL, &r_token);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     size = sizeof(type);
     ret = GetTokenInformation(r_token, TokenType, &type, size, &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ok(type == TokenPrimary, "got type %u\n", type);
 
     CloseHandle(r_token);
 
     ret = GetTokenInformation(token, TokenPrivileges, privs, sizeof(privs_buffer), &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     for (i = 0; i < privs->PrivilegeCount; i++)
     {
@@ -5315,18 +5315,18 @@ static void test_CreateRestrictedToken(void)
     lattr.Attributes = 0;
     r_token = NULL;
     ret = CreateRestrictedToken(token, 0, 0, NULL, 1, &lattr, 0, NULL, &r_token);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     priv_set.PrivilegeCount = 1;
     priv_set.Control = 0;
     priv_set.Privilege[0].Luid = luid;
     priv_set.Privilege[0].Attributes = 0;
     ret = PrivilegeCheck(r_token, &priv_set, &is_member);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ok(!is_member, "privilege should not be enabled\n");
 
     ret = GetTokenInformation(r_token, TokenPrivileges, privs, sizeof(privs_buffer), &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     is_member = FALSE;
     for (i = 0; i < privs->PrivilegeCount; i++)
@@ -5342,7 +5342,7 @@ static void test_CreateRestrictedToken(void)
     lattr.Luid.LowPart = 0xdeadbeef;
     r_token = NULL;
     ret = CreateRestrictedToken(token, 0, 1, &sattr, 1, &lattr, 0, NULL, &r_token);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     CloseHandle(r_token);
 
     HeapFree(GetProcessHeap(), 0, token_groups);
@@ -5364,7 +5364,7 @@ static void validate_default_security_descriptor(SECURITY_DESCRIPTOR *sd)
     acl = (void *)0xdeadbeef;
     SetLastError(0xdeadbeef);
     ret = GetSecurityDescriptorDacl(sd, &present, &acl, &defaulted);
-    ok(ret, "GetSecurityDescriptorDacl error %d\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorDacl error %ld\n", GetLastError());
     todo_wine
     ok(present == 1, "acl is not present\n");
     todo_wine
@@ -5375,7 +5375,7 @@ static void validate_default_security_descriptor(SECURITY_DESCRIPTOR *sd)
     sid = (void *)0xdeadbeef;
     SetLastError(0xdeadbeef);
     ret = GetSecurityDescriptorOwner(sd, &sid, &defaulted);
-    ok(ret, "GetSecurityDescriptorOwner error %d\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorOwner error %ld\n", GetLastError());
     todo_wine
     ok(sid != (void *)0xdeadbeef && sid != NULL, "sid pointer is not set\n");
     ok(defaulted == 0, "defaulted is set to TRUE\n");
@@ -5384,7 +5384,7 @@ static void validate_default_security_descriptor(SECURITY_DESCRIPTOR *sd)
     sid = (void *)0xdeadbeef;
     SetLastError(0xdeadbeef);
     ret = GetSecurityDescriptorGroup(sd, &sid, &defaulted);
-    ok(ret, "GetSecurityDescriptorGroup error %d\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorGroup error %ld\n", GetLastError());
     todo_wine
     ok(sid != (void *)0xdeadbeef && sid != NULL, "sid pointer is not set\n");
     ok(defaulted == 0, "defaulted is set to TRUE\n");
@@ -5406,9 +5406,9 @@ static void test_default_handle_security(HANDLE token, HANDLE handle, GENERIC_MA
     SetLastError(0xdeadbeef);
     ret = AccessCheck(sd, token, MAXIMUM_ALLOWED, mapping, &priv_set, &priv_set_len, &granted, &status);
 todo_wine {
-    ok(ret, "AccessCheck error %d\n", GetLastError());
+    ok(ret, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == mapping->GenericAll, "expected all access %#x, got %#x\n", mapping->GenericAll, granted);
+    ok(granted == mapping->GenericAll, "expected all access %#lx, got %#lx\n", mapping->GenericAll, granted);
 }
     priv_set_len = sizeof(priv_set);
     granted = 0xdeadbeef;
@@ -5416,9 +5416,9 @@ todo_wine {
     SetLastError(0xdeadbeef);
     ret = AccessCheck(sd, token, 0, mapping, &priv_set, &priv_set_len, &granted, &status);
 todo_wine {
-    ok(ret, "AccessCheck error %d\n", GetLastError());
+    ok(ret, "AccessCheck error %ld\n", GetLastError());
     ok(status == 0 || broken(status == 1) /* NT4 */, "expected 0, got %d\n", status);
-    ok(granted == 0 || broken(granted == mapping->GenericRead) /* NT4 */, "expected 0, got %#x\n", granted);
+    ok(granted == 0 || broken(granted == mapping->GenericRead) /* NT4 */, "expected 0, got %#lx\n", granted);
 }
     priv_set_len = sizeof(priv_set);
     granted = 0xdeadbeef;
@@ -5426,9 +5426,9 @@ todo_wine {
     SetLastError(0xdeadbeef);
     ret = AccessCheck(sd, token, ACCESS_SYSTEM_SECURITY, mapping, &priv_set, &priv_set_len, &granted, &status);
 todo_wine {
-    ok(ret, "AccessCheck error %d\n", GetLastError());
+    ok(ret, "AccessCheck error %ld\n", GetLastError());
     ok(status == 0, "expected 0, got %d\n", status);
-    ok(granted == 0, "expected 0, got %#x\n", granted);
+    ok(granted == 0, "expected 0, got %#lx\n", granted);
 }
     priv_set_len = sizeof(priv_set);
     granted = 0xdeadbeef;
@@ -5436,9 +5436,9 @@ todo_wine {
     SetLastError(0xdeadbeef);
     ret = AccessCheck(sd, token, mapping->GenericRead, mapping, &priv_set, &priv_set_len, &granted, &status);
 todo_wine {
-    ok(ret, "AccessCheck error %d\n", GetLastError());
+    ok(ret, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == mapping->GenericRead, "expected read access %#x, got %#x\n", mapping->GenericRead, granted);
+    ok(granted == mapping->GenericRead, "expected read access %#lx, got %#lx\n", mapping->GenericRead, granted);
 }
     priv_set_len = sizeof(priv_set);
     granted = 0xdeadbeef;
@@ -5446,9 +5446,9 @@ todo_wine {
     SetLastError(0xdeadbeef);
     ret = AccessCheck(sd, token, mapping->GenericWrite, mapping, &priv_set, &priv_set_len, &granted, &status);
 todo_wine {
-    ok(ret, "AccessCheck error %d\n", GetLastError());
+    ok(ret, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == mapping->GenericWrite, "expected write access %#x, got %#x\n", mapping->GenericWrite, granted);
+    ok(granted == mapping->GenericWrite, "expected write access %#lx, got %#lx\n", mapping->GenericWrite, granted);
 }
     priv_set_len = sizeof(priv_set);
     granted = 0xdeadbeef;
@@ -5456,9 +5456,9 @@ todo_wine {
     SetLastError(0xdeadbeef);
     ret = AccessCheck(sd, token, mapping->GenericExecute, mapping, &priv_set, &priv_set_len, &granted, &status);
 todo_wine {
-    ok(ret, "AccessCheck error %d\n", GetLastError());
+    ok(ret, "AccessCheck error %ld\n", GetLastError());
     ok(status == 1, "expected 1, got %d\n", status);
-    ok(granted == mapping->GenericExecute, "expected execute access %#x, got %#x\n", mapping->GenericExecute, granted);
+    ok(granted == mapping->GenericExecute, "expected execute access %#lx, got %#lx\n", mapping->GenericExecute, granted);
 }
     HeapFree(GetProcessHeap(), 0, sd);
 }
@@ -5471,7 +5471,7 @@ static ACCESS_MASK get_obj_access(HANDLE obj)
     if (!pNtQueryObject) return 0;
 
     status = pNtQueryObject(obj, ObjectBasicInformation, &info, sizeof(info), NULL);
-    ok(!status, "NtQueryObject error %#x\n", status);
+    ok(!status, "NtQueryObject error %#lx\n", status);
 
     return info.GrantedAccess;
 }
@@ -5499,24 +5499,24 @@ static void test_mutex_security(HANDLE token)
     SetLastError(0xdeadbeef);
     mutex = OpenMutexA(0, FALSE, "WineTestMutex");
     ok(!mutex, "mutex should not exist\n");
-    ok(GetLastError() == ERROR_FILE_NOT_FOUND, "wrong error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_FILE_NOT_FOUND, "wrong error %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     mutex = CreateMutexA(NULL, FALSE, "WineTestMutex");
-    ok(mutex != 0, "CreateMutex error %d\n", GetLastError());
+    ok(mutex != 0, "CreateMutex error %ld\n", GetLastError());
 
     access = get_obj_access(mutex);
-    ok(access == MUTANT_ALL_ACCESS, "expected MUTANT_ALL_ACCESS, got %#x\n", access);
+    ok(access == MUTANT_ALL_ACCESS, "expected MUTANT_ALL_ACCESS, got %#lx\n", access);
 
     for (i = 0; i < ARRAY_SIZE(map); i++)
     {
         SetLastError( 0xdeadbeef );
         ret = DuplicateHandle(GetCurrentProcess(), mutex, GetCurrentProcess(), &dup,
                               map[i].generic, FALSE, 0);
-        ok(ret, "DuplicateHandle error %d\n", GetLastError());
+        ok(ret, "DuplicateHandle error %ld\n", GetLastError());
 
         access = get_obj_access(dup);
-        ok(access == map[i].mapped, "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+        ok(access == map[i].mapped, "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
 
         CloseHandle(dup);
 
@@ -5525,7 +5525,7 @@ static void test_mutex_security(HANDLE token)
         todo_wine
         ok(!dup, "OpenMutex should fail\n");
         todo_wine
-        ok(GetLastError() == ERROR_ACCESS_DENIED, "wrong error %u\n", GetLastError());
+        ok(GetLastError() == ERROR_ACCESS_DENIED, "wrong error %lu\n", GetLastError());
     }
 
     test_default_handle_security(token, mutex, &mapping);
@@ -5556,24 +5556,24 @@ static void test_event_security(HANDLE token)
     SetLastError(0xdeadbeef);
     event = OpenEventA(0, FALSE, "WineTestEvent");
     ok(!event, "event should not exist\n");
-    ok(GetLastError() == ERROR_FILE_NOT_FOUND, "wrong error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_FILE_NOT_FOUND, "wrong error %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     event = CreateEventA(NULL, FALSE, FALSE, "WineTestEvent");
-    ok(event != 0, "CreateEvent error %d\n", GetLastError());
+    ok(event != 0, "CreateEvent error %ld\n", GetLastError());
 
     access = get_obj_access(event);
-    ok(access == EVENT_ALL_ACCESS, "expected EVENT_ALL_ACCESS, got %#x\n", access);
+    ok(access == EVENT_ALL_ACCESS, "expected EVENT_ALL_ACCESS, got %#lx\n", access);
 
     for (i = 0; i < ARRAY_SIZE(map); i++)
     {
         SetLastError( 0xdeadbeef );
         ret = DuplicateHandle(GetCurrentProcess(), event, GetCurrentProcess(), &dup,
                               map[i].generic, FALSE, 0);
-        ok(ret, "DuplicateHandle error %d\n", GetLastError());
+        ok(ret, "DuplicateHandle error %ld\n", GetLastError());
 
         access = get_obj_access(dup);
-        ok(access == map[i].mapped, "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+        ok(access == map[i].mapped, "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
 
         CloseHandle(dup);
 
@@ -5582,7 +5582,7 @@ static void test_event_security(HANDLE token)
         todo_wine
         ok(!dup, "OpenEvent should fail\n");
         todo_wine
-        ok(GetLastError() == ERROR_ACCESS_DENIED, "wrong error %u\n", GetLastError());
+        ok(GetLastError() == ERROR_ACCESS_DENIED, "wrong error %lu\n", GetLastError());
     }
 
     test_default_handle_security(token, event, &mapping);
@@ -5613,24 +5613,24 @@ static void test_semaphore_security(HANDLE token)
     SetLastError(0xdeadbeef);
     sem = OpenSemaphoreA(0, FALSE, "WineTestSemaphore");
     ok(!sem, "semaphore should not exist\n");
-    ok(GetLastError() == ERROR_FILE_NOT_FOUND, "wrong error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_FILE_NOT_FOUND, "wrong error %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     sem = CreateSemaphoreA(NULL, 0, 10, "WineTestSemaphore");
-    ok(sem != 0, "CreateSemaphore error %d\n", GetLastError());
+    ok(sem != 0, "CreateSemaphore error %ld\n", GetLastError());
 
     access = get_obj_access(sem);
-    ok(access == SEMAPHORE_ALL_ACCESS, "expected SEMAPHORE_ALL_ACCESS, got %#x\n", access);
+    ok(access == SEMAPHORE_ALL_ACCESS, "expected SEMAPHORE_ALL_ACCESS, got %#lx\n", access);
 
     for (i = 0; i < ARRAY_SIZE(map); i++)
     {
         SetLastError( 0xdeadbeef );
         ret = DuplicateHandle(GetCurrentProcess(), sem, GetCurrentProcess(), &dup,
                               map[i].generic, FALSE, 0);
-        ok(ret, "DuplicateHandle error %d\n", GetLastError());
+        ok(ret, "DuplicateHandle error %ld\n", GetLastError());
 
         access = get_obj_access(dup);
-        ok(access == map[i].mapped, "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+        ok(access == map[i].mapped, "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
 
         CloseHandle(dup);
     }
@@ -5681,11 +5681,11 @@ static void test_named_pipe_security(HANDLE token)
         pipe = CreateNamedPipeA(WINE_TEST_PIPE, creation_access[i].open_mode,
                                 PIPE_TYPE_BYTE | PIPE_NOWAIT, PIPE_UNLIMITED_INSTANCES, 0, 0,
                                 NMPWAIT_USE_DEFAULT_WAIT, NULL);
-        ok(pipe != INVALID_HANDLE_VALUE, "CreateNamedPipe(0x%x) error %d\n",
+        ok(pipe != INVALID_HANDLE_VALUE, "CreateNamedPipe(0x%lx) error %ld\n",
                                          creation_access[i].open_mode, GetLastError());
         access = get_obj_access(pipe);
         ok(access == creation_access[i].access,
-           "CreateNamedPipeA(0x%x) pipe expected access 0x%x (got 0x%x)\n",
+           "CreateNamedPipeA(0x%lx) pipe expected access 0x%lx (got 0x%lx)\n",
            creation_access[i].open_mode, creation_access[i].access, access);
         CloseHandle(pipe);
     }
@@ -5694,26 +5694,26 @@ static void test_named_pipe_security(HANDLE token)
     pipe = CreateNamedPipeA(WINE_TEST_PIPE, PIPE_ACCESS_DUPLEX | FILE_FLAG_FIRST_PIPE_INSTANCE,
                             PIPE_TYPE_BYTE | PIPE_NOWAIT, PIPE_UNLIMITED_INSTANCES,
                             0, 0, NMPWAIT_USE_DEFAULT_WAIT, NULL);
-    ok(pipe != INVALID_HANDLE_VALUE, "CreateNamedPipe error %d\n", GetLastError());
+    ok(pipe != INVALID_HANDLE_VALUE, "CreateNamedPipe error %ld\n", GetLastError());
 
     test_default_handle_security(token, pipe, &mapping);
 
     SetLastError(0xdeadbeef);
     file = CreateFileA(WINE_TEST_PIPE, FILE_ALL_ACCESS, 0, NULL, OPEN_EXISTING, 0, 0);
-    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
 
     access = get_obj_access(file);
-    ok(access == FILE_ALL_ACCESS, "expected FILE_ALL_ACCESS, got %#x\n", access);
+    ok(access == FILE_ALL_ACCESS, "expected FILE_ALL_ACCESS, got %#lx\n", access);
 
     for (i = 0; i < ARRAY_SIZE(map); i++)
     {
         SetLastError( 0xdeadbeef );
         ret = DuplicateHandle(GetCurrentProcess(), file, GetCurrentProcess(), &dup,
                               map[i].generic, FALSE, 0);
-        ok(ret, "DuplicateHandle error %d\n", GetLastError());
+        ok(ret, "DuplicateHandle error %ld\n", GetLastError());
 
         access = get_obj_access(dup);
-        ok(access == map[i].mapped, "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+        ok(access == map[i].mapped, "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
 
         CloseHandle(dup);
     }
@@ -5723,22 +5723,22 @@ static void test_named_pipe_security(HANDLE token)
 
     SetLastError(0xdeadbeef);
     file = CreateFileA("\\\\.\\pipe\\", FILE_ALL_ACCESS, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, 0);
-    ok(file != INVALID_HANDLE_VALUE || broken(file == INVALID_HANDLE_VALUE) /* before Vista */, "CreateFile error %d\n", GetLastError());
+    ok(file != INVALID_HANDLE_VALUE || broken(file == INVALID_HANDLE_VALUE) /* before Vista */, "CreateFile error %ld\n", GetLastError());
 
     if (file != INVALID_HANDLE_VALUE)
     {
         access = get_obj_access(file);
-        ok(access == FILE_ALL_ACCESS, "expected FILE_ALL_ACCESS, got %#x\n", access);
+        ok(access == FILE_ALL_ACCESS, "expected FILE_ALL_ACCESS, got %#lx\n", access);
 
         for (i = 0; i < ARRAY_SIZE(map); i++)
         {
             SetLastError( 0xdeadbeef );
             ret = DuplicateHandle(GetCurrentProcess(), file, GetCurrentProcess(), &dup,
                                   map[i].generic, FALSE, 0);
-            ok(ret, "DuplicateHandle error %d\n", GetLastError());
+            ok(ret, "DuplicateHandle error %ld\n", GetLastError());
 
             access = get_obj_access(dup);
-            ok(access == map[i].mapped, "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+            ok(access == map[i].mapped, "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
             CloseHandle(dup);
         }
     }
@@ -5771,20 +5771,20 @@ static void test_file_security(HANDLE token)
     /* file */
     SetLastError(0xdeadbeef);
     file = CreateFileA(file_name, GENERIC_ALL, 0, NULL, CREATE_ALWAYS, 0, NULL);
-    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
 
     access = get_obj_access(file);
-    ok(access == FILE_ALL_ACCESS, "expected FILE_ALL_ACCESS, got %#x\n", access);
+    ok(access == FILE_ALL_ACCESS, "expected FILE_ALL_ACCESS, got %#lx\n", access);
 
     for (i = 0; i < ARRAY_SIZE(map); i++)
     {
         SetLastError( 0xdeadbeef );
         ret = DuplicateHandle(GetCurrentProcess(), file, GetCurrentProcess(), &dup,
                               map[i].generic, FALSE, 0);
-        ok(ret, "DuplicateHandle error %d\n", GetLastError());
+        ok(ret, "DuplicateHandle error %ld\n", GetLastError());
 
         access = get_obj_access(dup);
-        ok(access == map[i].mapped, "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+        ok(access == map[i].mapped, "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
 
         CloseHandle(dup);
     }
@@ -5793,33 +5793,33 @@ static void test_file_security(HANDLE token)
 
     SetLastError(0xdeadbeef);
     file = CreateFileA(file_name, 0, 0, NULL, OPEN_EXISTING, 0, NULL);
-    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
 
     access = get_obj_access(file);
-    ok(access == (FILE_READ_ATTRIBUTES | SYNCHRONIZE), "expected FILE_READ_ATTRIBUTES | SYNCHRONIZE, got %#x\n", access);
+    ok(access == (FILE_READ_ATTRIBUTES | SYNCHRONIZE), "expected FILE_READ_ATTRIBUTES | SYNCHRONIZE, got %#lx\n", access);
 
     bytes = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     ret = ReadFile(file, buf, sizeof(buf), &bytes, NULL);
     ok(!ret, "ReadFile should fail\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
-    ok(bytes == 0, "expected 0, got %u\n", bytes);
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
+    ok(bytes == 0, "expected 0, got %lu\n", bytes);
 
     CloseHandle(file);
 
     SetLastError(0xdeadbeef);
     file = CreateFileA(file_name, GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, 0);
-    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
 
     access = get_obj_access(file);
-    ok(access == (FILE_GENERIC_WRITE | FILE_READ_ATTRIBUTES), "expected FILE_GENERIC_WRITE | FILE_READ_ATTRIBUTES, got %#x\n", access);
+    ok(access == (FILE_GENERIC_WRITE | FILE_READ_ATTRIBUTES), "expected FILE_GENERIC_WRITE | FILE_READ_ATTRIBUTES, got %#lx\n", access);
 
     bytes = 0xdeadbeef;
     SetLastError(0xdeadbeef);
     ret = ReadFile(file, buf, sizeof(buf), &bytes, NULL);
     ok(!ret, "ReadFile should fail\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
-    ok(bytes == 0, "expected 0, got %u\n", bytes);
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
+    ok(bytes == 0, "expected 0, got %lu\n", bytes);
 
     CloseHandle(file);
     DeleteFileA(file_name);
@@ -5827,20 +5827,20 @@ static void test_file_security(HANDLE token)
     /* directory */
     SetLastError(0xdeadbeef);
     file = CreateFileA(temp_path, GENERIC_ALL, 0, NULL, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0);
-    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
 
     access = get_obj_access(file);
-    ok(access == FILE_ALL_ACCESS, "expected FILE_ALL_ACCESS, got %#x\n", access);
+    ok(access == FILE_ALL_ACCESS, "expected FILE_ALL_ACCESS, got %#lx\n", access);
 
     for (i = 0; i < ARRAY_SIZE(map); i++)
     {
         SetLastError( 0xdeadbeef );
         ret = DuplicateHandle(GetCurrentProcess(), file, GetCurrentProcess(), &dup,
                               map[i].generic, FALSE, 0);
-        ok(ret, "DuplicateHandle error %d\n", GetLastError());
+        ok(ret, "DuplicateHandle error %ld\n", GetLastError());
 
         access = get_obj_access(dup);
-        ok(access == map[i].mapped, "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+        ok(access == map[i].mapped, "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
 
         CloseHandle(dup);
     }
@@ -5849,19 +5849,19 @@ static void test_file_security(HANDLE token)
 
     SetLastError(0xdeadbeef);
     file = CreateFileA(temp_path, 0, 0, NULL, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0);
-    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
 
     access = get_obj_access(file);
-    ok(access == (FILE_READ_ATTRIBUTES | SYNCHRONIZE), "expected FILE_READ_ATTRIBUTES | SYNCHRONIZE, got %#x\n", access);
+    ok(access == (FILE_READ_ATTRIBUTES | SYNCHRONIZE), "expected FILE_READ_ATTRIBUTES | SYNCHRONIZE, got %#lx\n", access);
 
     CloseHandle(file);
 
     SetLastError(0xdeadbeef);
     file = CreateFileA(temp_path, GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0);
-    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
 
     access = get_obj_access(file);
-    ok(access == (FILE_GENERIC_WRITE | FILE_READ_ATTRIBUTES), "expected FILE_GENERIC_WRITE | FILE_READ_ATTRIBUTES, got %#x\n", access);
+    ok(access == (FILE_GENERIC_WRITE | FILE_READ_ATTRIBUTES), "expected FILE_GENERIC_WRITE | FILE_READ_ATTRIBUTES, got %#lx\n", access);
 
     CloseHandle(file);
 }
@@ -5910,7 +5910,7 @@ static void test_filemap_security(void)
 
     SetLastError(0xdeadbeef);
     file = CreateFileA(file_name, GENERIC_READ|GENERIC_WRITE|GENERIC_EXECUTE, 0, NULL, CREATE_ALWAYS, 0, 0);
-    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+    ok(file != INVALID_HANDLE_VALUE, "CreateFile error %ld\n", GetLastError());
     SetFilePointer(file, 4096, NULL, FILE_BEGIN);
     SetEndOfFile(file);
 
@@ -5931,17 +5931,17 @@ static void test_filemap_security(void)
                     continue;
                 }
             }
-            ok(mapping != 0, "CreateFileMapping(%04x) error %d\n", prot_map[i].prot, GetLastError());
+            ok(mapping != 0, "CreateFileMapping(%04x) error %ld\n", prot_map[i].prot, GetLastError());
         }
         else
         {
             ok(!mapping, "CreateFileMapping(%04x) should fail\n", prot_map[i].prot);
-            ok(GetLastError() == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+            ok(GetLastError() == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
             continue;
         }
 
         access = get_obj_access(mapping);
-        ok(access == prot_map[i].mapped, "%d: expected %#x, got %#x\n", i, prot_map[i].mapped, access);
+        ok(access == prot_map[i].mapped, "%ld: expected %#x, got %#lx\n", i, prot_map[i].mapped, access);
 
         CloseHandle(mapping);
     }
@@ -5956,11 +5956,11 @@ static void test_filemap_security(void)
         DeleteFileA(file_name);
         return;
     }
-    ok(mapping != 0, "CreateFileMapping error %d\n", GetLastError());
+    ok(mapping != 0, "CreateFileMapping error %ld\n", GetLastError());
 
     access = get_obj_access(mapping);
     ok(access == (STANDARD_RIGHTS_REQUIRED | SECTION_QUERY | SECTION_MAP_READ | SECTION_MAP_WRITE | SECTION_MAP_EXECUTE),
-       "expected STANDARD_RIGHTS_REQUIRED | SECTION_QUERY | SECTION_MAP_READ | SECTION_MAP_WRITE | SECTION_MAP_EXECUTE, got %#x\n", access);
+       "expected STANDARD_RIGHTS_REQUIRED | SECTION_QUERY | SECTION_MAP_READ | SECTION_MAP_WRITE | SECTION_MAP_EXECUTE, got %#lx\n", access);
 
     for (i = 0; i < ARRAY_SIZE(map); i++)
     {
@@ -5969,10 +5969,10 @@ static void test_filemap_security(void)
         SetLastError( 0xdeadbeef );
         ret = DuplicateHandle(GetCurrentProcess(), mapping, GetCurrentProcess(), &dup,
                               map[i].generic, FALSE, 0);
-        ok(ret, "DuplicateHandle error %d\n", GetLastError());
+        ok(ret, "DuplicateHandle error %ld\n", GetLastError());
 
         access = get_obj_access(dup);
-        ok(access == map[i].mapped, "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+        ok(access == map[i].mapped, "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
 
         CloseHandle(dup);
     }
@@ -5983,16 +5983,16 @@ static void test_filemap_security(void)
 
     created_mapping = CreateFileMappingA(INVALID_HANDLE_VALUE, NULL, PAGE_READWRITE, 0, 0x1000,
                                          "Wine Test Open Mapping");
-    ok(created_mapping != NULL, "CreateFileMapping failed with error %u\n", GetLastError());
+    ok(created_mapping != NULL, "CreateFileMapping failed with error %lu\n", GetLastError());
 
     for (i = 0; i < ARRAY_SIZE(map); i++)
     {
         if (!map[i].generic) continue;
 
         mapping = OpenFileMappingA(map[i].generic, FALSE, "Wine Test Open Mapping");
-        ok(mapping != NULL, "OpenFileMapping failed with error %d\n", GetLastError());
+        ok(mapping != NULL, "OpenFileMapping failed with error %ld\n", GetLastError());
         access = get_obj_access(mapping);
-        ok(access == map[i].mapped, "%d: unexpected access flags %#x, expected %#x\n",
+        ok(access == map[i].mapped, "%ld: unexpected access flags %#lx, expected %#x\n",
            i, access, map[i].mapped);
         CloseHandle(mapping);
     }
@@ -6018,17 +6018,17 @@ static void test_thread_security(void)
 
     SetLastError(0xdeadbeef);
     thread = CreateThread(NULL, 0, (void *)0xdeadbeef, NULL, CREATE_SUSPENDED, &ret);
-    ok(thread != 0, "CreateThread error %d\n", GetLastError());
+    ok(thread != 0, "CreateThread error %ld\n", GetLastError());
 
     access = get_obj_access(thread);
-    ok(access == THREAD_ALL_ACCESS_NT4 || access == THREAD_ALL_ACCESS_VISTA, "expected THREAD_ALL_ACCESS, got %#x\n", access);
+    ok(access == THREAD_ALL_ACCESS_NT4 || access == THREAD_ALL_ACCESS_VISTA, "expected THREAD_ALL_ACCESS, got %#lx\n", access);
 
     for (i = 0; i < ARRAY_SIZE(map); i++)
     {
         SetLastError( 0xdeadbeef );
         ret = DuplicateHandle(GetCurrentProcess(), thread, GetCurrentProcess(), &dup,
                               map[i].generic, FALSE, 0);
-        ok(ret, "DuplicateHandle error %d\n", GetLastError());
+        ok(ret, "DuplicateHandle error %ld\n", GetLastError());
 
         access = get_obj_access(dup);
         switch (map[i].generic)
@@ -6038,20 +6038,20 @@ static void test_thread_security(void)
             ok(access == map[i].mapped ||
                access == (map[i].mapped | THREAD_QUERY_LIMITED_INFORMATION) /* Vista+ */ ||
                access == (map[i].mapped | THREAD_QUERY_LIMITED_INFORMATION | THREAD_RESUME) /* win8 */,
-               "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+               "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
             break;
         case GENERIC_WRITE:
             ok(access == map[i].mapped ||
                access == (map[i].mapped | THREAD_SET_LIMITED_INFORMATION) /* Vista+ */ ||
                access == (map[i].mapped | THREAD_SET_LIMITED_INFORMATION | THREAD_RESUME) /* win8 */,
-               "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+               "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
             break;
         case GENERIC_ALL:
             ok(access == map[i].mapped || access == THREAD_ALL_ACCESS_VISTA,
-               "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+               "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
             break;
         default:
-            ok(access == map[i].mapped, "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+            ok(access == map[i].mapped, "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
             break;
         }
 
@@ -6061,11 +6061,11 @@ static void test_thread_security(void)
     SetLastError( 0xdeadbeef );
     ret = DuplicateHandle(GetCurrentProcess(), thread, GetCurrentProcess(), &dup,
                           THREAD_QUERY_INFORMATION, FALSE, 0);
-    ok(ret, "DuplicateHandle error %d\n", GetLastError());
+    ok(ret, "DuplicateHandle error %ld\n", GetLastError());
     access = get_obj_access(dup);
     ok(access == (THREAD_QUERY_INFORMATION | THREAD_QUERY_LIMITED_INFORMATION) /* Vista+ */ ||
        access == THREAD_QUERY_INFORMATION /* before Vista */,
-       "expected THREAD_QUERY_INFORMATION|THREAD_QUERY_LIMITED_INFORMATION, got %#x\n", access);
+       "expected THREAD_QUERY_INFORMATION|THREAD_QUERY_LIMITED_INFORMATION, got %#lx\n", access);
     CloseHandle(dup);
 
     TerminateThread(thread, 0);
@@ -6096,45 +6096,45 @@ static void test_process_access(void)
     sti.cb = sizeof(sti);
     SetLastError(0xdeadbeef);
     ret = CreateProcessA(NULL, cmdline, NULL, NULL, FALSE, CREATE_SUSPENDED, NULL, NULL, &sti, &pi);
-    ok(ret, "CreateProcess() error %d\n", GetLastError());
+    ok(ret, "CreateProcess() error %ld\n", GetLastError());
 
     CloseHandle(pi.hThread);
     process = pi.hProcess;
 
     access = get_obj_access(process);
-    ok(access == PROCESS_ALL_ACCESS_NT4 || access == PROCESS_ALL_ACCESS_VISTA, "expected PROCESS_ALL_ACCESS, got %#x\n", access);
+    ok(access == PROCESS_ALL_ACCESS_NT4 || access == PROCESS_ALL_ACCESS_VISTA, "expected PROCESS_ALL_ACCESS, got %#lx\n", access);
 
     for (i = 0; i < ARRAY_SIZE(map); i++)
     {
         SetLastError( 0xdeadbeef );
         ret = DuplicateHandle(GetCurrentProcess(), process, GetCurrentProcess(), &dup,
                               map[i].generic, FALSE, 0);
-        ok(ret, "DuplicateHandle error %d\n", GetLastError());
+        ok(ret, "DuplicateHandle error %ld\n", GetLastError());
 
         access = get_obj_access(dup);
         switch (map[i].generic)
         {
         case GENERIC_READ:
             ok(access == map[i].mapped || access == (map[i].mapped | PROCESS_QUERY_LIMITED_INFORMATION) /* Vista+ */,
-               "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+               "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
             break;
         case GENERIC_WRITE:
             ok(access == map[i].mapped ||
                access == (map[i].mapped | PROCESS_TERMINATE) /* before Vista */ ||
                access == (map[i].mapped | PROCESS_SET_LIMITED_INFORMATION) /* win8 */ ||
                access == (map[i].mapped | PROCESS_QUERY_LIMITED_INFORMATION | PROCESS_SET_LIMITED_INFORMATION) /* Win10 Anniversary Update */,
-               "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+               "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
             break;
         case GENERIC_EXECUTE:
             ok(access == map[i].mapped || access == (map[i].mapped | PROCESS_QUERY_LIMITED_INFORMATION | PROCESS_TERMINATE) /* Vista+ */,
-               "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+               "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
             break;
         case GENERIC_ALL:
             ok(access == map[i].mapped || access == PROCESS_ALL_ACCESS_VISTA,
-               "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+               "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
             break;
         default:
-            ok(access == map[i].mapped, "%d: expected %#x, got %#x\n", i, map[i].mapped, access);
+            ok(access == map[i].mapped, "%ld: expected %#x, got %#lx\n", i, map[i].mapped, access);
             break;
         }
 
@@ -6144,11 +6144,11 @@ static void test_process_access(void)
     SetLastError( 0xdeadbeef );
     ret = DuplicateHandle(GetCurrentProcess(), process, GetCurrentProcess(), &dup,
                           PROCESS_QUERY_INFORMATION, FALSE, 0);
-    ok(ret, "DuplicateHandle error %d\n", GetLastError());
+    ok(ret, "DuplicateHandle error %ld\n", GetLastError());
     access = get_obj_access(dup);
     ok(access == (PROCESS_QUERY_INFORMATION | PROCESS_QUERY_LIMITED_INFORMATION) /* Vista+ */ ||
        access == PROCESS_QUERY_INFORMATION /* before Vista */,
-       "expected PROCESS_QUERY_INFORMATION|PROCESS_QUERY_LIMITED_INFORMATION, got %#x\n", access);
+       "expected PROCESS_QUERY_INFORMATION|PROCESS_QUERY_LIMITED_INFORMATION, got %#lx\n", access);
     CloseHandle(dup);
 
     TerminateProcess(process, 0);
@@ -6165,7 +6165,7 @@ static BOOL validate_impersonation_token(HANDLE token, DWORD *token_type)
     needed = 0;
     SetLastError(0xdeadbeef);
     ret = GetTokenInformation(token, TokenType, &type, sizeof(type), &needed);
-    ok(ret, "GetTokenInformation error %d\n", GetLastError());
+    ok(ret, "GetTokenInformation error %ld\n", GetLastError());
     ok(needed == sizeof(type), "GetTokenInformation should return required buffer length\n");
     ok(type == TokenPrimary || type == TokenImpersonation, "expected TokenPrimary or TokenImpersonation, got %d\n", type);
 
@@ -6175,7 +6175,7 @@ static BOOL validate_impersonation_token(HANDLE token, DWORD *token_type)
     needed = 0;
     SetLastError(0xdeadbeef);
     ret = GetTokenInformation(token, TokenImpersonationLevel, &sil, sizeof(sil), &needed);
-    ok(ret, "GetTokenInformation error %d\n", GetLastError());
+    ok(ret, "GetTokenInformation error %ld\n", GetLastError());
     ok(needed == sizeof(sil), "GetTokenInformation should return required buffer length\n");
     ok(sil == SecurityImpersonation, "expected SecurityImpersonation, got %d\n", sil);
 
@@ -6183,7 +6183,7 @@ static BOOL validate_impersonation_token(HANDLE token, DWORD *token_type)
     SetLastError(0xdeadbeef);
     ret = GetTokenInformation(token, TokenDefaultDacl, NULL, 0, &needed);
     ok(!ret, "GetTokenInformation should fail\n");
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
     ok(needed != 0xdeadbeef, "GetTokenInformation should return required buffer length\n");
     ok(needed > sizeof(TOKEN_DEFAULT_DACL), "GetTokenInformation returned empty default DACL\n");
 
@@ -6191,7 +6191,7 @@ static BOOL validate_impersonation_token(HANDLE token, DWORD *token_type)
     SetLastError(0xdeadbeef);
     ret = GetTokenInformation(token, TokenOwner, NULL, 0, &needed);
     ok(!ret, "GetTokenInformation should fail\n");
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
     ok(needed != 0xdeadbeef, "GetTokenInformation should return required buffer length\n");
     ok(needed > sizeof(TOKEN_OWNER), "GetTokenInformation returned empty token owner\n");
 
@@ -6199,7 +6199,7 @@ static BOOL validate_impersonation_token(HANDLE token, DWORD *token_type)
     SetLastError(0xdeadbeef);
     ret = GetTokenInformation(token, TokenPrimaryGroup, NULL, 0, &needed);
     ok(!ret, "GetTokenInformation should fail\n");
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
     ok(needed != 0xdeadbeef, "GetTokenInformation should return required buffer length\n");
     ok(needed > sizeof(TOKEN_PRIMARY_GROUP), "GetTokenInformation returned empty token primary group\n");
 
@@ -6212,18 +6212,18 @@ static void test_kernel_objects_security(void)
     DWORD ret, token_type;
 
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_DUPLICATE | TOKEN_QUERY, &process_token);
-    ok(ret, "OpenProcessToken error %d\n", GetLastError());
+    ok(ret, "OpenProcessToken error %ld\n", GetLastError());
 
     ret = validate_impersonation_token(process_token, &token_type);
-    ok(token_type == TokenPrimary, "expected TokenPrimary, got %d\n", token_type);
+    ok(token_type == TokenPrimary, "expected TokenPrimary, got %ld\n", token_type);
     ok(!ret, "access token should not be an impersonation token\n");
 
     ret = DuplicateToken(process_token, SecurityImpersonation, &token);
-    ok(ret, "DuplicateToken error %d\n", GetLastError());
+    ok(ret, "DuplicateToken error %ld\n", GetLastError());
 
     ret = validate_impersonation_token(token, &token_type);
     ok(ret, "access token should be a valid impersonation token\n");
-    ok(token_type == TokenImpersonation, "expected TokenImpersonation, got %d\n", token_type);
+    ok(token_type == TokenImpersonation, "expected TokenImpersonation, got %ld\n", token_type);
 
     test_mutex_security(token);
     test_event_security(token);
@@ -6253,7 +6253,7 @@ static void test_TokenIntegrityLevel(void)
 
     SetLastError(0xdeadbeef);
     res = OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &token);
-    ok(res, "got %d with %d (expected TRUE)\n", res, GetLastError());
+    ok(res, "got %ld with %ld (expected TRUE)\n", res, GetLastError());
 
     SetLastError(0xdeadbeef);
     res = GetTokenInformation(token, TokenIntegrityLevel, buffer, sizeof(buffer), &size);
@@ -6266,7 +6266,7 @@ static void test_TokenIntegrityLevel(void)
         return;
     }
 
-    ok(res, "got %u with %u (expected TRUE)\n", res, GetLastError());
+    ok(res, "got %lu with %lu (expected TRUE)\n", res, GetLastError());
     if (!res)
     {
         CloseHandle(token);
@@ -6275,7 +6275,7 @@ static void test_TokenIntegrityLevel(void)
 
     tml = (TOKEN_MANDATORY_LABEL*) buffer;
     ok(tml->Label.Attributes == (SE_GROUP_INTEGRITY | SE_GROUP_INTEGRITY_ENABLED),
-        "got 0x%x (expected 0x%x)\n", tml->Label.Attributes, (SE_GROUP_INTEGRITY | SE_GROUP_INTEGRITY_ENABLED));
+        "got 0x%lx (expected 0x%x)\n", tml->Label.Attributes, (SE_GROUP_INTEGRITY | SE_GROUP_INTEGRITY_ENABLED));
 
     ok(EqualSid(tml->Label.Sid, &medium_level) || EqualSid(tml->Label.Sid, &high_level),
        "got %s (expected %s or %s)\n", debugstr_sid(tml->Label.Sid),
@@ -6297,26 +6297,26 @@ static void test_default_dacl_owner_sid(void)
 
     sd = HeapAlloc( GetProcessHeap(), 0, SECURITY_DESCRIPTOR_MIN_LENGTH );
     ret = InitializeSecurityDescriptor( sd, SECURITY_DESCRIPTOR_REVISION );
-    ok( ret, "error %u\n", GetLastError() );
+    ok( ret, "error %lu\n", GetLastError() );
 
     sa.nLength              = sizeof(SECURITY_ATTRIBUTES);
     sa.lpSecurityDescriptor = sd;
     sa.bInheritHandle       = FALSE;
     handle = CreateEventA( &sa, TRUE, TRUE, "test_event" );
-    ok( handle != NULL, "error %u\n", GetLastError() );
+    ok( handle != NULL, "error %lu\n", GetLastError() );
 
     size = 0;
     ret = GetKernelObjectSecurity( handle, OWNER_SECURITY_INFORMATION|DACL_SECURITY_INFORMATION, NULL, 0, &size );
-    ok( !ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "error %u\n", GetLastError() );
+    ok( !ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "error %lu\n", GetLastError() );
 
     sd = HeapAlloc( GetProcessHeap(), 0, size );
     ret = GetKernelObjectSecurity( handle, OWNER_SECURITY_INFORMATION|DACL_SECURITY_INFORMATION, sd, size, &size );
-    ok( ret, "error %u\n", GetLastError() );
+    ok( ret, "error %lu\n", GetLastError() );
 
     owner = (void *)0xdeadbeef;
     defaulted = TRUE;
     ret = GetSecurityDescriptorOwner( sd, &owner, &defaulted );
-    ok( ret, "error %u\n", GetLastError() );
+    ok( ret, "error %lu\n", GetLastError() );
     ok( owner != (void *)0xdeadbeef, "owner not set\n" );
     ok( !defaulted, "owner defaulted\n" );
 
@@ -6324,7 +6324,7 @@ static void test_default_dacl_owner_sid(void)
     present = FALSE;
     defaulted = TRUE;
     ret = GetSecurityDescriptorDacl( sd, &present, &dacl, &defaulted );
-    ok( ret, "error %u\n", GetLastError() );
+    ok( ret, "error %lu\n", GetLastError() );
     ok( present, "dacl not present\n" );
     ok( dacl != (void *)0xdeadbeef, "dacl not set\n" );
     ok( !defaulted, "dacl defaulted\n" );
@@ -6366,7 +6366,7 @@ static void test_AdjustTokenPrivileges(void)
     len = 0xdeadbeef;
     ret = AdjustTokenPrivileges(token, FALSE, &tp, sizeof(TOKEN_PRIVILEGES), NULL, &len);
     ok(ret, "got %d\n", ret);
-    ok(len == 0xdeadbeef, "got length %d\n", len);
+    ok(len == 0xdeadbeef, "got length %ld\n", len);
 
     /* revert */
     tp.PrivilegeCount = 1;
@@ -6393,34 +6393,34 @@ static void test_AddAce(void)
     memcpy(&ace->SidStart, &sidWorld, sizeof(sidWorld));
 
     ret = InitializeAcl(acl, sizeof(acl_buf), ACL_REVISION2);
-    ok(ret, "InitializeAcl failed: %d\n", GetLastError());
+    ok(ret, "InitializeAcl failed: %ld\n", GetLastError());
 
     ret = AddAce(acl, ACL_REVISION1, MAXDWORD, ace, ace->Header.AceSize);
-    ok(ret, "AddAce failed: %d\n", GetLastError());
+    ok(ret, "AddAce failed: %ld\n", GetLastError());
     ret = AddAce(acl, ACL_REVISION2, MAXDWORD, ace, ace->Header.AceSize);
-    ok(ret, "AddAce failed: %d\n", GetLastError());
+    ok(ret, "AddAce failed: %ld\n", GetLastError());
     ret = AddAce(acl, ACL_REVISION3, MAXDWORD, ace, ace->Header.AceSize);
-    ok(ret, "AddAce failed: %d\n", GetLastError());
+    ok(ret, "AddAce failed: %ld\n", GetLastError());
     ok(acl->AclRevision == ACL_REVISION3, "acl->AclRevision = %d\n", acl->AclRevision);
     ret = AddAce(acl, ACL_REVISION4, MAXDWORD, ace, ace->Header.AceSize);
-    ok(ret, "AddAce failed: %d\n", GetLastError());
+    ok(ret, "AddAce failed: %ld\n", GetLastError());
     ok(acl->AclRevision == ACL_REVISION4, "acl->AclRevision = %d\n", acl->AclRevision);
     ret = AddAce(acl, ACL_REVISION1, MAXDWORD, ace, ace->Header.AceSize);
-    ok(ret, "AddAce failed: %d\n", GetLastError());
+    ok(ret, "AddAce failed: %ld\n", GetLastError());
     ok(acl->AclRevision == ACL_REVISION4, "acl->AclRevision = %d\n", acl->AclRevision);
     ret = AddAce(acl, ACL_REVISION2, MAXDWORD, ace, ace->Header.AceSize);
-    ok(ret, "AddAce failed: %d\n", GetLastError());
+    ok(ret, "AddAce failed: %ld\n", GetLastError());
 
     ret = AddAce(acl, MIN_ACL_REVISION-1, MAXDWORD, ace, ace->Header.AceSize);
-    ok(ret, "AddAce failed: %d\n", GetLastError());
+    ok(ret, "AddAce failed: %ld\n", GetLastError());
     /* next test succeededs but corrupts ACL */
     ret = AddAce(acl, MAX_ACL_REVISION+1, MAXDWORD, ace, ace->Header.AceSize);
-    ok(ret, "AddAce failed: %d\n", GetLastError());
+    ok(ret, "AddAce failed: %ld\n", GetLastError());
     ok(acl->AclRevision == MAX_ACL_REVISION+1, "acl->AclRevision = %d\n", acl->AclRevision);
     SetLastError(0xdeadbeef);
     ret = AddAce(acl, ACL_REVISION1, MAXDWORD, ace, ace->Header.AceSize);
     ok(!ret, "AddAce succeeded\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "GetLastError() = %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "GetLastError() = %ld\n", GetLastError());
 }
 
 static void test_AddMandatoryAce(void)
@@ -6450,27 +6450,27 @@ static void test_AddMandatoryAce(void)
     }
 
     ret = InitializeSecurityDescriptor(sd, SECURITY_DESCRIPTOR_REVISION);
-    ok(ret, "InitializeSecurityDescriptor failed with error %u\n", GetLastError());
+    ok(ret, "InitializeSecurityDescriptor failed with error %lu\n", GetLastError());
 
     sa.nLength = sizeof(sa);
     sa.lpSecurityDescriptor = sd;
     sa.bInheritHandle = FALSE;
 
     handle = CreateEventA(&sa, TRUE, TRUE, "test_event");
-    ok(handle != NULL, "CreateEventA failed with error %u\n", GetLastError());
+    ok(handle != NULL, "CreateEventA failed with error %lu\n", GetLastError());
 
     ret = GetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Unexpected GetKernelObjectSecurity return value %u, error %u\n", ret, GetLastError());
+       "Unexpected GetKernelObjectSecurity return value %u, error %lu\n", ret, GetLastError());
 
     sd2 = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, sd2, size, &size);
-    ok(ret, "GetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "GetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     sacl = (void *)0xdeadbeef;
     present = TRUE;
     ret = GetSecurityDescriptorSacl(sd2, &present, &sacl, &defaulted);
-    ok(ret, "GetSecurityDescriptorSacl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorSacl failed with error %lu\n", GetLastError());
     ok(!present, "SACL is present\n");
     ok(sacl == (void *)0xdeadbeef, "SACL is set\n");
 
@@ -6479,128 +6479,128 @@ static void test_AddMandatoryAce(void)
 
     memset(buffer_acl, 0, sizeof(buffer_acl));
     ret = InitializeAcl(acl, 256, ACL_REVISION);
-    ok(ret, "InitializeAcl failed with %u\n", GetLastError());
+    ok(ret, "InitializeAcl failed with %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pAddMandatoryAce(acl, ACL_REVISION, 0, 0x1234, &low_level);
     ok(!ret, "AddMandatoryAce succeeded\n");
     ok(GetLastError() == ERROR_INVALID_PARAMETER,
-       "Expected ERROR_INVALID_PARAMETER got %u\n", GetLastError());
+       "Expected ERROR_INVALID_PARAMETER got %lu\n", GetLastError());
 
     ret = pAddMandatoryAce(acl, ACL_REVISION, 0, SYSTEM_MANDATORY_LABEL_NO_WRITE_UP, &low_level);
-    ok(ret, "AddMandatoryAce failed with %u\n", GetLastError());
+    ok(ret, "AddMandatoryAce failed with %lu\n", GetLastError());
 
     ret = GetAce(acl, 0, (void **)&ace);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ok(ace->Header.AceType == SYSTEM_MANDATORY_LABEL_ACE_TYPE, "got type %#x\n", ace->Header.AceType);
     ok(!ace->Header.AceFlags, "got flags %#x\n", ace->Header.AceFlags);
-    ok(ace->Mask == SYSTEM_MANDATORY_LABEL_NO_WRITE_UP, "got mask %#x\n", ace->Mask);
+    ok(ace->Mask == SYSTEM_MANDATORY_LABEL_NO_WRITE_UP, "got mask %#lx\n", ace->Mask);
     ok(EqualSid(&ace->SidStart, &low_level), "wrong sid\n");
 
     SetLastError(0xdeadbeef);
     ret = GetAce(acl, 1, (void **)&ace);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got error %lu\n", GetLastError());
 
     ret = SetSecurityDescriptorSacl(sd, TRUE, acl, FALSE);
-    ok(ret, "SetSecurityDescriptorSacl failed with error %u\n", GetLastError());
+    ok(ret, "SetSecurityDescriptorSacl failed with error %lu\n", GetLastError());
 
     handle = CreateEventA(&sa, TRUE, TRUE, "test_event");
-    ok(handle != NULL, "CreateEventA failed with error %u\n", GetLastError());
+    ok(handle != NULL, "CreateEventA failed with error %lu\n", GetLastError());
 
     ret = GetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Unexpected GetKernelObjectSecurity return value %u, error %u\n", ret, GetLastError());
+       "Unexpected GetKernelObjectSecurity return value %u, error %lu\n", ret, GetLastError());
 
     sd2 = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, sd2, size, &size);
-    ok(ret, "GetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "GetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     sacl = (void *)0xdeadbeef;
     present = FALSE;
     defaulted = TRUE;
     ret = GetSecurityDescriptorSacl(sd2, &present, &sacl, &defaulted);
-    ok(ret, "GetSecurityDescriptorSacl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorSacl failed with error %lu\n", GetLastError());
     ok(present, "SACL not present\n");
     ok(sacl != (void *)0xdeadbeef, "SACL not set\n");
     ok(!defaulted, "SACL defaulted\n");
     ret = GetAclInformation(sacl, &acl_size_info, sizeof(acl_size_info), AclSizeInformation);
-    ok(ret, "GetAclInformation failed with error %u\n", GetLastError());
-    ok(acl_size_info.AceCount == 1, "SACL contains an unexpected ACE count %u\n", acl_size_info.AceCount);
+    ok(ret, "GetAclInformation failed with error %lu\n", GetLastError());
+    ok(acl_size_info.AceCount == 1, "SACL contains an unexpected ACE count %lu\n", acl_size_info.AceCount);
 
     ret = GetAce(sacl, 0, (void **)&ace);
-    ok(ret, "GetAce failed with error %u\n", GetLastError());
+    ok(ret, "GetAce failed with error %lu\n", GetLastError());
     ok (ace->Header.AceType == SYSTEM_MANDATORY_LABEL_ACE_TYPE, "Unexpected ACE type %#x\n", ace->Header.AceType);
     ok(!ace->Header.AceFlags, "Unexpected ACE flags %#x\n", ace->Header.AceFlags);
-    ok(ace->Mask == SYSTEM_MANDATORY_LABEL_NO_WRITE_UP, "Unexpected ACE mask %#x\n", ace->Mask);
+    ok(ace->Mask == SYSTEM_MANDATORY_LABEL_NO_WRITE_UP, "Unexpected ACE mask %#lx\n", ace->Mask);
     ok(EqualSid(&ace->SidStart, &low_level), "Expected low integrity level\n");
 
     HeapFree(GetProcessHeap(), 0, sd2);
 
     ret = pAddMandatoryAce(acl, ACL_REVISION, 0, SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP, &medium_level);
-    ok(ret, "AddMandatoryAce failed with error %u\n", GetLastError());
+    ok(ret, "AddMandatoryAce failed with error %lu\n", GetLastError());
 
     ret = SetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, sd);
-    ok(ret, "SetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "SetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     ret = GetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Unexpected GetKernelObjectSecurity return value %u, error %u\n", ret, GetLastError());
+       "Unexpected GetKernelObjectSecurity return value %u, error %lu\n", ret, GetLastError());
 
     sd2 = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, sd2, size, &size);
-    ok(ret, "GetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "GetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     sacl = (void *)0xdeadbeef;
     present = FALSE;
     defaulted = TRUE;
     ret = GetSecurityDescriptorSacl(sd2, &present, &sacl, &defaulted);
-    ok(ret, "GetSecurityDescriptorSacl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorSacl failed with error %lu\n", GetLastError());
     ok(present, "SACL not present\n");
     ok(sacl != (void *)0xdeadbeef, "SACL not set\n");
     ok(sacl->AceCount == 2, "Expected 2 ACEs, got %d\n", sacl->AceCount);
     ok(!defaulted, "SACL defaulted\n");
 
     ret = GetAce(acl, 0, (void **)&ace);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ok(ace->Header.AceType == SYSTEM_MANDATORY_LABEL_ACE_TYPE, "got type %#x\n", ace->Header.AceType);
     ok(!ace->Header.AceFlags, "got flags %#x\n", ace->Header.AceFlags);
-    ok(ace->Mask == SYSTEM_MANDATORY_LABEL_NO_WRITE_UP, "got mask %#x\n", ace->Mask);
+    ok(ace->Mask == SYSTEM_MANDATORY_LABEL_NO_WRITE_UP, "got mask %#lx\n", ace->Mask);
     ok(EqualSid(&ace->SidStart, &low_level), "wrong sid\n");
 
     ret = GetAce(acl, 1, (void **)&ace);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ok(ace->Header.AceType == SYSTEM_MANDATORY_LABEL_ACE_TYPE, "got type %#x\n", ace->Header.AceType);
     ok(!ace->Header.AceFlags, "got flags %#x\n", ace->Header.AceFlags);
-    ok(ace->Mask == SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP, "got mask %#x\n", ace->Mask);
+    ok(ace->Mask == SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP, "got mask %#lx\n", ace->Mask);
     ok(EqualSid(&ace->SidStart, &medium_level), "wrong sid\n");
 
     SetLastError(0xdeadbeef);
     ret = GetAce(acl, 2, (void **)&ace);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got error %lu\n", GetLastError());
 
     HeapFree(GetProcessHeap(), 0, sd2);
 
     ret = SetSecurityDescriptorSacl(sd, FALSE, NULL, FALSE);
-    ok(ret, "SetSecurityDescriptorSacl failed with error %u\n", GetLastError());
+    ok(ret, "SetSecurityDescriptorSacl failed with error %lu\n", GetLastError());
 
     ret = SetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, sd);
-    ok(ret, "SetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "SetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     ret = GetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Unexpected GetKernelObjectSecurity return value %d, error %u\n", ret, GetLastError());
+       "Unexpected GetKernelObjectSecurity return value %d, error %lu\n", ret, GetLastError());
 
     sd2 = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, sd2, size, &size);
-    ok(ret, "GetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "GetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     sacl = (void *)0xdeadbeef;
     present = FALSE;
     defaulted = TRUE;
     ret = GetSecurityDescriptorSacl(sd2, &present, &sacl, &defaulted);
-    ok(ret, "GetSecurityDescriptorSacl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorSacl failed with error %lu\n", GetLastError());
     ok(present, "SACL not present\n");
     ok(sacl && sacl != (void *)0xdeadbeef, "SACL not set\n");
     ok(!defaulted, "SACL defaulted\n");
@@ -6609,30 +6609,30 @@ static void test_AddMandatoryAce(void)
     HeapFree(GetProcessHeap(), 0, sd2);
 
     ret = InitializeAcl(acl, 256, ACL_REVISION);
-    ok(ret, "InitializeAcl failed with error %u\n", GetLastError());
+    ok(ret, "InitializeAcl failed with error %lu\n", GetLastError());
 
     ret = pAddMandatoryAce(acl, ACL_REVISION3, 0, SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP, &medium_level);
-    ok(ret, "AddMandatoryAce failed with error %u\n", GetLastError());
+    ok(ret, "AddMandatoryAce failed with error %lu\n", GetLastError());
 
     ret = SetSecurityDescriptorSacl(sd, TRUE, acl, FALSE);
-    ok(ret, "SetSecurityDescriptorSacl failed with error %u\n", GetLastError());
+    ok(ret, "SetSecurityDescriptorSacl failed with error %lu\n", GetLastError());
 
     ret = SetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, sd);
-    ok(ret, "SetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "SetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     ret = GetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Unexpected GetKernelObjectSecurity return value %d, error %u\n", ret, GetLastError());
+       "Unexpected GetKernelObjectSecurity return value %d, error %lu\n", ret, GetLastError());
 
     sd2 = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, sd2, size, &size);
-    ok(ret, "GetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "GetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     sacl = (void *)0xdeadbeef;
     present = FALSE;
     defaulted = TRUE;
     ret = GetSecurityDescriptorSacl(sd2, &present, &sacl, &defaulted);
-    ok(ret, "GetSecurityDescriptorSacl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorSacl failed with error %lu\n", GetLastError());
     ok(present, "SACL not present\n");
     ok(sacl != (void *)0xdeadbeef, "SACL not set\n");
     ok(sacl->AclRevision == ACL_REVISION3, "Expected revision 3, got %d\n", sacl->AclRevision);
@@ -6641,33 +6641,33 @@ static void test_AddMandatoryAce(void)
     HeapFree(GetProcessHeap(), 0, sd2);
 
     ret = InitializeAcl(acl, 256, ACL_REVISION);
-    ok(ret, "InitializeAcl failed with error %u\n", GetLastError());
+    ok(ret, "InitializeAcl failed with error %lu\n", GetLastError());
 
     ret = AllocateAndInitializeSid(&sia_world, 1, SECURITY_WORLD_RID, 0, 0, 0, 0, 0, 0, 0, (void **)&everyone);
-    ok(ret, "AllocateAndInitializeSid failed with error %u\n", GetLastError());
+    ok(ret, "AllocateAndInitializeSid failed with error %lu\n", GetLastError());
 
     ret = AddAccessAllowedAce(acl, ACL_REVISION, KEY_READ, everyone);
-    ok(ret, "AddAccessAllowedAce failed with error %u\n", GetLastError());
+    ok(ret, "AddAccessAllowedAce failed with error %lu\n", GetLastError());
 
     ret = SetSecurityDescriptorSacl(sd, TRUE, acl, FALSE);
-    ok(ret, "SetSecurityDescriptorSacl failed with error %u\n", GetLastError());
+    ok(ret, "SetSecurityDescriptorSacl failed with error %lu\n", GetLastError());
 
     ret = SetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, sd);
-    ok(ret, "SetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "SetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     ret = GetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Unexpected GetKernelObjectSecurity return value %d, error %u\n", ret, GetLastError());
+       "Unexpected GetKernelObjectSecurity return value %d, error %lu\n", ret, GetLastError());
 
     sd2 = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetKernelObjectSecurity(handle, LABEL_SECURITY_INFORMATION, sd2, size, &size);
-    ok(ret, "GetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "GetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     sacl = (void *)0xdeadbeef;
     present = FALSE;
     defaulted = TRUE;
     ret = GetSecurityDescriptorSacl(sd2, &present, &sacl, &defaulted);
-    ok(ret, "GetSecurityDescriptorSacl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorSacl failed with error %lu\n", GetLastError());
     ok(present, "SACL not present\n");
     ok(sacl && sacl != (void *)0xdeadbeef, "SACL not set\n");
     ok(!defaulted, "SACL defaulted\n");
@@ -6707,7 +6707,7 @@ static void test_system_security_access(void)
         CloseHandle( token );
         return;
     }
-    todo_wine ok( res == ERROR_PRIVILEGE_NOT_HELD, "got %d\n", res );
+    todo_wine ok( res == ERROR_PRIVILEGE_NOT_HELD, "got %ld\n", res );
 
     priv.PrivilegeCount = 1;
     priv.Privileges[0].Luid = luid;
@@ -6715,7 +6715,7 @@ static void test_system_security_access(void)
 
     priv_prev = HeapAlloc( GetProcessHeap(), 0, len );
     ret = AdjustTokenPrivileges( token, FALSE, &priv, len, priv_prev, &len );
-    ok( ret, "got %u\n", GetLastError());
+    ok( ret, "got %lu\n", GetLastError());
 
     res = RegCreateKeyExW( HKEY_LOCAL_MACHINE, testkeyW, 0, NULL, 0, KEY_READ|ACCESS_SYSTEM_SECURITY, NULL, &hkey, NULL );
     if (res == ERROR_PRIVILEGE_NOT_HELD)
@@ -6725,16 +6725,16 @@ static void test_system_security_access(void)
         CloseHandle( token );
         return;
     }
-    ok( !res, "got %d\n", res );
+    ok( !res, "got %ld\n", res );
 
     /* restore privileges */
     ret = AdjustTokenPrivileges( token, FALSE, priv_prev, 0, NULL, NULL );
-    ok( ret, "got %u\n", GetLastError() );
+    ok( ret, "got %lu\n", GetLastError() );
     HeapFree( GetProcessHeap(), 0, priv_prev );
 
     /* privilege is checked on access */
     err = GetSecurityInfo( hkey, SE_REGISTRY_KEY, SACL_SECURITY_INFORMATION, NULL, NULL, NULL, &sacl, &sd );
-    todo_wine ok( err == ERROR_PRIVILEGE_NOT_HELD || err == ERROR_ACCESS_DENIED, "got %u\n", err );
+    todo_wine ok( err == ERROR_PRIVILEGE_NOT_HELD || err == ERROR_ACCESS_DENIED, "got %lu\n", err );
     if (err == ERROR_SUCCESS)
         LocalFree( sd );
 
@@ -6744,38 +6744,38 @@ static void test_system_security_access(void)
 
     priv_prev = HeapAlloc( GetProcessHeap(), 0, len );
     ret = AdjustTokenPrivileges( token, FALSE, &priv, len, priv_prev, &len );
-    ok( ret, "got %u\n", GetLastError());
+    ok( ret, "got %lu\n", GetLastError());
 
     err = GetSecurityInfo( hkey, SE_REGISTRY_KEY, SACL_SECURITY_INFORMATION, NULL, NULL, NULL, &sacl, &sd );
-    ok( err == ERROR_SUCCESS, "got %u\n", err );
+    ok( err == ERROR_SUCCESS, "got %lu\n", err );
     RegCloseKey( hkey );
     LocalFree( sd );
 
     /* handle created without ACCESS_SYSTEM_SECURITY, privilege held */
     res = RegCreateKeyExW( HKEY_LOCAL_MACHINE, testkeyW, 0, NULL, 0, KEY_READ, NULL, &hkey, NULL );
-    ok( res == ERROR_SUCCESS, "got %d\n", res );
+    ok( res == ERROR_SUCCESS, "got %ld\n", res );
 
     sd = NULL;
     err = GetSecurityInfo( hkey, SE_REGISTRY_KEY, SACL_SECURITY_INFORMATION, NULL, NULL, NULL, &sacl, &sd );
-    todo_wine ok( err == ERROR_SUCCESS, "got %u\n", err );
+    todo_wine ok( err == ERROR_SUCCESS, "got %lu\n", err );
     RegCloseKey( hkey );
     LocalFree( sd );
 
     /* restore privileges */
     ret = AdjustTokenPrivileges( token, FALSE, priv_prev, 0, NULL, NULL );
-    ok( ret, "got %u\n", GetLastError() );
+    ok( ret, "got %lu\n", GetLastError() );
     HeapFree( GetProcessHeap(), 0, priv_prev );
 
     /* handle created without ACCESS_SYSTEM_SECURITY, privilege not held */
     res = RegCreateKeyExW( HKEY_LOCAL_MACHINE, testkeyW, 0, NULL, 0, KEY_READ, NULL, &hkey, NULL );
-    ok( res == ERROR_SUCCESS, "got %d\n", res );
+    ok( res == ERROR_SUCCESS, "got %ld\n", res );
 
     err = GetSecurityInfo( hkey, SE_REGISTRY_KEY, SACL_SECURITY_INFORMATION, NULL, NULL, NULL, &sacl, &sd );
-    ok( err == ERROR_PRIVILEGE_NOT_HELD || err == ERROR_ACCESS_DENIED, "got %u\n", err );
+    ok( err == ERROR_PRIVILEGE_NOT_HELD || err == ERROR_ACCESS_DENIED, "got %lu\n", err );
     RegCloseKey( hkey );
 
     res = RegDeleteKeyW( HKEY_LOCAL_MACHINE, testkeyW );
-    ok( !res, "got %d\n", res );
+    ok( !res, "got %ld\n", res );
     CloseHandle( token );
 }
 
@@ -6810,46 +6810,46 @@ static void test_GetWindowsAccountDomainSid(void)
 
     bret = GetTokenInformation(token, TokenUser, NULL, 0, &sid_size);
     ok(!bret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "GetTokenInformation(TokenUser) failed with error %d\n", GetLastError());
+       "GetTokenInformation(TokenUser) failed with error %ld\n", GetLastError());
     user = HeapAlloc(GetProcessHeap(), 0, sid_size);
     bret = GetTokenInformation(token, TokenUser, user, sid_size, &sid_size);
-    ok(bret, "GetTokenInformation(TokenUser) failed with error %d\n", GetLastError());
+    ok(bret, "GetTokenInformation(TokenUser) failed with error %ld\n", GetLastError());
     CloseHandle(token);
     user_sid = ((TOKEN_USER *)user)->User.Sid;
 
     SetLastError(0xdeadbeef);
     bret = pGetWindowsAccountDomainSid(0, 0, 0);
     ok(!bret, "GetWindowsAccountDomainSid succeeded\n");
-    ok(GetLastError() == ERROR_INVALID_SID, "expected ERROR_INVALID_SID, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_SID, "expected ERROR_INVALID_SID, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     bret = pGetWindowsAccountDomainSid(user_sid, 0, 0);
     ok(!bret, "GetWindowsAccountDomainSid succeeded\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     sid_size = SECURITY_MAX_SID_SIZE;
     SetLastError(0xdeadbeef);
     bret = pGetWindowsAccountDomainSid(user_sid, 0, &sid_size);
     ok(!bret, "GetWindowsAccountDomainSid succeeded\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
-    ok(sid_size == GetSidLengthRequired(4), "expected size %d, got %d\n", GetSidLengthRequired(4), sid_size);
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
+    ok(sid_size == GetSidLengthRequired(4), "expected size %ld, got %ld\n", GetSidLengthRequired(4), sid_size);
 
     SetLastError(0xdeadbeef);
     bret = pGetWindowsAccountDomainSid(user_sid, domain_sid, 0);
     ok(!bret, "GetWindowsAccountDomainSid succeeded\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     sid_size = 1;
     SetLastError(0xdeadbeef);
     bret = pGetWindowsAccountDomainSid(user_sid, domain_sid, &sid_size);
     ok(!bret, "GetWindowsAccountDomainSid succeeded\n");
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
-    ok(sid_size == GetSidLengthRequired(4), "expected size %d, got %d\n", GetSidLengthRequired(4), sid_size);
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
+    ok(sid_size == GetSidLengthRequired(4), "expected size %ld, got %ld\n", GetSidLengthRequired(4), sid_size);
 
     sid_size = SECURITY_MAX_SID_SIZE;
     bret = pGetWindowsAccountDomainSid(user_sid, domain_sid, &sid_size);
-    ok(bret, "GetWindowsAccountDomainSid failed with error %d\n", GetLastError());
-    ok(sid_size == GetSidLengthRequired(4), "expected size %d, got %d\n", GetSidLengthRequired(4), sid_size);
+    ok(bret, "GetWindowsAccountDomainSid failed with error %ld\n", GetLastError());
+    ok(sid_size == GetSidLengthRequired(4), "expected size %ld, got %ld\n", GetSidLengthRequired(4), sid_size);
     InitializeSid(domain_sid2, &domain_ident, 4);
     for (i = 0; i < 4; i++)
         *GetSidSubAuthority(domain_sid2, i) = *GetSidSubAuthority(user_sid, i);
@@ -6879,12 +6879,12 @@ static void test_GetSidIdentifierAuthority(void)
     SetLastError(0xdeadbeef);
     id = GetSidIdentifierAuthority(authority_sid);
     ok(id != NULL, "got NULL pointer as identifier authority\n");
-    ok(GetLastError() == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %u\n", GetLastError());
+    ok(GetLastError() == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     id = GetSidIdentifierAuthority(NULL);
     ok(id != NULL, "got NULL pointer as identifier authority\n");
-    ok(GetLastError() == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %u\n", GetLastError());
+    ok(GetLastError() == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %lu\n", GetLastError());
 }
 
 static void test_pseudo_tokens(void)
@@ -6895,10 +6895,10 @@ static void test_pseudo_tokens(void)
     BOOL ret;
 
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &token);
-    ok(ret, "OpenProcessToken failed with error %u\n", GetLastError());
+    ok(ret, "OpenProcessToken failed with error %lu\n", GetLastError());
     memset(&statistics1, 0x11, sizeof(statistics1));
     ret = GetTokenInformation(token, TokenStatistics, &statistics1, sizeof(statistics1), &retlen);
-    ok(ret, "GetTokenInformation failed with %u\n", GetLastError());
+    ok(ret, "GetTokenInformation failed with %lu\n", GetLastError());
     CloseHandle(token);
 
     /* test GetCurrentProcessToken() */
@@ -6907,7 +6907,7 @@ static void test_pseudo_tokens(void)
     ret = GetTokenInformation(GetCurrentProcessToken(), TokenStatistics,
                               &statistics2, sizeof(statistics2), &retlen);
     ok(ret || broken(GetLastError() == ERROR_INVALID_HANDLE),
-       "GetTokenInformation failed with %u\n", GetLastError());
+       "GetTokenInformation failed with %lu\n", GetLastError());
     if (ret)
         ok(!memcmp(&statistics1, &statistics2, sizeof(statistics1)), "Token statistics do not match\n");
     else
@@ -6919,7 +6919,7 @@ static void test_pseudo_tokens(void)
     ret = GetTokenInformation(GetCurrentThreadEffectiveToken(), TokenStatistics,
                               &statistics2, sizeof(statistics2), &retlen);
     ok(ret || broken(GetLastError() == ERROR_INVALID_HANDLE),
-       "GetTokenInformation failed with %u\n", GetLastError());
+       "GetTokenInformation failed with %lu\n", GetLastError());
     if (ret)
         ok(!memcmp(&statistics1, &statistics2, sizeof(statistics1)), "Token statistics do not match\n");
     else
@@ -6928,14 +6928,14 @@ static void test_pseudo_tokens(void)
     SetLastError(0xdeadbeef);
     ret = OpenThreadToken(GetCurrentThread(), TOKEN_QUERY, TRUE, &token);
     ok(!ret, "OpenThreadToken should have failed\n");
-    ok(GetLastError() == ERROR_NO_TOKEN, "Expected ERROR_NO_TOKEN, got %u\n", GetLastError());
+    ok(GetLastError() == ERROR_NO_TOKEN, "Expected ERROR_NO_TOKEN, got %lu\n", GetLastError());
 
     /* test GetCurrentThreadToken() */
     SetLastError(0xdeadbeef);
     ret = GetTokenInformation(GetCurrentThreadToken(), TokenStatistics,
                               &statistics2, sizeof(statistics2), &retlen);
     todo_wine ok(GetLastError() == ERROR_NO_TOKEN || broken(GetLastError() == ERROR_INVALID_HANDLE),
-                 "Expected ERROR_NO_TOKEN, got %u\n", GetLastError());
+                 "Expected ERROR_NO_TOKEN, got %lu\n", GetLastError());
 }
 
 static void test_maximum_allowed(void)
@@ -6958,21 +6958,21 @@ static void test_maximum_allowed(void)
     }
 
     ret = InitializeSecurityDescriptor(sd, SECURITY_DESCRIPTOR_REVISION);
-    ok(ret, "InitializeSecurityDescriptor failed with %u\n", GetLastError());
+    ok(ret, "InitializeSecurityDescriptor failed with %lu\n", GetLastError());
     memset(buffer_acl, 0, sizeof(buffer_acl));
     ret = InitializeAcl(acl, 256, ACL_REVISION);
-    ok(ret, "InitializeAcl failed with %u\n", GetLastError());
+    ok(ret, "InitializeAcl failed with %lu\n", GetLastError());
     ret = SetSecurityDescriptorDacl(sd, TRUE, acl, FALSE);
-    ok(ret, "SetSecurityDescriptorDacl failed with %u\n", GetLastError());
+    ok(ret, "SetSecurityDescriptorDacl failed with %lu\n", GetLastError());
 
     sa.nLength              = sizeof(SECURITY_ATTRIBUTES);
     sa.lpSecurityDescriptor = sd;
     sa.bInheritHandle       = FALSE;
 
     handle = pCreateEventExA(&sa, NULL, 0, MAXIMUM_ALLOWED | 0x4);
-    ok(handle != NULL, "CreateEventExA failed with error %u\n", GetLastError());
+    ok(handle != NULL, "CreateEventExA failed with error %lu\n", GetLastError());
     mask = get_obj_access(handle);
-    ok(mask == EVENT_ALL_ACCESS, "Expected %x, got %x\n", EVENT_ALL_ACCESS, mask);
+    ok(mask == EVENT_ALL_ACCESS, "Expected %x, got %lx\n", EVENT_ALL_ACCESS, mask);
     CloseHandle(handle);
 }
 
@@ -6999,51 +6999,51 @@ static void test_token_label(void)
     }
 
     ret = OpenProcessToken(GetCurrentProcess(), READ_CONTROL | WRITE_OWNER, &token);
-    ok(ret, "OpenProcessToken failed with error %u\n", GetLastError());
+    ok(ret, "OpenProcessToken failed with error %lu\n", GetLastError());
 
     ret = GetKernelObjectSecurity(token, LABEL_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Unexpected GetKernelObjectSecurity return value %d, error %u\n", ret, GetLastError());
+       "Unexpected GetKernelObjectSecurity return value %d, error %lu\n", ret, GetLastError());
 
     sd = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetKernelObjectSecurity(token, LABEL_SECURITY_INFORMATION, sd, size, &size);
-    ok(ret, "GetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "GetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     ret = GetSecurityDescriptorControl(sd, &control, &revision);
-    ok(ret, "GetSecurityDescriptorControl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorControl failed with error %lu\n", GetLastError());
     todo_wine ok(control == (SE_SELF_RELATIVE | SE_SACL_AUTO_INHERITED | SE_SACL_PRESENT),
                  "Unexpected security descriptor control %#x\n", control);
-    ok(revision == 1, "Unexpected security descriptor revision %u\n", revision);
+    ok(revision == 1, "Unexpected security descriptor revision %lu\n", revision);
 
     sid = (void *)0xdeadbeef;
     defaulted = TRUE;
     ret = GetSecurityDescriptorOwner(sd, (void **)&sid, &defaulted);
-    ok(ret, "GetSecurityDescriptorOwner failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorOwner failed with error %lu\n", GetLastError());
     ok(!sid, "Owner present\n");
     ok(!defaulted, "Owner defaulted\n");
 
     sid = (void *)0xdeadbeef;
     defaulted = TRUE;
     ret = GetSecurityDescriptorGroup(sd, (void **)&sid, &defaulted);
-    ok(ret, "GetSecurityDescriptorGroup failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorGroup failed with error %lu\n", GetLastError());
     ok(!sid, "Group present\n");
     ok(!defaulted, "Group defaulted\n");
 
     ret = GetSecurityDescriptorSacl(sd, &present, &sacl, &defaulted);
-    ok(ret, "GetSecurityDescriptorSacl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorSacl failed with error %lu\n", GetLastError());
     ok(present, "No SACL in the security descriptor\n");
     ok(!!sacl, "NULL SACL in the security descriptor\n");
     ok(!defaulted, "SACL defaulted\n");
     ok(sacl->AceCount == 1, "SACL contains an unexpected ACE count %u\n", sacl->AceCount);
 
     ret = GetAce(sacl, 0, (void **)&ace);
-    ok(ret, "GetAce failed with error %u\n", GetLastError());
+    ok(ret, "GetAce failed with error %lu\n", GetLastError());
 
     ok(ace->Header.AceType == SYSTEM_MANDATORY_LABEL_ACE_TYPE,
        "Unexpected ACE type %#x\n", ace->Header.AceType);
     ok(!ace->Header.AceFlags, "Unexpected ACE flags %#x\n", ace->Header.AceFlags);
     ok(ace->Header.AceSize, "Unexpected ACE size %u\n", ace->Header.AceSize);
-    ok(ace->Mask == SYSTEM_MANDATORY_LABEL_NO_WRITE_UP, "Unexpected ACE mask %#x\n", ace->Mask);
+    ok(ace->Mask == SYSTEM_MANDATORY_LABEL_NO_WRITE_UP, "Unexpected ACE mask %#lx\n", ace->Mask);
 
     sid = (SID *)&ace->SidStart;
     ConvertSidToStringSidA(sid, &str);
@@ -7051,7 +7051,7 @@ static void test_token_label(void)
     LocalFree(str);
 
     ret = GetSecurityDescriptorDacl(sd, &present, &dacl, &defaulted);
-    ok(ret, "GetSecurityDescriptorDacl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorDacl failed with error %lu\n", GetLastError());
     todo_wine ok(!present, "DACL present\n");
 
     HeapFree(GetProcessHeap(), 0, sd);
@@ -7084,51 +7084,51 @@ static void test_token_security_descriptor(void)
 
     /* Test whether we can create tokens with security descriptors */
     ret = OpenProcessToken(GetCurrentProcess(), MAXIMUM_ALLOWED, &token);
-    ok(ret, "OpenProcessToken failed with error %u\n", GetLastError());
+    ok(ret, "OpenProcessToken failed with error %lu\n", GetLastError());
 
     ret = InitializeSecurityDescriptor(sd, SECURITY_DESCRIPTOR_REVISION);
-    ok(ret, "InitializeSecurityDescriptor failed with error %u\n", GetLastError());
+    ok(ret, "InitializeSecurityDescriptor failed with error %lu\n", GetLastError());
 
     memset(buffer_acl, 0, sizeof(buffer_acl));
     ret = InitializeAcl(acl, 256, ACL_REVISION);
-    ok(ret, "InitializeAcl failed with error %u\n", GetLastError());
+    ok(ret, "InitializeAcl failed with error %lu\n", GetLastError());
 
     ret = ConvertStringSidToSidA("S-1-5-6", &psid);
-    ok(ret, "ConvertStringSidToSidA failed with error %u\n", GetLastError());
+    ok(ret, "ConvertStringSidToSidA failed with error %lu\n", GetLastError());
 
     ret = pAddAccessAllowedAceEx(acl, ACL_REVISION, NO_PROPAGATE_INHERIT_ACE, GENERIC_ALL, psid);
-    ok(ret, "AddAccessAllowedAceEx failed with error %u\n", GetLastError());
+    ok(ret, "AddAccessAllowedAceEx failed with error %lu\n", GetLastError());
 
     ret = SetSecurityDescriptorDacl(sd, TRUE, acl, FALSE);
-    ok(ret, "SetSecurityDescriptorDacl failed with error %u\n", GetLastError());
+    ok(ret, "SetSecurityDescriptorDacl failed with error %lu\n", GetLastError());
 
     sa.nLength = sizeof(SECURITY_ATTRIBUTES);
     sa.lpSecurityDescriptor = sd;
     sa.bInheritHandle = FALSE;
 
     ret = pDuplicateTokenEx(token, MAXIMUM_ALLOWED, &sa, SecurityImpersonation, TokenImpersonation, &token2);
-    ok(ret, "DuplicateTokenEx failed with error %u\n", GetLastError());
+    ok(ret, "DuplicateTokenEx failed with error %lu\n", GetLastError());
 
     ret = GetKernelObjectSecurity(token2, DACL_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Unexpected GetKernelObjectSecurity return value %d, error %u\n", ret, GetLastError());
+       "Unexpected GetKernelObjectSecurity return value %d, error %lu\n", ret, GetLastError());
 
     sd2 = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetKernelObjectSecurity(token2, DACL_SECURITY_INFORMATION, sd2, size, &size);
-    ok(ret, "GetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "GetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     acl2 = (void *)0xdeadbeef;
     present = FALSE;
     defaulted = TRUE;
     ret = GetSecurityDescriptorDacl(sd2, &present, &acl2, &defaulted);
-    ok(ret, "GetSecurityDescriptorDacl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorDacl failed with error %lu\n", GetLastError());
     ok(present, "acl2 not present\n");
     ok(acl2 != (void *)0xdeadbeef, "acl2 not set\n");
     ok(acl2->AceCount == 1, "Expected 1 ACE, got %d\n", acl2->AceCount);
     ok(!defaulted, "acl2 defaulted\n");
 
     ret = GetAce(acl2, 0, (void **)&ace);
-    ok(ret, "GetAce failed with error %u\n", GetLastError());
+    ok(ret, "GetAce failed with error %lu\n", GetLastError());
     ok(ace->Header.AceType == ACCESS_ALLOWED_ACE_TYPE, "Unexpected ACE type %#x\n", ace->Header.AceType);
     ok(EqualSid(&ace->SidStart, psid), "Expected access allowed ACE\n");
     ok(ace->Header.AceFlags == NO_PROPAGATE_INHERIT_ACE,
@@ -7139,21 +7139,21 @@ static void test_token_security_descriptor(void)
     /* Duplicate token without security attributes.
      * Tokens do not inherit the security descriptor in DuplicateToken. */
     ret = pDuplicateTokenEx(token2, MAXIMUM_ALLOWED, NULL, SecurityImpersonation, TokenImpersonation, &token3);
-    ok(ret, "DuplicateTokenEx failed with error %u\n", GetLastError());
+    ok(ret, "DuplicateTokenEx failed with error %lu\n", GetLastError());
 
     ret = GetKernelObjectSecurity(token3, DACL_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Unexpected GetKernelObjectSecurity return value %d, error %u\n", ret, GetLastError());
+       "Unexpected GetKernelObjectSecurity return value %d, error %lu\n", ret, GetLastError());
 
     sd2 = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetKernelObjectSecurity(token3, DACL_SECURITY_INFORMATION, sd2, size, &size);
-    ok(ret, "GetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "GetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     acl2 = (void *)0xdeadbeef;
     present = FALSE;
     defaulted = TRUE;
     ret = GetSecurityDescriptorDacl(sd2, &present, &acl2, &defaulted);
-    ok(ret, "GetSecurityDescriptorDacl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorDacl failed with error %lu\n", GetLastError());
     todo_wine
     ok(present, "DACL not present\n");
 
@@ -7178,17 +7178,17 @@ static void test_token_security_descriptor(void)
      * the parent but not the DACL of the token */
     ret = GetKernelObjectSecurity(token, DACL_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Unexpected GetKernelObjectSecurity return value %d, error %u\n", ret, GetLastError());
+       "Unexpected GetKernelObjectSecurity return value %d, error %lu\n", ret, GetLastError());
 
     sd2 = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetKernelObjectSecurity(token, DACL_SECURITY_INFORMATION, sd2, size, &size);
-    ok(ret, "GetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "GetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     acl2 = (void *)0xdeadbeef;
     present = FALSE;
     defaulted = TRUE;
     ret = GetSecurityDescriptorDacl(sd2, &present, &acl2, &defaulted);
-    ok(ret, "GetSecurityDescriptorDacl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorDacl failed with error %lu\n", GetLastError());
     ok(present, "DACL not present\n");
     ok(acl2 != (void *)0xdeadbeef, "DACL not set\n");
     ok(!defaulted, "DACL defaulted\n");
@@ -7203,36 +7203,36 @@ static void test_token_security_descriptor(void)
     exp_access.Trustee.ptstrName = (void*)psid;
 
     retd = pSetEntriesInAclW(1, &exp_access, acl2, &acl_child);
-    ok(retd == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", retd);
+    ok(retd == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %lu\n", retd);
 
     memset(sd, 0, sizeof(buffer_sd));
     ret = InitializeSecurityDescriptor(sd, SECURITY_DESCRIPTOR_REVISION);
-    ok(ret, "InitializeSecurityDescriptor failed with error %u\n", GetLastError());
+    ok(ret, "InitializeSecurityDescriptor failed with error %lu\n", GetLastError());
 
     ret = SetSecurityDescriptorDacl(sd, TRUE, acl_child, FALSE);
-    ok(ret, "SetSecurityDescriptorDacl failed with error %u\n", GetLastError());
+    ok(ret, "SetSecurityDescriptorDacl failed with error %lu\n", GetLastError());
 
     ret = SetKernelObjectSecurity(token, DACL_SECURITY_INFORMATION, sd);
-    ok(ret, "SetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "SetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     /* The security label is also not inherited */
     if (pAddMandatoryAce)
     {
         ret = InitializeAcl(acl, 256, ACL_REVISION);
-        ok(ret, "InitializeAcl failed with error %u\n", GetLastError());
+        ok(ret, "InitializeAcl failed with error %lu\n", GetLastError());
 
         ret = pAddMandatoryAce(acl, ACL_REVISION, 0, SYSTEM_MANDATORY_LABEL_NO_WRITE_UP, &low_level);
-        ok(ret, "AddMandatoryAce failed with error %u\n", GetLastError());
+        ok(ret, "AddMandatoryAce failed with error %lu\n", GetLastError());
 
         memset(sd, 0, sizeof(buffer_sd));
         ret = InitializeSecurityDescriptor(sd, SECURITY_DESCRIPTOR_REVISION);
-        ok(ret, "InitializeSecurityDescriptor failed with error %u\n", GetLastError());
+        ok(ret, "InitializeSecurityDescriptor failed with error %lu\n", GetLastError());
 
         ret = SetSecurityDescriptorSacl(sd, TRUE, acl, FALSE);
-        ok(ret, "SetSecurityDescriptorSacl failed with error %u\n", GetLastError());
+        ok(ret, "SetSecurityDescriptorSacl failed with error %lu\n", GetLastError());
 
         ret = SetKernelObjectSecurity(token, LABEL_SECURITY_INFORMATION, sd);
-        ok(ret, "SetKernelObjectSecurity failed with error %u\n", GetLastError());
+        ok(ret, "SetKernelObjectSecurity failed with error %lu\n", GetLastError());
     }
     else
         win_skip("SYSTEM_MANDATORY_LABEL not supported\n");
@@ -7245,7 +7245,7 @@ static void test_token_security_descriptor(void)
 
     sprintf(buffer, "%s security test_token_sd", myARGV[0]);
     ret = CreateProcessA(NULL, buffer, NULL, NULL, FALSE, 0, NULL, NULL, &startup, &info);
-    ok(ret, "CreateProcess failed with error %u\n", GetLastError());
+    ok(ret, "CreateProcess failed with error %lu\n", GetLastError());
     wait_child_process(info.hProcess);
     CloseHandle(info.hProcess);
     CloseHandle(info.hThread);
@@ -7273,24 +7273,24 @@ static void test_child_token_sd(void)
     ACL *acl;
 
     ret = ConvertStringSidToSidA("S-1-5-6", &psid);
-    ok(ret, "ConvertStringSidToSidA failed with error %u\n", GetLastError());
+    ok(ret, "ConvertStringSidToSidA failed with error %lu\n", GetLastError());
 
     ret = OpenProcessToken(GetCurrentProcess(), MAXIMUM_ALLOWED, &token);
-    ok(ret, "OpenProcessToken failed with error %u\n", GetLastError());
+    ok(ret, "OpenProcessToken failed with error %lu\n", GetLastError());
 
     ret = GetKernelObjectSecurity(token, DACL_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Unexpected GetKernelObjectSecurity return value %d, error %u\n", ret, GetLastError());
+       "Unexpected GetKernelObjectSecurity return value %d, error %lu\n", ret, GetLastError());
 
     sd = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetKernelObjectSecurity(token, DACL_SECURITY_INFORMATION, sd, size, &size);
-    ok(ret, "GetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "GetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     acl = NULL;
     present = FALSE;
     defaulted = TRUE;
     ret = GetSecurityDescriptorDacl(sd, &present, &acl, &defaulted);
-    ok(ret, "GetSecurityDescriptorDacl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorDacl failed with error %lu\n", GetLastError());
     ok(present, "DACL not present\n");
     ok(acl && acl != (void *)0xdeadbeef, "Got invalid DACL\n");
     ok(!defaulted, "DACL defaulted\n");
@@ -7299,7 +7299,7 @@ static void test_child_token_sd(void)
     for (i = 0; i < acl->AceCount; i++)
     {
         ret = GetAce(acl, i, (void **)&acc_ace);
-        ok(ret, "GetAce failed with error %u\n", GetLastError());
+        ok(ret, "GetAce failed with error %lu\n", GetLastError());
         ok(acc_ace->Header.AceType != ACCESS_ALLOWED_ACE_TYPE || !EqualSid(&acc_ace->SidStart, psid),
            "ACE inherited from the parent\n");
     }
@@ -7315,23 +7315,23 @@ static void test_child_token_sd(void)
 
     ret = GetKernelObjectSecurity(token, LABEL_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Unexpected GetKernelObjectSecurity return value %d, error %u\n", ret, GetLastError());
+       "Unexpected GetKernelObjectSecurity return value %d, error %lu\n", ret, GetLastError());
 
     sd = HeapAlloc(GetProcessHeap(), 0, size);
     ret = GetKernelObjectSecurity(token, LABEL_SECURITY_INFORMATION, sd, size, &size);
-    ok(ret, "GetKernelObjectSecurity failed with error %u\n", GetLastError());
+    ok(ret, "GetKernelObjectSecurity failed with error %lu\n", GetLastError());
 
     acl = NULL;
     present = FALSE;
     defaulted = TRUE;
     ret = GetSecurityDescriptorSacl(sd, &present, &acl, &defaulted);
-    ok(ret, "GetSecurityDescriptorSacl failed with error %u\n", GetLastError());
+    ok(ret, "GetSecurityDescriptorSacl failed with error %lu\n", GetLastError());
     ok(present, "SACL not present\n");
     ok(acl && acl != (void *)0xdeadbeef, "Got invalid SACL\n");
     ok(!defaulted, "SACL defaulted\n");
     ok(acl->AceCount == 1, "Expected exactly one ACE\n");
     ret = GetAce(acl, 0, (void **)&ace_label);
-    ok(ret, "GetAce failed with error %u\n", GetLastError());
+    ok(ret, "GetAce failed with error %lu\n", GetLastError());
     ok(ace_label->Header.AceType == SYSTEM_MANDATORY_LABEL_ACE_TYPE,
        "Unexpected ACE type %#x\n", ace_label->Header.AceType);
     ok(!EqualSid(&ace_label->SidStart, &low_level),
@@ -7372,26 +7372,26 @@ static void test_GetExplicitEntriesFromAclW(void)
         HeapFree(GetProcessHeap(), 0, old_acl);
         return;
     }
-    ok(res, "InitializeAcl failed with error %d\n", GetLastError());
+    ok(res, "InitializeAcl failed with error %ld\n", GetLastError());
 
     res = AllocateAndInitializeSid(&SIDAuthWorld, 1, SECURITY_WORLD_RID, 0, 0, 0, 0, 0, 0, 0, &everyone_sid);
-    ok(res, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(res, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     res = AllocateAndInitializeSid(&SIDAuthNT, 2, SECURITY_BUILTIN_DOMAIN_RID,
                                    DOMAIN_ALIAS_RID_USERS, 0, 0, 0, 0, 0, 0, &users_sid);
-    ok(res, "AllocateAndInitializeSid failed with error %d\n", GetLastError());
+    ok(res, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
 
     res = AddAccessAllowedAce(old_acl, ACL_REVISION, KEY_READ, users_sid);
-    ok(res, "AddAccessAllowedAce failed with error %d\n", GetLastError());
+    ok(res, "AddAccessAllowedAce failed with error %ld\n", GetLastError());
 
     access2 = NULL;
     res = pGetExplicitEntriesFromAclW(old_acl, &count, &access2);
-    ok(res == ERROR_SUCCESS, "GetExplicitEntriesFromAclW failed with error %d\n", GetLastError());
-    ok(count == 1, "Expected count == 1, got %d\n", count);
+    ok(res == ERROR_SUCCESS, "GetExplicitEntriesFromAclW failed with error %ld\n", GetLastError());
+    ok(count == 1, "Expected count == 1, got %ld\n", count);
     ok(access2[0].grfAccessMode == GRANT_ACCESS, "Expected GRANT_ACCESS, got %d\n", access2[0].grfAccessMode);
-    ok(access2[0].grfAccessPermissions == KEY_READ, "Expected KEY_READ, got %d\n", access2[0].grfAccessPermissions);
+    ok(access2[0].grfAccessPermissions == KEY_READ, "Expected KEY_READ, got %ld\n", access2[0].grfAccessPermissions);
     ok(access2[0].Trustee.TrusteeForm == TRUSTEE_IS_SID, "Expected SID trustee, got %d\n", access2[0].Trustee.TrusteeForm);
-    ok(access2[0].grfInheritance == NO_INHERITANCE, "Expected NO_INHERITANCE, got %x\n", access2[0].grfInheritance);
+    ok(access2[0].grfInheritance == NO_INHERITANCE, "Expected NO_INHERITANCE, got %lx\n", access2[0].grfInheritance);
     ok(EqualSid(access2[0].Trustee.ptstrName, users_sid), "Expected equal SIDs\n");
     LocalFree(access2);
 
@@ -7405,38 +7405,38 @@ static void test_GetExplicitEntriesFromAclW(void)
     access.Trustee.TrusteeForm = TRUSTEE_IS_SID;
     access.Trustee.ptstrName = everyone_sid;
     res = pSetEntriesInAclW(1, &access, old_acl, &new_acl);
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %lu\n", res);
     ok(new_acl != NULL, "returned acl was NULL\n");
 
     access2 = NULL;
     res = pGetExplicitEntriesFromAclW(new_acl, &count, &access2);
-    ok(res == ERROR_SUCCESS, "GetExplicitEntriesFromAclW failed with error %d\n", GetLastError());
-    ok(count == 2, "Expected count == 2, got %d\n", count);
+    ok(res == ERROR_SUCCESS, "GetExplicitEntriesFromAclW failed with error %ld\n", GetLastError());
+    ok(count == 2, "Expected count == 2, got %ld\n", count);
     ok(access2[0].grfAccessMode == GRANT_ACCESS, "Expected GRANT_ACCESS, got %d\n", access2[0].grfAccessMode);
-    ok(access2[0].grfAccessPermissions == KEY_WRITE, "Expected KEY_WRITE, got %d\n", access2[0].grfAccessPermissions);
+    ok(access2[0].grfAccessPermissions == KEY_WRITE, "Expected KEY_WRITE, got %ld\n", access2[0].grfAccessPermissions);
     ok(access2[0].Trustee.TrusteeType == TRUSTEE_IS_UNKNOWN,
        "Expected TRUSTEE_IS_UNKNOWN trustee type, got %d\n", access2[0].Trustee.TrusteeType);
     ok(access2[0].Trustee.TrusteeForm == TRUSTEE_IS_SID, "Expected SID trustee, got %d\n", access2[0].Trustee.TrusteeForm);
-    ok(access2[0].grfInheritance == NO_INHERITANCE, "Expected NO_INHERITANCE, got %x\n", access2[0].grfInheritance);
+    ok(access2[0].grfInheritance == NO_INHERITANCE, "Expected NO_INHERITANCE, got %lx\n", access2[0].grfInheritance);
     ok(EqualSid(access2[0].Trustee.ptstrName, everyone_sid), "Expected equal SIDs\n");
     LocalFree(access2);
     LocalFree(new_acl);
 
     access.Trustee.TrusteeType = TRUSTEE_IS_UNKNOWN;
     res = pSetEntriesInAclW(1, &access, old_acl, &new_acl);
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %lu\n", res);
     ok(new_acl != NULL, "returned acl was NULL\n");
 
     access2 = NULL;
     res = pGetExplicitEntriesFromAclW(new_acl, &count, &access2);
-    ok(res == ERROR_SUCCESS, "GetExplicitEntriesFromAclW failed with error %d\n", GetLastError());
-    ok(count == 2, "Expected count == 2, got %d\n", count);
+    ok(res == ERROR_SUCCESS, "GetExplicitEntriesFromAclW failed with error %ld\n", GetLastError());
+    ok(count == 2, "Expected count == 2, got %ld\n", count);
     ok(access2[0].grfAccessMode == GRANT_ACCESS, "Expected GRANT_ACCESS, got %d\n", access2[0].grfAccessMode);
-    ok(access2[0].grfAccessPermissions == KEY_WRITE, "Expected KEY_WRITE, got %d\n", access2[0].grfAccessPermissions);
+    ok(access2[0].grfAccessPermissions == KEY_WRITE, "Expected KEY_WRITE, got %ld\n", access2[0].grfAccessPermissions);
     ok(access2[0].Trustee.TrusteeType == TRUSTEE_IS_UNKNOWN,
        "Expected TRUSTEE_IS_UNKNOWN trustee type, got %d\n", access2[0].Trustee.TrusteeType);
     ok(access2[0].Trustee.TrusteeForm == TRUSTEE_IS_SID, "Expected SID trustee, got %d\n", access2[0].Trustee.TrusteeForm);
-    ok(access2[0].grfInheritance == NO_INHERITANCE, "Expected NO_INHERITANCE, got %x\n", access2[0].grfInheritance);
+    ok(access2[0].grfInheritance == NO_INHERITANCE, "Expected NO_INHERITANCE, got %lx\n", access2[0].grfInheritance);
     ok(EqualSid(access2[0].Trustee.ptstrName, everyone_sid), "Expected equal SIDs\n");
     LocalFree(access2);
     LocalFree(new_acl);
@@ -7444,19 +7444,19 @@ static void test_GetExplicitEntriesFromAclW(void)
     access.Trustee.TrusteeForm = TRUSTEE_IS_NAME;
     access.Trustee.ptstrName = (LPWSTR)wszCurrentUser;
     res = pSetEntriesInAclW(1, &access, old_acl, &new_acl);
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %lu\n", res);
     ok(new_acl != NULL, "returned acl was NULL\n");
 
     access2 = NULL;
     res = pGetExplicitEntriesFromAclW(new_acl, &count, &access2);
-    ok(res == ERROR_SUCCESS, "GetExplicitEntriesFromAclW failed with error %d\n", GetLastError());
-    ok(count == 2, "Expected count == 2, got %d\n", count);
+    ok(res == ERROR_SUCCESS, "GetExplicitEntriesFromAclW failed with error %ld\n", GetLastError());
+    ok(count == 2, "Expected count == 2, got %ld\n", count);
     ok(access2[0].grfAccessMode == GRANT_ACCESS, "Expected GRANT_ACCESS, got %d\n", access2[0].grfAccessMode);
-    ok(access2[0].grfAccessPermissions == KEY_WRITE, "Expected KEY_WRITE, got %d\n", access2[0].grfAccessPermissions);
+    ok(access2[0].grfAccessPermissions == KEY_WRITE, "Expected KEY_WRITE, got %ld\n", access2[0].grfAccessPermissions);
     ok(access2[0].Trustee.TrusteeType == TRUSTEE_IS_UNKNOWN,
        "Expected TRUSTEE_IS_UNKNOWN trustee type, got %d\n", access2[0].Trustee.TrusteeType);
     ok(access2[0].Trustee.TrusteeForm == TRUSTEE_IS_SID, "Expected SID trustee, got %d\n", access2[0].Trustee.TrusteeForm);
-    ok(access2[0].grfInheritance == NO_INHERITANCE, "Expected NO_INHERITANCE, got %x\n", access2[0].grfInheritance);
+    ok(access2[0].grfInheritance == NO_INHERITANCE, "Expected NO_INHERITANCE, got %lx\n", access2[0].grfInheritance);
     LocalFree(access2);
     LocalFree(new_acl);
 
@@ -7464,39 +7464,39 @@ static void test_GetExplicitEntriesFromAclW(void)
     access.Trustee.TrusteeForm = TRUSTEE_IS_SID;
     access.Trustee.ptstrName = users_sid;
     res = pSetEntriesInAclW(1, &access, old_acl, &new_acl);
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %lu\n", res);
     ok(new_acl != NULL, "returned acl was NULL\n");
 
     access2 = (void *)0xdeadbeef;
     res = pGetExplicitEntriesFromAclW(new_acl, &count, &access2);
-    ok(res == ERROR_SUCCESS, "GetExplicitEntriesFromAclW failed with error %d\n", GetLastError());
-    ok(count == 0, "Expected count == 0, got %d\n", count);
+    ok(res == ERROR_SUCCESS, "GetExplicitEntriesFromAclW failed with error %ld\n", GetLastError());
+    ok(count == 0, "Expected count == 0, got %ld\n", count);
     ok(access2 == NULL, "access2 was not NULL\n");
     LocalFree(new_acl);
 
     /* Make the ACL both Allow and Deny Everyone. */
     res = AddAccessAllowedAce(old_acl, ACL_REVISION, KEY_READ, everyone_sid);
-    ok(res, "AddAccessAllowedAce failed with error %d\n", GetLastError());
+    ok(res, "AddAccessAllowedAce failed with error %ld\n", GetLastError());
     res = AddAccessDeniedAce(old_acl, ACL_REVISION, KEY_WRITE, everyone_sid);
-    ok(res, "AddAccessDeniedAce failed with error %d\n", GetLastError());
+    ok(res, "AddAccessDeniedAce failed with error %ld\n", GetLastError());
     /* Revoke Everyone. */
     access.Trustee.ptstrName = everyone_sid;
     access.Trustee.TrusteeType = TRUSTEE_IS_WELL_KNOWN_GROUP;
     access.grfAccessPermissions = 0;
     new_acl = NULL;
     res = pSetEntriesInAclW(1, &access, old_acl, &new_acl);
-    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %u\n", res);
+    ok(res == ERROR_SUCCESS, "SetEntriesInAclW failed: %lu\n", res);
     ok(new_acl != NULL, "returned acl was NULL\n");
     /* Deny Everyone should remain (along with Grant Users from earlier). */
     access2 = NULL;
     res = pGetExplicitEntriesFromAclW(new_acl, &count, &access2);
-    ok(res == ERROR_SUCCESS, "GetExplicitEntriesFromAclW failed with error %d\n", GetLastError());
-    ok(count == 2, "Expected count == 2, got %d\n", count);
+    ok(res == ERROR_SUCCESS, "GetExplicitEntriesFromAclW failed with error %ld\n", GetLastError());
+    ok(count == 2, "Expected count == 2, got %ld\n", count);
     ok(access2[0].grfAccessMode == GRANT_ACCESS, "Expected GRANT_ACCESS, got %d\n", access2[0].grfAccessMode);
-    ok(access2[0].grfAccessPermissions == KEY_READ , "Expected KEY_READ, got %d\n", access2[0].grfAccessPermissions);
+    ok(access2[0].grfAccessPermissions == KEY_READ , "Expected KEY_READ, got %ld\n", access2[0].grfAccessPermissions);
     ok(EqualSid(access2[0].Trustee.ptstrName, users_sid), "Expected equal SIDs\n");
     ok(access2[1].grfAccessMode == DENY_ACCESS, "Expected DENY_ACCESS, got %d\n", access2[1].grfAccessMode);
-    ok(access2[1].grfAccessPermissions == KEY_WRITE, "Expected KEY_WRITE, got %d\n", access2[1].grfAccessPermissions);
+    ok(access2[1].grfAccessPermissions == KEY_WRITE, "Expected KEY_WRITE, got %ld\n", access2[1].grfAccessPermissions);
     ok(EqualSid(access2[1].Trustee.ptstrName, everyone_sid), "Expected equal SIDs\n");
     LocalFree(access2);
 
@@ -7519,24 +7519,24 @@ static void test_BuildSecurityDescriptorW(void)
     buf_size = sizeof(buf);
     rel_sd = (SECURITY_DESCRIPTOR *)buf;
     success = MakeSelfRelativeSD(&old_sd, rel_sd, &buf_size);
-    ok(success, "MakeSelfRelativeSD failed with %u\n", GetLastError());
+    ok(success, "MakeSelfRelativeSD failed with %lu\n", GetLastError());
 
     new_sd = NULL;
     new_sd_size = 0;
     ret = BuildSecurityDescriptorW(NULL, NULL, 0, NULL, 0, NULL, NULL, &new_sd_size, (void **)&new_sd);
-    ok(ret == ERROR_SUCCESS, "BuildSecurityDescriptor failed with %u\n", ret);
+    ok(ret == ERROR_SUCCESS, "BuildSecurityDescriptor failed with %lu\n", ret);
     ok(new_sd != NULL, "expected new_sd != NULL\n");
     LocalFree(new_sd);
 
     new_sd = (void *)0xdeadbeef;
     ret = BuildSecurityDescriptorW(NULL, NULL, 0, NULL, 0, NULL, &old_sd, &new_sd_size, (void **)&new_sd);
-    ok(ret == ERROR_INVALID_SECURITY_DESCR, "expected ERROR_INVALID_SECURITY_DESCR, got %u\n", ret);
+    ok(ret == ERROR_INVALID_SECURITY_DESCR, "expected ERROR_INVALID_SECURITY_DESCR, got %lu\n", ret);
     ok(new_sd == (void *)0xdeadbeef, "expected new_sd == 0xdeadbeef, got %p\n", new_sd);
 
     new_sd = NULL;
     new_sd_size = 0;
     ret = BuildSecurityDescriptorW(NULL, NULL, 0, NULL, 0, NULL, rel_sd, &new_sd_size, (void **)&new_sd);
-    ok(ret == ERROR_SUCCESS, "BuildSecurityDescriptor failed with %u\n", ret);
+    ok(ret == ERROR_SUCCESS, "BuildSecurityDescriptor failed with %lu\n", ret);
     ok(new_sd != NULL, "expected new_sd != NULL\n");
     LocalFree(new_sd);
 }
@@ -7557,17 +7557,17 @@ static void test_EqualDomainSid(void)
     }
 
     ret = AllocateAndInitializeSid(&ident, 6, SECURITY_NT_NON_UNIQUE, 12, 23, 34, 45, 56, 0, 0, &domainsid);
-    ok(ret, "AllocateAndInitializeSid error %u\n", GetLastError());
+    ok(ret, "AllocateAndInitializeSid error %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pEqualDomainSid(NULL, NULL, NULL);
     ok(!ret, "got %d\n", ret);
-    ok(GetLastError() == ERROR_INVALID_SID, "got %u\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_SID, "got %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pEqualDomainSid(domainsid, domainsid, NULL);
     ok(!ret, "got %d\n", ret);
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got %u\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "got %lu\n", GetLastError());
 
     for (i = 0; i < ARRAY_SIZE(well_known_sid_values); i++)
     {
@@ -7586,24 +7586,24 @@ static void test_EqualDomainSid(void)
         if (pisid->SubAuthority[0] != SECURITY_BUILTIN_DOMAIN_RID)
         {
             ok(!ret, "%u: got %d\n", i, ret);
-            ok(GetLastError() == ERROR_NON_DOMAIN_SID, "%u: got %u\n", i, GetLastError());
+            ok(GetLastError() == ERROR_NON_DOMAIN_SID, "%u: got %lu\n", i, GetLastError());
             ok(equal == 0xdeadbeef, "%u: got %d\n", i, equal);
             continue;
         }
 
         ok(ret, "%u: got %d\n", i, ret);
-        ok(GetLastError() == 0, "%u: got %u\n", i, GetLastError());
+        ok(GetLastError() == 0, "%u: got %lu\n", i, GetLastError());
         ok(equal == 0, "%u: got %d\n", i, equal);
 
         size = sizeof(sid_buffer2);
         ret = CreateWellKnownSid(i, well_known_sid_values[i].without_domain ? NULL : domainsid, sid2, &size);
-        ok(ret, "%u: CreateWellKnownSid error %u\n", i, GetLastError());
+        ok(ret, "%u: CreateWellKnownSid error %lu\n", i, GetLastError());
 
         equal = 0xdeadbeef;
         SetLastError(0xdeadbeef);
         ret = pEqualDomainSid(sid, sid2, &equal);
         ok(ret, "%u: got %d\n", i, ret);
-        ok(GetLastError() == 0, "%u: got %u\n", i, GetLastError());
+        ok(GetLastError() == 0, "%u: got %lu\n", i, GetLastError());
         ok(equal == 1, "%u: got %d\n", i, equal);
     }
 
@@ -7616,16 +7616,16 @@ static DWORD WINAPI duplicate_handle_access_thread(void *arg)
     BOOL ret;
 
     event2 = OpenEventA(SYNCHRONIZE, FALSE, "test_dup");
-    ok(!!event2, "got error %u\n", GetLastError());
+    ok(!!event2, "got error %lu\n", GetLastError());
     CloseHandle(event2);
 
     event2 = OpenEventA(EVENT_MODIFY_STATE, FALSE, "test_dup");
-    ok(!!event2, "got error %u\n", GetLastError());
+    ok(!!event2, "got error %lu\n", GetLastError());
     CloseHandle(event2);
 
     ret = DuplicateHandle(GetCurrentProcess(), event, GetCurrentProcess(),
             &event2, EVENT_MODIFY_STATE, FALSE, 0);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     CloseHandle(event2);
 
     return 0;
@@ -7652,95 +7652,95 @@ static void test_duplicate_handle_access(void)
      */
 
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_DUPLICATE | TOKEN_QUERY | TOKEN_ASSIGN_PRIMARY, &token);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     size = sizeof(everyone_sid_buffer);
     ret = CreateWellKnownSid(WinWorldSid, NULL, everyone_sid, &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     size = sizeof(local_sid_buffer);
     ret = CreateWellKnownSid(WinLocalSid, NULL, local_sid, &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     InitializeAcl(acl, sizeof(acl_buffer), ACL_REVISION);
     ret = AddAccessAllowedAce(acl, ACL_REVISION, SYNCHRONIZE, everyone_sid);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     InitializeSecurityDescriptor(&sd, SECURITY_DESCRIPTOR_REVISION);
     ret = AddAccessAllowedAce(acl, ACL_REVISION, EVENT_MODIFY_STATE, local_sid);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     InitializeSecurityDescriptor(&sd, SECURITY_DESCRIPTOR_REVISION);
     ret = SetSecurityDescriptorDacl(&sd, TRUE, acl, FALSE);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     sa.lpSecurityDescriptor = &sd;
 
     sid_attr.Sid = local_sid;
     sid_attr.Attributes = 0;
     ret = CreateRestrictedToken(token, 0, 1, &sid_attr, 0, NULL, 0, NULL, &restricted);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ret = DuplicateTokenEx(restricted, TOKEN_IMPERSONATE, NULL,
             SecurityImpersonation, TokenImpersonation, &impersonation);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     all_event = CreateEventA(&sa, TRUE, TRUE, "test_dup");
-    ok(!!all_event, "got error %u\n", GetLastError());
+    ok(!!all_event, "got error %lu\n", GetLastError());
     sync_event = OpenEventA(SYNCHRONIZE, FALSE, "test_dup");
-    ok(!!sync_event, "got error %u\n", GetLastError());
+    ok(!!sync_event, "got error %lu\n", GetLastError());
 
     event2 = OpenEventA(SYNCHRONIZE, FALSE, "test_dup");
-    ok(!!event2, "got error %u\n", GetLastError());
+    ok(!!event2, "got error %lu\n", GetLastError());
     CloseHandle(event2);
 
     event2 = OpenEventA(EVENT_MODIFY_STATE, FALSE, "test_dup");
-    ok(!!event2, "got error %u\n", GetLastError());
+    ok(!!event2, "got error %lu\n", GetLastError());
     CloseHandle(event2);
 
     ret = DuplicateHandle(GetCurrentProcess(), all_event, GetCurrentProcess(), &event2, EVENT_MODIFY_STATE, FALSE, 0);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     CloseHandle(event2);
 
     ret = DuplicateHandle(GetCurrentProcess(), sync_event, GetCurrentProcess(), &event2, EVENT_MODIFY_STATE, FALSE, 0);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     CloseHandle(event2);
 
     ret = SetThreadToken(NULL, impersonation);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     thread = CreateThread(NULL, 0, duplicate_handle_access_thread, sync_event, 0, NULL);
     ret = WaitForSingleObject(thread, 1000);
     ok(!ret, "wait failed\n");
 
     event2 = OpenEventA(SYNCHRONIZE, FALSE, "test_dup");
-    ok(!!event2, "got error %u\n", GetLastError());
+    ok(!!event2, "got error %lu\n", GetLastError());
     CloseHandle(event2);
 
     SetLastError(0xdeadbeef);
     event2 = OpenEventA(EVENT_MODIFY_STATE, FALSE, "test_dup");
     ok(!event2, "expected failure\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %lu\n", GetLastError());
 
     ret = DuplicateHandle(GetCurrentProcess(), all_event, GetCurrentProcess(), &event2, EVENT_MODIFY_STATE, FALSE, 0);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     CloseHandle(event2);
 
     SetLastError(0xdeadbeef);
     ret = DuplicateHandle(GetCurrentProcess(), sync_event, GetCurrentProcess(), &event2, EVENT_MODIFY_STATE, FALSE, 0);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %lu\n", GetLastError());
 
     ret = RevertToSelf();
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
-    sprintf(cmdline, "%s security duplicate %Iu %u %Iu", myARGV[0],
+    sprintf(cmdline, "%s security duplicate %Iu %lu %Iu", myARGV[0],
             (ULONG_PTR)sync_event, GetCurrentProcessId(), (ULONG_PTR)impersonation );
     ret = CreateProcessAsUserA(restricted, NULL, cmdline, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     ret = DuplicateHandle(GetCurrentProcess(), all_event, pi.hProcess, &event2, EVENT_MODIFY_STATE, FALSE, 0);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = DuplicateHandle(GetCurrentProcess(), sync_event, pi.hProcess, &event2, EVENT_MODIFY_STATE, FALSE, 0);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %lu\n", GetLastError());
 
     ret = WaitForSingleObject(pi.hProcess, 1000);
     ok(!ret, "wait failed\n");
@@ -7759,43 +7759,43 @@ static void test_duplicate_handle_access_child(void)
 
     event = (HANDLE)(ULONG_PTR)_atoi64(myARGV[3]);
     process = OpenProcess(PROCESS_DUP_HANDLE, FALSE, atoi(myARGV[4]));
-    ok(!!process, "failed to open process, error %u\n", GetLastError());
+    ok(!!process, "failed to open process, error %lu\n", GetLastError());
 
     event2 = OpenEventA(SYNCHRONIZE, FALSE, "test_dup");
-    ok(!!event2, "got error %u\n", GetLastError());
+    ok(!!event2, "got error %lu\n", GetLastError());
     CloseHandle(event2);
 
     SetLastError(0xdeadbeef);
     event2 = OpenEventA(EVENT_MODIFY_STATE, FALSE, "test_dup");
     ok(!event2, "expected failure\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %lu\n", GetLastError());
 
     ret = DuplicateHandle(process, event, process, &event2, EVENT_MODIFY_STATE, FALSE, 0);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = DuplicateHandle(process, event, GetCurrentProcess(), &event2, EVENT_MODIFY_STATE, FALSE, 0);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %lu\n", GetLastError());
 
     ret = DuplicateHandle(process, (HANDLE)(ULONG_PTR)_atoi64(myARGV[5]),
             GetCurrentProcess(), &token, 0, FALSE, DUPLICATE_SAME_ACCESS);
-    ok(ret, "failed to retrieve token, error %u\n", GetLastError());
+    ok(ret, "failed to retrieve token, error %lu\n", GetLastError());
     ret = SetThreadToken(NULL, token);
-    ok(ret, "failed to set thread token, error %u\n", GetLastError());
+    ok(ret, "failed to set thread token, error %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = DuplicateHandle(process, event, process, &event2, EVENT_MODIFY_STATE, FALSE, 0);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = DuplicateHandle(process, event, GetCurrentProcess(), &event2, EVENT_MODIFY_STATE, FALSE, 0);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %lu\n", GetLastError());
 
     ret = RevertToSelf();
-    ok(ret, "failed to revert, error %u\n", GetLastError());
+    ok(ret, "failed to revert, error %lu\n", GetLastError());
     CloseHandle(token);
     CloseHandle(process);
 }
@@ -7825,58 +7825,58 @@ static void test_create_process_token(void)
 
     size = sizeof(sid_buffer);
     ret = CreateWellKnownSid(WinLocalSid, NULL, sid, &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ret = InitializeAcl(acl, sizeof(acl_buffer), ACL_REVISION);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ret = AddAccessAllowedAce(acl, ACL_REVISION, EVENT_MODIFY_STATE, sid);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     InitializeSecurityDescriptor(&sd, SECURITY_DESCRIPTOR_REVISION);
     ret = SetSecurityDescriptorDacl(&sd, TRUE, acl, FALSE);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     sa.lpSecurityDescriptor = &sd;
     event = CreateEventA(&sa, TRUE, TRUE, "test_event");
-    ok(!!event, "got error %u\n", GetLastError());
+    ok(!!event, "got error %lu\n", GetLastError());
 
     sprintf(cmdline, "%s security restricted 0", myARGV[0]);
 
     ret = CreateProcessAsUserA(NULL, NULL, cmdline, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     join_process(&pi);
 
     ret = CreateProcessAsUserA(GetCurrentProcessToken(), NULL, cmdline, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
     todo_wine ok(!ret, "expected failure\n");
-    todo_wine ok(GetLastError() == ERROR_INVALID_HANDLE, "got error %u\n", GetLastError());
+    todo_wine ok(GetLastError() == ERROR_INVALID_HANDLE, "got error %lu\n", GetLastError());
     if (ret) join_process(&pi);
 
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY | TOKEN_ASSIGN_PRIMARY, &token);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ret = CreateProcessAsUserA(token, NULL, cmdline, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
-    ok(ret || broken(GetLastError() == ERROR_ACCESS_DENIED) /* < 7 */, "got error %u\n", GetLastError());
+    ok(ret || broken(GetLastError() == ERROR_ACCESS_DENIED) /* < 7 */, "got error %lu\n", GetLastError());
     if (ret) join_process(&pi);
     CloseHandle(token);
 
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &token);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ret = CreateProcessAsUserA(token, NULL, cmdline, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %lu\n", GetLastError());
     CloseHandle(token);
 
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_ASSIGN_PRIMARY, &token);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ret = CreateProcessAsUserA(token, NULL, cmdline, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %lu\n", GetLastError());
     CloseHandle(token);
 
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY | TOKEN_ASSIGN_PRIMARY | TOKEN_DUPLICATE, &token);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     ret = DuplicateTokenEx(token, TOKEN_QUERY | TOKEN_ASSIGN_PRIMARY, NULL,
             SecurityImpersonation, TokenImpersonation, &token2);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ret = CreateProcessAsUserA(token2, NULL, cmdline, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
-    ok(ret || broken(GetLastError() == ERROR_BAD_TOKEN_TYPE) /* < 7 */, "got error %u\n", GetLastError());
+    ok(ret || broken(GetLastError() == ERROR_BAD_TOKEN_TYPE) /* < 7 */, "got error %lu\n", GetLastError());
     if (ret) join_process(&pi);
     CloseHandle(token2);
 
@@ -7884,9 +7884,9 @@ static void test_create_process_token(void)
     sid_attr.Sid = sid;
     sid_attr.Attributes = 0;
     ret = CreateRestrictedToken(token, 0, 1, &sid_attr, 0, NULL, 0, NULL, &token2);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ret = CreateProcessAsUserA(token2, NULL, cmdline, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     join_process(&pi);
     CloseHandle(token2);
 
@@ -7903,13 +7903,13 @@ static void test_create_process_token_child(void)
     event = OpenEventA(EVENT_MODIFY_STATE, FALSE, "test_event");
     if (!atoi(myARGV[3]))
     {
-        ok(!!event, "got error %u\n", GetLastError());
+        ok(!!event, "got error %lu\n", GetLastError());
         CloseHandle(event);
     }
     else
     {
         ok(!event, "expected failure\n");
-        ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %u\n", GetLastError());
+        ok(GetLastError() == ERROR_ACCESS_DENIED, "got error %lu\n", GetLastError());
     }
 }
 
@@ -7933,17 +7933,17 @@ static void test_pseudo_handle_security(void)
     };
 
     ret = GetKernelObjectSecurity(GetCurrentProcess(), OWNER_SECURITY_INFORMATION, &sd, sizeof(buffer), &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     ret = GetKernelObjectSecurity(GetCurrentThread(), OWNER_SECURITY_INFORMATION, &sd, sizeof(buffer), &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     for (i = 0; i < ARRAY_SIZE(keys); ++i)
     {
         SetLastError(0xdeadbeef);
         ret = GetKernelObjectSecurity(keys[i], OWNER_SECURITY_INFORMATION, &sd, sizeof(buffer), &size);
         ok(!ret, "key %p: expected failure\n", keys[i]);
-        ok(GetLastError() == ERROR_INVALID_HANDLE, "key %p: got error %u\n", keys[i], GetLastError());
+        ok(GetLastError() == ERROR_INVALID_HANDLE, "key %p: got error %lu\n", keys[i], GetLastError());
 
         ret = GetSecurityInfo(keys[i], SE_REGISTRY_KEY,
                 DACL_SECURITY_INFORMATION, NULL, NULL, NULL, NULL, &sd_ptr);
@@ -7968,25 +7968,25 @@ static void test_duplicate_token(void)
     BOOL ret;
 
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY | TOKEN_DUPLICATE | TOKEN_ADJUST_DEFAULT, &token);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     ret = DuplicateToken(token, SecurityAnonymous, &token2);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     TEST_GRANTED_ACCESS(token2, TOKEN_QUERY | TOKEN_IMPERSONATE);
     CloseHandle(token2);
 
     ret = DuplicateTokenEx(token, 0, NULL, SecurityAnonymous, TokenPrimary, &token2);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     TEST_GRANTED_ACCESS(token2, TOKEN_QUERY | TOKEN_DUPLICATE | TOKEN_ADJUST_DEFAULT);
     CloseHandle(token2);
 
     ret = DuplicateTokenEx(token, MAXIMUM_ALLOWED, NULL, SecurityAnonymous, TokenPrimary, &token2);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     TEST_GRANTED_ACCESS(token2, TOKEN_ALL_ACCESS);
     CloseHandle(token2);
 
     ret = DuplicateTokenEx(token, TOKEN_QUERY_SOURCE, NULL, SecurityAnonymous, TokenPrimary, &token2);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     TEST_GRANTED_ACCESS(token2, TOKEN_QUERY_SOURCE);
     CloseHandle(token2);
 
@@ -8008,19 +8008,19 @@ static void test_GetKernelObjectSecurity(void)
     size = 0xdeadbeef;
     ret = GetKernelObjectSecurity(NULL, OWNER_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_HANDLE, "got error %u\n", GetLastError());
-    ok(size == 0xdeadbeef, "got size %u\n", size);
+    ok(GetLastError() == ERROR_INVALID_HANDLE, "got error %lu\n", GetLastError());
+    ok(size == 0xdeadbeef, "got size %lu\n", size);
 
     SetLastError(0xdeadbeef);
     ret = GetKernelObjectSecurity(GetCurrentProcess(), OWNER_SECURITY_INFORMATION, NULL, 0, NULL);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_NOACCESS, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_NOACCESS, "got error %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     size = 0xdeadbeef;
     ret = GetKernelObjectSecurity(GetCurrentProcess(), OWNER_SECURITY_INFORMATION, NULL, 0, &size);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got error %lu\n", GetLastError());
     ok(size > 0 && size != 0xdeadbeef, "got size 0\n");
 
     sd = malloc(size + 1);
@@ -8028,14 +8028,14 @@ static void test_GetKernelObjectSecurity(void)
     SetLastError(0xdeadbeef);
     ret = GetKernelObjectSecurity(GetCurrentProcess(), OWNER_SECURITY_INFORMATION, sd, size - 1, &ret_size);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got error %u\n", GetLastError());
-    ok(ret_size == size, "expected size %u, got %u\n", size, ret_size);
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got error %lu\n", GetLastError());
+    ok(ret_size == size, "expected size %lu, got %lu\n", size, ret_size);
 
     SetLastError(0xdeadbeef);
     ret = GetKernelObjectSecurity(GetCurrentProcess(), OWNER_SECURITY_INFORMATION, sd, size + 1, &ret_size);
     ok(ret, "expected success\n");
-    ok(GetLastError() == 0xdeadbeef, "got error %u\n", GetLastError());
-    ok(ret_size == size, "expected size %u, got %u\n", size, ret_size);
+    ok(GetLastError() == 0xdeadbeef, "got error %lu\n", GetLastError());
+    ok(ret_size == size, "expected size %lu, got %lu\n", size, ret_size);
 
     free(sd);
 
@@ -8045,37 +8045,37 @@ static void test_GetKernelObjectSecurity(void)
     SetLastError(0xdeadbeef);
     ret = GetKernelObjectSecurity(GetCurrentProcess(), 0x100000, NULL, 0, &size);
     ok(!ret, "expected failure\n");
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got error %lu\n", GetLastError());
 
     sd = malloc(size);
     SetLastError(0xdeadbeef);
     ret = GetKernelObjectSecurity(GetCurrentProcess(), 0x100000, sd, size, &ret_size);
     ok(ret, "expected success\n");
-    ok(GetLastError() == 0xdeadbeef, "got error %u\n", GetLastError());
-    ok(ret_size == size, "expected size %u, got %u\n", size, ret_size);
+    ok(GetLastError() == 0xdeadbeef, "got error %lu\n", GetLastError());
+    ok(ret_size == size, "expected size %lu, got %lu\n", size, ret_size);
 
     ret = GetSecurityDescriptorControl(sd, &control, &revision);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     todo_wine ok(control == SE_SELF_RELATIVE, "got control %#x\n", control);
-    ok(revision == SECURITY_DESCRIPTOR_REVISION1, "got revision %u\n", revision);
+    ok(revision == SECURITY_DESCRIPTOR_REVISION1, "got revision %lu\n", revision);
 
     ret = GetSecurityDescriptorOwner(sd, &sid, &defaulted);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ok(!sid, "expected no owner SID\n");
     ok(!defaulted, "expected owner not defaulted\n");
 
     ret = GetSecurityDescriptorGroup(sd, &sid, &defaulted);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ok(!sid, "expected no group SID\n");
     ok(!defaulted, "expected group not defaulted\n");
 
     ret = GetSecurityDescriptorDacl(sd, &present, &acl, &defaulted);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     todo_wine ok(!present, "expected no DACL present\n");
     /* the descriptor is defaulted only on Windows >= 7 */
 
     ret = GetSecurityDescriptorSacl(sd, &present, &acl, &defaulted);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ok(!present, "expected no SACL present\n");
     /* the descriptor is defaulted only on Windows >= 7 */
 
@@ -8089,9 +8089,9 @@ static void check_different_token(HANDLE token1, HANDLE token2)
     BOOL ret;
 
     ret = GetTokenInformation(token1, TokenStatistics, &stats1, sizeof(stats1), &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ret = GetTokenInformation(token2, TokenStatistics, &stats2, sizeof(stats2), &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     ok(memcmp(&stats1.TokenId, &stats2.TokenId, sizeof(LUID)), "expected different IDs\n");
 }
@@ -8106,13 +8106,13 @@ static void test_elevation(void)
 
     ret = OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY | READ_CONTROL | TOKEN_DUPLICATE
             | TOKEN_ASSIGN_PRIMARY | TOKEN_ADJUST_PRIVILEGES | TOKEN_ADJUST_DEFAULT, &token);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     ret = GetTokenInformation(token, TokenElevationType, &type, sizeof(type), &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     orig_type = type;
     ret = GetTokenInformation(token, TokenElevation, &elevation, sizeof(elevation), &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ret = GetTokenInformation(token, TokenLinkedToken, &linked, sizeof(linked), &size);
     if (!ret && GetLastError() == ERROR_NO_SUCH_LOGON_SESSION) /* fails on w2008s64 */
     {
@@ -8120,42 +8120,42 @@ static void test_elevation(void)
         CloseHandle(token);
         return;
     }
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     if (type == TokenElevationTypeDefault)
     {
-        ok(elevation.TokenIsElevated == FALSE, "got elevation %#x\n", elevation.TokenIsElevated);
+        ok(elevation.TokenIsElevated == FALSE, "got elevation %#lx\n", elevation.TokenIsElevated);
         ok(!linked.LinkedToken, "expected no linked token\n");
     }
     else if (type == TokenElevationTypeLimited)
     {
-        ok(elevation.TokenIsElevated == FALSE, "got elevation %#x\n", elevation.TokenIsElevated);
+        ok(elevation.TokenIsElevated == FALSE, "got elevation %#lx\n", elevation.TokenIsElevated);
         ok(!!linked.LinkedToken, "expected a linked token\n");
 
         TEST_GRANTED_ACCESS(linked.LinkedToken, TOKEN_ALL_ACCESS);
         ret = GetTokenInformation(linked.LinkedToken, TokenElevationType, &type, sizeof(type), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(type == TokenElevationTypeFull, "got type %#x\n", type);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(type == TokenElevationTypeFull, "got type %#lx\n", type);
         ret = GetTokenInformation(linked.LinkedToken, TokenElevation, &elevation, sizeof(elevation), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(elevation.TokenIsElevated == TRUE, "got elevation %#x\n", elevation.TokenIsElevated);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(elevation.TokenIsElevated == TRUE, "got elevation %#lx\n", elevation.TokenIsElevated);
         ret = GetTokenInformation(linked.LinkedToken, TokenType, &type, sizeof(type), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(type == TokenImpersonation, "got type %#x\n", type);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(type == TokenImpersonation, "got type %#lx\n", type);
         ret = GetTokenInformation(linked.LinkedToken, TokenImpersonationLevel, &type, sizeof(type), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(type == SecurityIdentification, "got impersonation level %#x\n", type);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(type == SecurityIdentification, "got impersonation level %#lx\n", type);
 
         /* Asking for the linked token again gives us a different token. */
         ret = GetTokenInformation(token, TokenLinkedToken, &linked2, sizeof(linked2), &size);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
 
         ret = GetTokenInformation(linked2.LinkedToken, TokenElevationType, &type, sizeof(type), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(type == TokenElevationTypeFull, "got type %#x\n", type);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(type == TokenElevationTypeFull, "got type %#lx\n", type);
         ret = GetTokenInformation(linked2.LinkedToken, TokenElevation, &elevation, sizeof(elevation), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(elevation.TokenIsElevated == TRUE, "got elevation %#x\n", elevation.TokenIsElevated);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(elevation.TokenIsElevated == TRUE, "got elevation %#lx\n", elevation.TokenIsElevated);
 
         check_different_token(linked.LinkedToken, linked2.LinkedToken);
 
@@ -8163,14 +8163,14 @@ static void test_elevation(void)
 
         /* Asking for the linked token's linked token gives us a new limited token. */
         ret = GetTokenInformation(linked.LinkedToken, TokenLinkedToken, &linked2, sizeof(linked2), &size);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
 
         ret = GetTokenInformation(linked2.LinkedToken, TokenElevationType, &type, sizeof(type), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(type == TokenElevationTypeLimited, "got type %#x\n", type);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(type == TokenElevationTypeLimited, "got type %#lx\n", type);
         ret = GetTokenInformation(linked2.LinkedToken, TokenElevation, &elevation, sizeof(elevation), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(elevation.TokenIsElevated == FALSE, "got elevation %#x\n", elevation.TokenIsElevated);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(elevation.TokenIsElevated == FALSE, "got elevation %#lx\n", elevation.TokenIsElevated);
 
         check_different_token(token, linked2.LinkedToken);
 
@@ -8181,42 +8181,42 @@ static void test_elevation(void)
         type = TokenElevationTypeLimited;
         ret = SetTokenInformation(token, TokenElevationType, &type, sizeof(type));
         ok(!ret, "expected failure\n");
-        ok(GetLastError() == ERROR_INVALID_PARAMETER, "got error %u\n", GetLastError());
+        ok(GetLastError() == ERROR_INVALID_PARAMETER, "got error %lu\n", GetLastError());
 
         elevation.TokenIsElevated = FALSE;
         ret = SetTokenInformation(token, TokenElevation, &elevation, sizeof(elevation));
         ok(!ret, "expected failure\n");
-        ok(GetLastError() == ERROR_INVALID_PARAMETER, "got error %u\n", GetLastError());
+        ok(GetLastError() == ERROR_INVALID_PARAMETER, "got error %lu\n", GetLastError());
     }
     else
     {
-        ok(elevation.TokenIsElevated == TRUE, "got elevation %#x\n", elevation.TokenIsElevated);
+        ok(elevation.TokenIsElevated == TRUE, "got elevation %#lx\n", elevation.TokenIsElevated);
         ok(!!linked.LinkedToken, "expected a linked token\n");
 
         TEST_GRANTED_ACCESS(linked.LinkedToken, TOKEN_ALL_ACCESS);
         ret = GetTokenInformation(linked.LinkedToken, TokenElevationType, &type, sizeof(type), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(type == TokenElevationTypeLimited, "got type %#x\n", type);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(type == TokenElevationTypeLimited, "got type %#lx\n", type);
         ret = GetTokenInformation(linked.LinkedToken, TokenElevation, &elevation, sizeof(elevation), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(elevation.TokenIsElevated == FALSE, "got elevation %#x\n", elevation.TokenIsElevated);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(elevation.TokenIsElevated == FALSE, "got elevation %#lx\n", elevation.TokenIsElevated);
         ret = GetTokenInformation(linked.LinkedToken, TokenType, &type, sizeof(type), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(type == TokenImpersonation, "got type %#x\n", type);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(type == TokenImpersonation, "got type %#lx\n", type);
         ret = GetTokenInformation(linked.LinkedToken, TokenImpersonationLevel, &type, sizeof(type), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(type == SecurityIdentification, "got impersonation level %#x\n", type);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(type == SecurityIdentification, "got impersonation level %#lx\n", type);
 
         /* Asking for the linked token again gives us a different token. */
         ret = GetTokenInformation(token, TokenLinkedToken, &linked2, sizeof(linked2), &size);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
 
         ret = GetTokenInformation(linked2.LinkedToken, TokenElevationType, &type, sizeof(type), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(type == TokenElevationTypeLimited, "got type %#x\n", type);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(type == TokenElevationTypeLimited, "got type %#lx\n", type);
         ret = GetTokenInformation(linked2.LinkedToken, TokenElevation, &elevation, sizeof(elevation), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(elevation.TokenIsElevated == FALSE, "got elevation %#x\n", elevation.TokenIsElevated);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(elevation.TokenIsElevated == FALSE, "got elevation %#lx\n", elevation.TokenIsElevated);
 
         check_different_token(linked.LinkedToken, linked2.LinkedToken);
 
@@ -8224,14 +8224,14 @@ static void test_elevation(void)
 
         /* Asking for the linked token's linked token gives us a new elevated token. */
         ret = GetTokenInformation(linked.LinkedToken, TokenLinkedToken, &linked2, sizeof(linked2), &size);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
 
         ret = GetTokenInformation(linked2.LinkedToken, TokenElevationType, &type, sizeof(type), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(type == TokenElevationTypeFull, "got type %#x\n", type);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(type == TokenElevationTypeFull, "got type %#lx\n", type);
         ret = GetTokenInformation(linked2.LinkedToken, TokenElevation, &elevation, sizeof(elevation), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(elevation.TokenIsElevated == TRUE, "got elevation %#x\n", elevation.TokenIsElevated);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(elevation.TokenIsElevated == TRUE, "got elevation %#lx\n", elevation.TokenIsElevated);
 
         check_different_token(token, linked2.LinkedToken);
 
@@ -8242,33 +8242,33 @@ static void test_elevation(void)
         type = TokenElevationTypeLimited;
         ret = SetTokenInformation(token, TokenElevationType, &type, sizeof(type));
         ok(!ret, "expected failure\n");
-        todo_wine ok(GetLastError() == ERROR_INVALID_PARAMETER, "got error %u\n", GetLastError());
+        todo_wine ok(GetLastError() == ERROR_INVALID_PARAMETER, "got error %lu\n", GetLastError());
 
         elevation.TokenIsElevated = FALSE;
         ret = SetTokenInformation(token, TokenElevation, &elevation, sizeof(elevation));
         ok(!ret, "expected failure\n");
-        todo_wine ok(GetLastError() == ERROR_INVALID_PARAMETER, "got error %u\n", GetLastError());
+        todo_wine ok(GetLastError() == ERROR_INVALID_PARAMETER, "got error %lu\n", GetLastError());
     }
 
     ret = DuplicateTokenEx(token, TOKEN_ALL_ACCESS, NULL, SecurityAnonymous, TokenPrimary, &token2);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ret = GetTokenInformation(token2, TokenElevationType, &type, sizeof(type), &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ok(type == orig_type, "expected same type\n");
     ret = GetTokenInformation(token2, TokenElevation, &elevation, sizeof(elevation), &size);
-    ok(ret, "got error %u\n", GetLastError());
-    ok(elevation.TokenIsElevated == (type == TokenElevationTypeFull), "got elevation %#x\n", elevation.TokenIsElevated);
+    ok(ret, "got error %lu\n", GetLastError());
+    ok(elevation.TokenIsElevated == (type == TokenElevationTypeFull), "got elevation %#lx\n", elevation.TokenIsElevated);
     ret = GetTokenInformation(token2, TokenLinkedToken, &linked, sizeof(linked), &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     if (type == TokenElevationTypeDefault)
     {
         ok(!linked.LinkedToken, "expected no linked token\n");
         ret = GetTokenInformation(linked.LinkedToken, TokenType, &type, sizeof(type), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(type == TokenImpersonation, "got type %#x\n", type);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(type == TokenImpersonation, "got type %#lx\n", type);
         ret = GetTokenInformation(linked.LinkedToken, TokenImpersonationLevel, &type, sizeof(type), &size);
-        ok(ret, "got error %u\n", GetLastError());
-        ok(type == SecurityIdentification, "got impersonation level %#x\n", type);
+        ok(ret, "got error %lu\n", GetLastError());
+        ok(type == SecurityIdentification, "got impersonation level %#lx\n", type);
         CloseHandle(linked.LinkedToken);
     }
     else
@@ -8276,15 +8276,15 @@ static void test_elevation(void)
     CloseHandle(token2);
 
     ret = CreateRestrictedToken(token, 0, 0, NULL, 0, NULL, 0, NULL, &token2);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ret = GetTokenInformation(token2, TokenElevationType, &type, sizeof(type), &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ok(type == orig_type, "expected same type\n");
     ret = GetTokenInformation(token2, TokenElevation, &elevation, sizeof(elevation), &size);
-    ok(ret, "got error %u\n", GetLastError());
-    ok(elevation.TokenIsElevated == (type == TokenElevationTypeFull), "got elevation %#x\n", elevation.TokenIsElevated);
+    ok(ret, "got error %lu\n", GetLastError());
+    ok(elevation.TokenIsElevated == (type == TokenElevationTypeFull), "got elevation %#lx\n", elevation.TokenIsElevated);
     ret = GetTokenInformation(token2, TokenLinkedToken, &linked, sizeof(linked), &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     if (type == TokenElevationTypeDefault)
         ok(!linked.LinkedToken, "expected no linked token\n");
     else
@@ -8308,56 +8308,56 @@ static void test_elevation(void)
 
         privs.PrivilegeCount = 1;
         ret = LookupPrivilegeValueA(NULL, "SeChangeNotifyPrivilege", &privs.Privileges[0].Luid);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
         privs.Privileges[0].Attributes = SE_PRIVILEGE_REMOVED;
         ret = AdjustTokenPrivileges(token, FALSE, &privs, sizeof(prev_privs_buffer), prev_privs, &size);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
 
         priv_set.PrivilegeCount = 1;
         priv_set.Control = 0;
         priv_set.Privilege[0] = privs.Privileges[0];
         ret = PrivilegeCheck(token, &priv_set, &is_member);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
         ok(!is_member, "not a member\n");
 
         ret = GetTokenInformation(token, TokenLinkedToken, &linked, sizeof(linked), &size);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
 
         ret = PrivilegeCheck(linked.LinkedToken, &priv_set, &is_member);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
         ok(is_member, "not a member\n");
 
         CloseHandle(linked.LinkedToken);
 
         ret = AdjustTokenPrivileges(token, FALSE, prev_privs, 0, NULL, NULL);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
 
         /* Linked tokens do not preserve default DACL modifications. */
 
         ret = GetTokenInformation(token, TokenDefaultDacl, prev_acl, sizeof(prev_acl_buffer), &size);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
         ok(prev_acl->DefaultDacl->AceCount, "expected non-empty default DACL\n");
 
         InitializeAcl(&acl, sizeof(acl), ACL_REVISION);
         default_acl.DefaultDacl = &acl;
         ret = SetTokenInformation(token, TokenDefaultDacl, &default_acl, sizeof(default_acl));
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
 
         ret = GetTokenInformation(token, TokenDefaultDacl, ret_acl, sizeof(acl_buffer), &size);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
         ok(!ret_acl->DefaultDacl->AceCount, "expected empty default DACL\n");
 
         ret = GetTokenInformation(token, TokenLinkedToken, &linked, sizeof(linked), &size);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
 
         ret = GetTokenInformation(linked.LinkedToken, TokenDefaultDacl, ret_acl, sizeof(acl_buffer), &size);
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
         ok(ret_acl->DefaultDacl->AceCount, "expected non-empty default DACL\n");
 
         CloseHandle(linked.LinkedToken);
 
         ret = SetTokenInformation(token, TokenDefaultDacl, prev_acl, sizeof(*prev_acl));
-        ok(ret, "got error %u\n", GetLastError());
+        ok(ret, "got error %lu\n", GetLastError());
     }
 
     CloseHandle(token);
@@ -8383,7 +8383,7 @@ static void test_group_as_file_owner(void)
     CreateWellKnownSid(WinBuiltinAdministratorsSid, NULL, admin_sid, &size);
 
     ret = CheckTokenMembership(NULL, admin_sid, &present);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     if (!present)
     {
         skip("user is not an administrator\n");
@@ -8394,41 +8394,41 @@ static void test_group_as_file_owner(void)
     sprintf(path, "%s\\testdir", temp_path);
 
     ret = CreateDirectoryA(path, NULL);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     file = CreateFileA(path, FILE_ALL_ACCESS, 0, NULL, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0);
-    ok(file != INVALID_HANDLE_VALUE, "got error %u\n", GetLastError());
+    ok(file != INVALID_HANDLE_VALUE, "got error %lu\n", GetLastError());
 
     ret = GetKernelObjectSecurity(file, DACL_SECURITY_INFORMATION, sd_buffer, sizeof(sd_buffer), &size);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     ret = GetSecurityDescriptorDacl(sd, &present, &dacl, &defaulted);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     InitializeSecurityDescriptor(&new_sd, SECURITY_DESCRIPTOR_REVISION);
 
     ret = SetSecurityDescriptorOwner(&new_sd, admin_sid, FALSE);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     ret = GetSecurityDescriptorDacl(sd, &present, &dacl, &defaulted);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     ret = SetSecurityDescriptorDacl(&new_sd, present, dacl, defaulted);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     ret = SetKernelObjectSecurity(file, OWNER_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION, &new_sd);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     CloseHandle(file);
 
     sprintf(path, "%s\\testdir\\subdir", temp_path);
     ret = CreateDirectoryA(path, NULL);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 
     ret = RemoveDirectoryA(path);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
     sprintf(path, "%s\\testdir", temp_path);
     ret = RemoveDirectoryA(path);
-    ok(ret, "got error %u\n", GetLastError());
+    ok(ret, "got error %lu\n", GetLastError());
 }
 
 START_TEST(security)
diff --git a/dlls/advapi32/tests/service.c b/dlls/advapi32/tests/service.c
index 21704048778..fbb18b048a0 100644
--- a/dlls/advapi32/tests/service.c
+++ b/dlls/advapi32/tests/service.c
@@ -77,21 +77,21 @@ static void test_open_scm(void)
     /* No access rights */
     SetLastError(0xdeadbeef);
     scm_handle = OpenSCManagerA(NULL, NULL, 0);
-    ok(scm_handle != NULL, "Expected success, got error %u\n", GetLastError());
+    ok(scm_handle != NULL, "Expected success, got error %lu\n", GetLastError());
     CloseServiceHandle(scm_handle);
 
     /* Unknown database name */
     SetLastError(0xdeadbeef);
     scm_handle = OpenSCManagerA(NULL, "DoesNotExist", SC_MANAGER_CONNECT);
     ok(!scm_handle, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_NAME, "Expected ERROR_INVALID_NAME, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_NAME, "Expected ERROR_INVALID_NAME, got %ld\n", GetLastError());
     CloseServiceHandle(scm_handle); /* Just in case */
 
     /* MSDN says only ServiceActive is allowed, or NULL */
     SetLastError(0xdeadbeef);
     scm_handle = OpenSCManagerA(NULL, SERVICES_FAILED_DATABASEA, SC_MANAGER_CONNECT);
     ok(!scm_handle, "Expected failure\n");
-    ok(GetLastError() == ERROR_DATABASE_DOES_NOT_EXIST, "Expected ERROR_DATABASE_DOES_NOT_EXIST, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_DATABASE_DOES_NOT_EXIST, "Expected ERROR_DATABASE_DOES_NOT_EXIST, got %ld\n", GetLastError());
     CloseServiceHandle(scm_handle); /* Just in case */
 
     /* Remote unknown host */
@@ -101,21 +101,21 @@ static void test_open_scm(void)
     {
     ok(!scm_handle, "Expected failure\n");
     ok(GetLastError() == RPC_S_SERVER_UNAVAILABLE || GetLastError() == RPC_S_INVALID_NET_ADDR /* w2k8 */,
-       "Expected RPC_S_SERVER_UNAVAILABLE or RPC_S_INVALID_NET_ADDR, got %d\n", GetLastError());
+       "Expected RPC_S_SERVER_UNAVAILABLE or RPC_S_INVALID_NET_ADDR, got %ld\n", GetLastError());
     }
     CloseServiceHandle(scm_handle); /* Just in case */
 
     /* Proper call with an empty hostname */
     scm_handle = OpenSCManagerA("", SERVICES_ACTIVE_DATABASEA, SC_MANAGER_CONNECT);
-    ok(scm_handle != NULL, "Expected success, got error %u\n", GetLastError());
+    ok(scm_handle != NULL, "Expected success, got error %lu\n", GetLastError());
     CloseServiceHandle(scm_handle);
 
     /* Again a correct one */
     SetLastError(0xdeadbeef);
     scm_handle = OpenSCManagerA(NULL, NULL, SC_MANAGER_CONNECT);
     ok(GetLastError() == ERROR_SUCCESS || broken(GetLastError() == ERROR_IO_PENDING) /* win2k */,
-       "Expected ERROR_SUCCESS, got %u\n", GetLastError());
-    ok(scm_handle != NULL, "Expected success, got error %u\n", GetLastError());
+       "Expected ERROR_SUCCESS, got %lu\n", GetLastError());
+    ok(scm_handle != NULL, "Expected success, got error %lu\n", GetLastError());
     CloseServiceHandle(scm_handle);
 }
 
@@ -129,7 +129,7 @@ static void test_open_svc(void)
     SetLastError(0xdeadbeef);
     svc_handle = OpenServiceA(NULL, NULL, 0);
     ok(!svc_handle, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     /* TODO: Add some tests with invalid handles. These produce errors on Windows but crash on Wine */
 
@@ -140,7 +140,7 @@ static void test_open_svc(void)
     ok(!svc_handle, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS   /* W2K, XP, W2K3, Vista */ ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
     CloseServiceHandle(scm_handle);
 
     /* Nonexistent service */
@@ -148,7 +148,7 @@ static void test_open_svc(void)
     SetLastError(0xdeadbeef);
     svc_handle = OpenServiceA(scm_handle, "deadbeef", GENERIC_READ);
     ok(!svc_handle, "Expected failure\n");
-    ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST, "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST, "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
     CloseServiceHandle(scm_handle);
 
     /* Proper SCM handle but different access rights */
@@ -159,7 +159,7 @@ static void test_open_svc(void)
         skip("Not enough rights to get a handle to the service\n");
     else
     {
-        ok(svc_handle != NULL, "Expected success, got error %u\n", GetLastError());
+        ok(svc_handle != NULL, "Expected success, got error %lu\n", GetLastError());
         CloseServiceHandle(svc_handle);
     }
 
@@ -183,7 +183,7 @@ static void test_open_svc(void)
     SetLastError(0xdeadbeef);
     svc_handle = OpenServiceA(scm_handle, displayname, GENERIC_READ);
     ok(!svc_handle, "Expected failure\n");
-    ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST, "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST, "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
     /* Just in case */
     CloseServiceHandle(svc_handle);
 
@@ -216,7 +216,7 @@ static void test_create_delete_svc(void)
     SetLastError(0xdeadbeef);
     svc_handle1 = CreateServiceA(NULL, NULL, NULL, 0, 0, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle1, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     scm_handle = OpenSCManagerA(NULL, NULL, SC_MANAGER_CONNECT);
 
@@ -226,7 +226,7 @@ static void test_create_delete_svc(void)
     ok(!svc_handle1, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS   /* W2K, W2K3, XP, Vista */ ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* Now with a servicename */
     SetLastError(0xdeadbeef);
@@ -234,7 +234,7 @@ static void test_create_delete_svc(void)
     ok(!svc_handle1, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS   /* W2K, W2K3, XP, Vista */ ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* Or just a binary name */
     SetLastError(0xdeadbeef);
@@ -242,24 +242,24 @@ static void test_create_delete_svc(void)
     ok(!svc_handle1, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS   /* W2K, W2K3, XP, Vista */ ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* Both servicename and binary name (We only have connect rights) */
     SetLastError(0xdeadbeef);
     svc_handle1 = CreateServiceA(scm_handle, servicename, NULL, 0, 0, 0, 0, pathname, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle1, "Expected failure\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "Expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "Expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
 
     /* They can even be empty at this stage of parameter checking */
     SetLastError(0xdeadbeef);
     svc_handle1 = CreateServiceA(scm_handle, empty, NULL, 0, 0, 0, 0, pathname, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle1, "Expected failure\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "Expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "Expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     svc_handle1 = CreateServiceA(scm_handle, servicename, NULL, 0, 0, 0, 0, empty, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle1, "Expected failure\n");
-    ok(GetLastError() == ERROR_ACCESS_DENIED, "Expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_ACCESS_DENIED, "Expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
 
     /* Open the Service Control Manager with minimal rights for creation
      * (Verified with 'SC_MANAGER_ALL_ACCESS &~ SC_MANAGER_CREATE_SERVICE')
@@ -279,17 +279,17 @@ static void test_create_delete_svc(void)
     SetLastError(0xdeadbeef);
     svc_handle1 = CreateServiceA(scm_handle, empty, NULL, 0, 0, 0, 0, pathname, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle1, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_NAME, "Expected ERROR_INVALID_NAME, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_NAME, "Expected ERROR_INVALID_NAME, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     svc_handle1 = CreateServiceA(scm_handle, servicename, NULL, 0, 0, 0, 0, empty, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle1, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     svc_handle1 = CreateServiceA(scm_handle, empty, NULL, 0, 0, 0, 0, empty, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle1, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_NAME, "Expected ERROR_INVALID_NAME, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_NAME, "Expected ERROR_INVALID_NAME, got %ld\n", GetLastError());
 
     /* Valid call (as we will see later) except for the empty binary name (to proof it's indeed
      * an ERROR_INVALID_PARAMETER)
@@ -298,7 +298,7 @@ static void test_create_delete_svc(void)
     svc_handle1 = CreateServiceA(scm_handle, servicename, NULL, 0, SERVICE_WIN32_OWN_PROCESS,
                                  SERVICE_DISABLED, 0, empty, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle1, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* Windows checks if the 'service type', 'access type' and the combination of them are valid, so let's test that */
 
@@ -309,14 +309,14 @@ static void test_create_delete_svc(void)
     svc_handle1 = CreateServiceA(scm_handle, servicename, NULL, GENERIC_ALL, SERVICE_WIN32_OWN_PROCESS | SERVICE_WIN32_SHARE_PROCESS,
                                  SERVICE_DISABLED, 0, pathname, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle1, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* Illegal (SERVICE_INTERACTIVE_PROCESS is only allowed with SERVICE_WIN32_OWN_PROCESS or SERVICE_WIN32_SHARE_PROCESS) */
     SetLastError(0xdeadbeef);
     svc_handle1 = CreateServiceA(scm_handle, servicename, NULL, GENERIC_ALL, SERVICE_FILE_SYSTEM_DRIVER | SERVICE_INTERACTIVE_PROCESS,
                                  SERVICE_DISABLED, 0, pathname, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle1, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* Illegal (this combination is only allowed when the LocalSystem account (ServiceStartName) is used)
      * Not having a correct account would have resulted in an ERROR_INVALID_SERVICE_ACCOUNT.
@@ -326,7 +326,7 @@ static void test_create_delete_svc(void)
                                  SERVICE_DISABLED, 0, pathname, NULL, NULL, NULL, account, password);
     ok(!svc_handle1, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_PARAMETER || GetLastError() == ERROR_INVALID_SERVICE_ACCOUNT,
-       "Expected ERROR_INVALID_PARAMETER or ERROR_INVALID_SERVICE_ACCOUNT, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_PARAMETER or ERROR_INVALID_SERVICE_ACCOUNT, got %ld\n", GetLastError());
 
     /* Illegal (start-type is not a mask and should only be one of the possibilities)
      * Remark : 'OR'-ing them could result in a valid possibility (but doesn't make sense as
@@ -336,36 +336,36 @@ static void test_create_delete_svc(void)
     svc_handle1 = CreateServiceA(scm_handle, servicename, NULL, GENERIC_ALL, SERVICE_WIN32_OWN_PROCESS,
                                  SERVICE_AUTO_START | SERVICE_DISABLED, 0, pathname, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle1, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* Illegal (SERVICE_BOOT_START and SERVICE_SYSTEM_START are only allowed for driver services) */
     SetLastError(0xdeadbeef);
     svc_handle1 = CreateServiceA(scm_handle, servicename, NULL, 0, SERVICE_WIN32_OWN_PROCESS,
                                  SERVICE_BOOT_START, 0, pathname, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle1, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* Test if ServiceType can be a combined one for drivers */
     SetLastError(0xdeadbeef);
     svc_handle1 = CreateServiceA(scm_handle, servicename, NULL, 0, SERVICE_KERNEL_DRIVER | SERVICE_FILE_SYSTEM_DRIVER,
                                  SERVICE_BOOT_START, 0, pathname, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle1, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* Test duplicate service names */
     svc_handle1 = CreateServiceA(scm_handle, "winetest_dupname", "winetest_display", DELETE,
             SERVICE_WIN32_OWN_PROCESS, SERVICE_AUTO_START, 0, pathname, NULL, NULL, NULL, NULL, NULL);
-    ok(!!svc_handle1, "Failed to create service, error %u\n", GetLastError());
+    ok(!!svc_handle1, "Failed to create service, error %lu\n", GetLastError());
 
     svc_handle2 = CreateServiceA(scm_handle, "winetest_dupname", NULL, 0,
             SERVICE_WIN32_OWN_PROCESS, SERVICE_AUTO_START, 0, pathname, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle2, "Expected failure\n");
-    ok(GetLastError() == ERROR_SERVICE_EXISTS, "Got wrong error %u\n", GetLastError());
+    ok(GetLastError() == ERROR_SERVICE_EXISTS, "Got wrong error %lu\n", GetLastError());
 
     svc_handle2 = CreateServiceA(scm_handle, "winetest_dupname2", "winetest_dupname", DELETE,
             SERVICE_WIN32_OWN_PROCESS, SERVICE_AUTO_START, 0, pathname, NULL, NULL, NULL, NULL, NULL);
     todo_wine ok(!svc_handle2, "Expected failure\n");
-    todo_wine ok(GetLastError() == ERROR_DUPLICATE_SERVICE_NAME, "Got wrong error %u\n", GetLastError());
+    todo_wine ok(GetLastError() == ERROR_DUPLICATE_SERVICE_NAME, "Got wrong error %lu\n", GetLastError());
     if (svc_handle2)
     {
         DeleteService(svc_handle2);
@@ -378,18 +378,18 @@ static void test_create_delete_svc(void)
     {
         size = sizeof(buffer);
         ret = GetServiceKeyNameA(scm_handle, "winetest_display", buffer, &size);
-        ok(ret, "Failed to get key name, error %u\n", GetLastError());
+        ok(ret, "Failed to get key name, error %lu\n", GetLastError());
         ok(!strcmp(buffer, "winetest_dupname"), "Got wrong name \"%s\"\n", buffer);
 
         ret = DeleteService(svc_handle2);
-        ok(ret, "Failed to delete service, error %u\n", GetLastError());
+        ok(ret, "Failed to delete service, error %lu\n", GetLastError());
         CloseServiceHandle(svc_handle2);
     }
     else
-        ok(GetLastError() == ERROR_DUPLICATE_SERVICE_NAME, "Got wrong error %u\n", GetLastError());
+        ok(GetLastError() == ERROR_DUPLICATE_SERVICE_NAME, "Got wrong error %lu\n", GetLastError());
 
     ret = DeleteService(svc_handle1);
-    ok(ret, "Failed to delete service, error %u\n", GetLastError());
+    ok(ret, "Failed to delete service, error %lu\n", GetLastError());
     CloseServiceHandle(svc_handle1);
 
     /* Windows doesn't care about the access rights for creation (which makes
@@ -399,14 +399,14 @@ static void test_create_delete_svc(void)
     SetLastError(0xdeadbeef);
     svc_handle1 = CreateServiceA(scm_handle, servicename, NULL, 0, SERVICE_WIN32_OWN_PROCESS | SERVICE_INTERACTIVE_PROCESS,
                                  SERVICE_DISABLED, 0, pathname, NULL, NULL, NULL, NULL, NULL);
-    ok(svc_handle1 != NULL, "Could not create the service : %d\n", GetLastError());
+    ok(svc_handle1 != NULL, "Could not create the service : %ld\n", GetLastError());
 
     /* DeleteService however must have proper rights */
     SetLastError(0xdeadbeef);
     ret = DeleteService(svc_handle1);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_ACCESS_DENIED,
-       "Expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
+       "Expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
 
     /* Open the service with minimal rights for deletion.
      * (Verified with 'SERVICE_ALL_ACCESS &~ DELETE')
@@ -417,11 +417,11 @@ static void test_create_delete_svc(void)
     /* Now that we have the proper rights, we should be able to delete */
     SetLastError(0xdeadbeef);
     ret = DeleteService(svc_handle1);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
 
     /* Service is marked for delete, but handle is still open. Try to open service again. */
     svc_handle2 = OpenServiceA(scm_handle, servicename, GENERIC_READ);
-    ok(svc_handle2 != NULL, "got %p, error %u\n", svc_handle2, GetLastError());
+    ok(svc_handle2 != NULL, "got %p, error %lu\n", svc_handle2, GetLastError());
     CloseServiceHandle(svc_handle2);
 
     CloseServiceHandle(svc_handle1);
@@ -432,7 +432,7 @@ static void test_create_delete_svc(void)
     ret = DeleteService(NULL);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_HANDLE,
-        "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+        "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 }
 
 static void test_get_displayname(void)
@@ -455,7 +455,7 @@ static void test_get_displayname(void)
     ret = GetServiceDisplayNameA(NULL, NULL, NULL, &displaysize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_HANDLE,
-       "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     scm_handle = OpenSCManagerA(NULL, NULL, SC_MANAGER_CONNECT);
 
@@ -464,7 +464,7 @@ static void test_get_displayname(void)
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS   /* W2K, XP, W2K3, Vista */ ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     displaysize = sizeof(displayname);
@@ -472,7 +472,7 @@ static void test_get_displayname(void)
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS   /* W2K, XP, W2K3, Vista */ ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* Test for nonexistent service */
     SetLastError(0xdeadbeef);
@@ -480,22 +480,22 @@ static void test_get_displayname(void)
     ret = GetServiceDisplayNameA(scm_handle, deadbeef, NULL, &displaysize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = GetServiceDisplayNameA(scm_handle, deadbeef, NULL, &displaysize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
-    todo_wine ok(displaysize == 1, "Service size expected 1, got %d\n", displaysize);
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
+    todo_wine ok(displaysize == 1, "Service size expected 1, got %ld\n", displaysize);
 
     displaysize = 15;
     strcpy(displayname, "ABC");
     ret = GetServiceDisplayNameA(scm_handle, deadbeef, displayname, &displaysize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
-    todo_wine ok(displaysize == 15, "Service size expected 15, got %d\n", displaysize);
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
+    todo_wine ok(displaysize == 15, "Service size expected 15, got %ld\n", displaysize);
     ok(displayname[0] == 0, "Service name not empty\n");
 
     displaysize = 15;
@@ -503,8 +503,8 @@ static void test_get_displayname(void)
     ret = GetServiceDisplayNameW(scm_handle, deadbeefW, displaynameW, &displaysize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
-    ok(displaysize == 15, "Service size expected 15, got %d\n", displaysize);
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
+    ok(displaysize == 15, "Service size expected 15, got %ld\n", displaysize);
     ok(displaynameW[0] == 0, "Service name not empty\n");
 
     displaysize = 0;
@@ -512,17 +512,17 @@ static void test_get_displayname(void)
     ret = GetServiceDisplayNameA(scm_handle, deadbeef, displayname, &displaysize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
-    todo_wine ok(displaysize == 1, "Service size expected 1, got %d\n", displaysize);
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
+    todo_wine ok(displaysize == 1, "Service size expected 1, got %ld\n", displaysize);
     ok(displayname[0] == 'A', "Service name changed\n");
 
     displaysize = 0;
     lstrcpyW( displaynameW, abcW );
     ret = GetServiceDisplayNameW(scm_handle, deadbeefW, displaynameW, &displaysize);
     ok(!ret, "Expected failure\n");
-    ok(displaysize == 2, "Service size expected 2, got %d\n", displaysize);
+    ok(displaysize == 2, "Service size expected 2, got %ld\n", displaysize);
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
     ok(displaynameW[0] == 'A', "Service name changed\n");
 
     displaysize = 1;
@@ -530,17 +530,17 @@ static void test_get_displayname(void)
     ret = GetServiceDisplayNameA(scm_handle, deadbeef, displayname, &displaysize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
-    todo_wine ok(displaysize == 1, "Service size expected 1, got %d\n", displaysize);
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
+    todo_wine ok(displaysize == 1, "Service size expected 1, got %ld\n", displaysize);
     ok(displayname[0] == 0, "Service name not empty\n");
 
     displaysize = 1;
     lstrcpyW( displaynameW, abcW );
     ret = GetServiceDisplayNameW(scm_handle, deadbeefW, displaynameW, &displaysize);
     ok(!ret, "Expected failure\n");
-    ok(displaysize == 2, "Service size expected 2, got %d\n", displaysize);
+    ok(displaysize == 2, "Service size expected 2, got %ld\n", displaysize);
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
     ok(displaynameW[0] == 'A', "Service name changed\n");
 
     displaysize = 2;
@@ -548,17 +548,17 @@ static void test_get_displayname(void)
     ret = GetServiceDisplayNameA(scm_handle, deadbeef, displayname, &displaysize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
-    todo_wine ok(displaysize == 2, "Service size expected 2, got %d\n", displaysize);
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
+    todo_wine ok(displaysize == 2, "Service size expected 2, got %ld\n", displaysize);
     ok(displayname[0] == 0, "Service name not empty\n");
 
     displaysize = 2;
     lstrcpyW( displaynameW, abcW );
     ret = GetServiceDisplayNameW(scm_handle, deadbeefW, displaynameW, &displaysize);
     ok(!ret, "Expected failure\n");
-    ok(displaysize == 2, "Service size expected 2, got %d\n", displaysize);
+    ok(displaysize == 2, "Service size expected 2, got %ld\n", displaysize);
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
     ok(displaynameW[0] == 0, "Service name not empty\n");
 
     /* Check if 'Spooler' exists */
@@ -577,15 +577,15 @@ static void test_get_displayname(void)
     ret = GetServiceDisplayNameA(scm_handle, spooler, NULL, &displaysize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
     tempsize = displaysize;
 
     displaysize = 0;
     ret = GetServiceDisplayNameA(scm_handle, spooler, NULL, &displaysize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
-    ok(displaysize == tempsize, "Buffer size mismatch (%d vs %d)\n", tempsize, displaysize);
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
+    ok(displaysize == tempsize, "Buffer size mismatch (%ld vs %ld)\n", tempsize, displaysize);
 
     /* Buffer is too small */
     SetLastError(0xdeadbeef);
@@ -594,7 +594,7 @@ static void test_get_displayname(void)
     ok(!ret, "Expected failure\n");
     ok(displaysize == tempsize, "Expected the needed buffersize\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     /* First try with a buffer that should be big enough to hold
      * the ANSI string (and terminating character). This succeeds on Windows
@@ -603,21 +603,21 @@ static void test_get_displayname(void)
     SetLastError(0xdeadbeef);
     displaysize = (tempsize / 2) + 1;
     ret = GetServiceDisplayNameA(scm_handle, spooler, displayname, &displaysize);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     ok(displaysize == ((tempsize / 2) + 1), "Expected no change for the needed buffer size\n");
 
     /* Now with the original returned size */
     SetLastError(0xdeadbeef);
     displaysize = tempsize;
     ret = GetServiceDisplayNameA(scm_handle, spooler, displayname, &displaysize);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     ok(displaysize == tempsize, "Expected no change for the needed buffer size\n");
 
     /* And with a bigger than needed buffer */
     SetLastError(0xdeadbeef);
     displaysize = tempsize * 2;
     ret = GetServiceDisplayNameA(scm_handle, spooler, displayname, &displaysize);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     /* Test that shows that if the buffersize is enough, it's not changed */
     ok(displaysize == tempsize * 2, "Expected no change for the needed buffer size\n");
     ok(strlen(displayname) == tempsize/2,
@@ -629,7 +629,7 @@ static void test_get_displayname(void)
     ret = GetServiceDisplayNameW(scm_handle, spoolerW, NULL, &displaysize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     /* Buffer is too small */
     SetLastError(0xdeadbeef);
@@ -639,7 +639,7 @@ static void test_get_displayname(void)
     ok(!ret, "Expected failure\n");
     ok(displaysize == tempsizeW, "Expected the needed buffersize\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     /* Now with the original returned size */
     SetLastError(0xdeadbeef);
@@ -648,13 +648,13 @@ static void test_get_displayname(void)
     ok(!ret, "Expected failure\n");
     ok(displaysize == tempsizeW, "Expected the needed buffersize\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     /* And with a bigger than needed buffer */
     SetLastError(0xdeadbeef);
     displaysize = tempsizeW + 1; /* This caters for the null terminating character */
     ret = GetServiceDisplayNameW(scm_handle, spoolerW, displaynameW, &displaysize);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     ok(displaysize == tempsizeW, "Expected the needed buffersize\n");
     ok(lstrlenW(displaynameW) == displaysize,
        "Expected the buffer to be the length of the string\n") ;
@@ -678,7 +678,7 @@ static void test_get_displayname(void)
     svc_handle = CreateServiceA(scm_handle, servicename, NULL, DELETE,
                                 SERVICE_WIN32_OWN_PROCESS | SERVICE_INTERACTIVE_PROCESS,
                                 SERVICE_DISABLED, 0, pathname, NULL, NULL, NULL, NULL, NULL);
-    ok(svc_handle != NULL, "Could not create the service : %d\n", GetLastError());
+    ok(svc_handle != NULL, "Could not create the service : %ld\n", GetLastError());
     if (!svc_handle)
     {
         CloseServiceHandle(scm_handle);
@@ -693,7 +693,7 @@ static void test_get_displayname(void)
     ok(displaysize == strlen(servicename) * 2,
        "Expected the displaysize to be twice the size of the servicename\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     /* Buffer is too small */
     SetLastError(0xdeadbeef);
@@ -703,18 +703,18 @@ static void test_get_displayname(void)
     ok(!ret, "Expected failure\n");
     ok(displaysize == tempsize, "Expected the needed buffersize\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     /* Get the displayname */
     SetLastError(0xdeadbeef);
     ret = GetServiceDisplayNameA(scm_handle, servicename, displayname, &displaysize);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     ok(!lstrcmpiA(displayname, servicename),
        "Expected displayname to be %s, got %s\n", servicename, displayname);
 
     /* Delete the service */
     ret = DeleteService(svc_handle);
-    ok(ret, "Expected success (err=%d)\n", GetLastError());
+    ok(ret, "Expected success (err=%ld)\n", GetLastError());
 
     CloseServiceHandle(svc_handle);
     CloseServiceHandle(scm_handle);
@@ -739,7 +739,7 @@ static void test_get_servicekeyname(void)
     ret = GetServiceKeyNameA(NULL, NULL, NULL, &servicesize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_HANDLE,
-       "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     scm_handle = OpenSCManagerA(NULL, NULL, SC_MANAGER_CONNECT);
 
@@ -749,8 +749,8 @@ static void test_get_servicekeyname(void)
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS   /* W2K, XP, W2K3, Vista */ ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
-    todo_wine ok(servicesize == 1, "Service size expected 1, got %d\n", servicesize);
+       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
+    todo_wine ok(servicesize == 1, "Service size expected 1, got %ld\n", servicesize);
 
     /* Valid handle and buffer but no displayname */
     servicesize = 200;
@@ -759,24 +759,24 @@ static void test_get_servicekeyname(void)
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS   /* W2K, XP, W2K3, Vista */ ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
-    todo_wine ok(servicesize == 200, "Service size expected 1, got %d\n", servicesize);
+       "Expected ERROR_INVALID_ADDRESS or ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
+    todo_wine ok(servicesize == 200, "Service size expected 1, got %ld\n", servicesize);
 
     /* Test for nonexistent displayname */
     SetLastError(0xdeadbeef);
     ret = GetServiceKeyNameA(scm_handle, deadbeef, NULL, &servicesize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
-    todo_wine ok(servicesize == 1, "Service size expected 1, got %d\n", servicesize);
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
+    todo_wine ok(servicesize == 1, "Service size expected 1, got %ld\n", servicesize);
 
     servicesize = 15;
     strcpy(servicename, "ABC");
     ret = GetServiceKeyNameA(scm_handle, deadbeef, servicename, &servicesize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
-    todo_wine ok(servicesize == 15, "Service size expected 15, got %d\n", servicesize);
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
+    todo_wine ok(servicesize == 15, "Service size expected 15, got %ld\n", servicesize);
     ok(servicename[0] == 0, "Service name not empty\n");
 
     servicesize = 15;
@@ -784,8 +784,8 @@ static void test_get_servicekeyname(void)
     ret = GetServiceKeyNameW(scm_handle, deadbeefW, servicenameW, &servicesize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
-    ok(servicesize == 15, "Service size expected 15, got %d\n", servicesize);
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
+    ok(servicesize == 15, "Service size expected 15, got %ld\n", servicesize);
     ok(servicenameW[0] == 0, "Service name not empty\n");
 
     servicesize = 0;
@@ -793,17 +793,17 @@ static void test_get_servicekeyname(void)
     ret = GetServiceKeyNameA(scm_handle, deadbeef, servicename, &servicesize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
-    todo_wine ok(servicesize == 1, "Service size expected 1, got %d\n", servicesize);
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
+    todo_wine ok(servicesize == 1, "Service size expected 1, got %ld\n", servicesize);
     ok(servicename[0] == 'A', "Service name changed\n");
 
     servicesize = 0;
     lstrcpyW( servicenameW, abcW );
     ret = GetServiceKeyNameW(scm_handle, deadbeefW, servicenameW, &servicesize);
     ok(!ret, "Expected failure\n");
-    ok(servicesize == 2, "Service size expected 2, got %d\n", servicesize);
+    ok(servicesize == 2, "Service size expected 2, got %ld\n", servicesize);
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
     ok(servicenameW[0] == 'A', "Service name changed\n");
 
     servicesize = 1;
@@ -811,17 +811,17 @@ static void test_get_servicekeyname(void)
     ret = GetServiceKeyNameA(scm_handle, deadbeef, servicename, &servicesize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
-    todo_wine ok(servicesize == 1, "Service size expected 1, got %d\n", servicesize);
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
+    todo_wine ok(servicesize == 1, "Service size expected 1, got %ld\n", servicesize);
     ok(servicename[0] == 0, "Service name not empty\n");
 
     servicesize = 1;
     lstrcpyW( servicenameW, abcW );
     ret = GetServiceKeyNameW(scm_handle, deadbeefW, servicenameW, &servicesize);
     ok(!ret, "Expected failure\n");
-    ok(servicesize == 2, "Service size expected 2, got %d\n", servicesize);
+    ok(servicesize == 2, "Service size expected 2, got %ld\n", servicesize);
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
     ok(servicenameW[0] == 'A', "Service name changed\n");
 
     servicesize = 2;
@@ -829,17 +829,17 @@ static void test_get_servicekeyname(void)
     ret = GetServiceKeyNameA(scm_handle, deadbeef, servicename, &servicesize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
-    todo_wine ok(servicesize == 2, "Service size expected 2, got %d\n", servicesize);
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
+    todo_wine ok(servicesize == 2, "Service size expected 2, got %ld\n", servicesize);
     ok(servicename[0] == 0, "Service name not empty\n");
 
     servicesize = 2;
     lstrcpyW( servicenameW, abcW );
     ret = GetServiceKeyNameW(scm_handle, deadbeefW, servicenameW, &servicesize);
     ok(!ret, "Expected failure\n");
-    ok(servicesize == 2, "Service size expected 2, got %d\n", servicesize);
+    ok(servicesize == 2, "Service size expected 2, got %ld\n", servicesize);
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
     ok(servicenameW[0] == 0, "Service name not empty\n");
 
     /* Check if 'Spooler' exists */
@@ -870,14 +870,14 @@ static void test_get_servicekeyname(void)
     }
 
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     /* Valid call with the correct buffersize */
     SetLastError(0xdeadbeef);
     tempsize = servicesize;
     servicesize *= 2;
     ret = GetServiceKeyNameA(scm_handle, displayname, servicename, &servicesize);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     if (ret)
     {
         ok(strlen(servicename) == tempsize/2,
@@ -891,7 +891,7 @@ static void test_get_servicekeyname(void)
     SetLastError(0xdeadbeef);
     servicesize *= 2;
     ret = GetServiceKeyNameW(scm_handle, displaynameW, servicenameW, &servicesize);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     if (ret)
     {
         ok(strlen(servicename) == tempsize/2,
@@ -905,7 +905,7 @@ static void test_get_servicekeyname(void)
     ret = GetServiceKeyNameW(scm_handle, displaynameW, servicenameW, &servicesize);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-       "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
     ok(servicenameW[0] == 0, "Buffer not empty\n");
 
     CloseServiceHandle(scm_handle);
@@ -924,7 +924,7 @@ static void test_query_svc(void)
     ret = QueryServiceStatus(NULL, NULL);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_HANDLE,
-       "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     scm_handle = OpenSCManagerA(NULL, NULL, SC_MANAGER_CONNECT);
 
@@ -944,13 +944,13 @@ static void test_query_svc(void)
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Unexpected last error %d\n", GetLastError());
+       "Unexpected last error %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = QueryServiceStatus(svc_handle, &status);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_ACCESS_DENIED,
-       "Expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
+       "Expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
 
     /* Open the service with just enough rights.
      * (Verified with 'SERVICE_ALL_ACCESS &~ SERVICE_QUERY_STATUS')
@@ -960,7 +960,7 @@ static void test_query_svc(void)
 
     SetLastError(0xdeadbeef);
     ret = QueryServiceStatus(svc_handle, &status);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
 
     CloseServiceHandle(svc_handle);
 
@@ -980,7 +980,7 @@ static void test_query_svc(void)
     ret = pQueryServiceStatusEx(NULL, 1, NULL, 0, NULL);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_LEVEL,
-       "Expected ERROR_INVALID_LEVEL, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_LEVEL, got %ld\n", GetLastError());
 
     /* Passing a NULL parameter for the needed buffer size
      * will crash on anything but NT4.
@@ -994,9 +994,9 @@ static void test_query_svc(void)
     {
         ok(!ret, "Expected failure\n");
         ok(needed == sizeof(SERVICE_STATUS_PROCESS),
-           "Needed buffersize is wrong : %d\n", needed);
+           "Needed buffersize is wrong : %ld\n", needed);
         ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-           "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+           "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
     }
 
     /* Pass a correct buffer and buffersize but a NULL handle */
@@ -1006,7 +1006,7 @@ static void test_query_svc(void)
     ret = pQueryServiceStatusEx(NULL, SC_STATUS_PROCESS_INFO, (BYTE*)statusproc, bufsize, &needed);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_HANDLE,
-       "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
     HeapFree(GetProcessHeap(), 0, statusproc);
 
     /* Correct handle and info level */
@@ -1017,9 +1017,9 @@ static void test_query_svc(void)
     {
         ok(!ret, "Expected failure\n");
         ok(needed == sizeof(SERVICE_STATUS_PROCESS),
-           "Needed buffersize is wrong : %d\n", needed);
+           "Needed buffersize is wrong : %ld\n", needed);
         ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER,
-           "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+           "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
     }
 
     /* All parameters are OK but we don't have enough rights */
@@ -1029,7 +1029,7 @@ static void test_query_svc(void)
     ret = pQueryServiceStatusEx(svc_handle, SC_STATUS_PROCESS_INFO, (BYTE*)statusproc, bufsize, &needed);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_ACCESS_DENIED,
-       "Expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
+       "Expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
     HeapFree(GetProcessHeap(), 0, statusproc);
 
     /* Open the service with just enough rights. */
@@ -1041,7 +1041,7 @@ static void test_query_svc(void)
     bufsize = sizeof(SERVICE_STATUS_PROCESS);
     SetLastError(0xdeadbeef);
     ret = pQueryServiceStatusEx(svc_handle, SC_STATUS_PROCESS_INFO, (BYTE*)statusproc, bufsize, &needed);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     if (statusproc->dwCurrentState == SERVICE_RUNNING)
         ok(statusproc->dwProcessId != 0,
            "Expect a process id for this running service\n");
@@ -1054,7 +1054,7 @@ static void test_query_svc(void)
     ret = pQueryServiceStatusEx(svc_handle, SC_STATUS_PROCESS_INFO, (BYTE*)statusproc, bufsize, NULL);
     ok(!ret, "Expected failure\n");
     ok(broken(GetLastError() == ERROR_INVALID_PARAMETER) /* NT4 */ ||
-       GetLastError() == ERROR_INVALID_ADDRESS, "got %d\n", GetLastError());
+       GetLastError() == ERROR_INVALID_ADDRESS, "got %ld\n", GetLastError());
 
     HeapFree(GetProcessHeap(), 0, statusproc);
 
@@ -1080,13 +1080,13 @@ static void test_enum_svc(void)
     ret = EnumServicesStatusA(NULL, 1, 0, NULL, 0, NULL, NULL, NULL);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_HANDLE,
-       "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = EnumServicesStatusW(NULL, 1, 0, NULL, 0, NULL, NULL, NULL);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_HANDLE,
-       "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     /* Open the service control manager with not enough rights at first */
     scm_handle = OpenSCManagerA(NULL, NULL, SC_MANAGER_CONNECT);
@@ -1097,14 +1097,14 @@ static void test_enum_svc(void)
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Unexpected last error %d\n", GetLastError());
+       "Unexpected last error %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = EnumServicesStatusW(scm_handle, 1, 0, NULL, 0, NULL, NULL, NULL);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Unexpected last error %d\n", GetLastError());
+       "Unexpected last error %ld\n", GetLastError());
 
     /* Don't specify the two required pointers */
     returned = 0xdeadbeef;
@@ -1114,7 +1114,7 @@ static void test_enum_svc(void)
     ok(returned == 0xdeadbeef, "Expected no change to the number of services variable\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Unexpected last error %d\n", GetLastError());
+       "Unexpected last error %ld\n", GetLastError());
 
     returned = 0xdeadbeef;
     SetLastError(0xdeadbeef);
@@ -1123,7 +1123,7 @@ static void test_enum_svc(void)
     ok(returned == 0xdeadbeef, "Expected no change to the number of services variable\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Unexpected last error %d\n", GetLastError());
+       "Unexpected last error %ld\n", GetLastError());
 
     /* Don't specify the two required pointers */
     needed = 0xdeadbeef;
@@ -1134,7 +1134,7 @@ static void test_enum_svc(void)
        "Expected no change to the needed buffer variable\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Unexpected last error %d\n", GetLastError());
+       "Unexpected last error %ld\n", GetLastError());
 
     needed = 0xdeadbeef;
     SetLastError(0xdeadbeef);
@@ -1144,7 +1144,7 @@ static void test_enum_svc(void)
        "Expected no change to the needed buffer variable\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Unexpected last error %d\n", GetLastError());
+       "Unexpected last error %ld\n", GetLastError());
 
     /* No valid servicetype and servicestate */
     needed = 0xdeadbeef;
@@ -1153,10 +1153,10 @@ static void test_enum_svc(void)
     ret = EnumServicesStatusA(scm_handle, 0, 0, NULL, 0, &needed, &returned, NULL);
     ok(!ret, "Expected failure\n");
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
-    ok(returned == 0, "Expected number of services to be set to 0, got %d\n", returned);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
+    ok(returned == 0, "Expected number of services to be set to 0, got %ld\n", returned);
     ok(GetLastError() == ERROR_INVALID_PARAMETER,
-       "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     needed = 0xdeadbeef;
     returned = 0xdeadbeef;
@@ -1164,11 +1164,11 @@ static void test_enum_svc(void)
     ret = EnumServicesStatusW(scm_handle, 0, 0, NULL, 0, &needed, &returned, NULL);
     ok(!ret, "Expected failure\n");
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
     ok(returned == 0 || broken(returned != 0), /* nt4 */
-       "Expected number of services to be set to 0, got %d\n", returned);
+       "Expected number of services to be set to 0, got %ld\n", returned);
     ok(GetLastError() == ERROR_INVALID_PARAMETER,
-       "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* No valid servicestate */
     needed = 0xdeadbeef;
@@ -1177,10 +1177,10 @@ static void test_enum_svc(void)
     ret = EnumServicesStatusA(scm_handle, SERVICE_WIN32, 0, NULL, 0, &needed, &returned, NULL);
     ok(!ret, "Expected failure\n");
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
-    ok(returned == 0, "Expected number of services to be set to 0, got %d\n", returned);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
+    ok(returned == 0, "Expected number of services to be set to 0, got %ld\n", returned);
     ok(GetLastError() == ERROR_INVALID_PARAMETER,
-       "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     needed = 0xdeadbeef;
     returned = 0xdeadbeef;
@@ -1188,11 +1188,11 @@ static void test_enum_svc(void)
     ret = EnumServicesStatusW(scm_handle, SERVICE_WIN32, 0, NULL, 0, &needed, &returned, NULL);
     ok(!ret, "Expected failure\n");
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
     ok(returned == 0 || broken(returned != 0), /* nt4 */
-       "Expected number of services to be set to 0, got %d\n", returned);
+       "Expected number of services to be set to 0, got %ld\n", returned);
     ok(GetLastError() == ERROR_INVALID_PARAMETER,
-       "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* No valid servicetype */
     needed = 0xdeadbeef;
@@ -1201,10 +1201,10 @@ static void test_enum_svc(void)
     ret = EnumServicesStatusA(scm_handle, 0, SERVICE_STATE_ALL, NULL, 0, &needed, &returned, NULL);
     ok(!ret, "Expected failure\n");
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
-    ok(returned == 0, "Expected number of services to be set to 0, got %d\n", returned);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
+    ok(returned == 0, "Expected number of services to be set to 0, got %ld\n", returned);
     ok(GetLastError() == ERROR_INVALID_PARAMETER,
-       "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     needed = 0xdeadbeef;
     returned = 0xdeadbeef;
@@ -1212,11 +1212,11 @@ static void test_enum_svc(void)
     ret = EnumServicesStatusW(scm_handle, 0, SERVICE_STATE_ALL, NULL, 0, &needed, &returned, NULL);
     ok(!ret, "Expected failure\n");
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
     ok(returned == 0 || broken(returned != 0), /* nt4 */
-       "Expected number of services to be set to 0, got %d\n", returned);
+       "Expected number of services to be set to 0, got %ld\n", returned);
     ok(GetLastError() == ERROR_INVALID_PARAMETER,
-       "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* All parameters are correct but our access rights are wrong */
     needed = 0xdeadbeef;
@@ -1225,10 +1225,10 @@ static void test_enum_svc(void)
     ret = EnumServicesStatusA(scm_handle, SERVICE_WIN32, SERVICE_STATE_ALL, NULL, 0, &needed, &returned, NULL);
     ok(!ret, "Expected failure\n");
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
-    ok(returned == 0, "Expected number of services to be set to 0, got %d\n", returned);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
+    ok(returned == 0, "Expected number of services to be set to 0, got %ld\n", returned);
     ok(GetLastError() == ERROR_ACCESS_DENIED,
-       "Expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
+       "Expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
 
     needed = 0xdeadbeef;
     returned = 0xdeadbeef;
@@ -1236,11 +1236,11 @@ static void test_enum_svc(void)
     ret = EnumServicesStatusW(scm_handle, SERVICE_WIN32, SERVICE_STATE_ALL, NULL, 0, &needed, &returned, NULL);
     ok(!ret, "Expected failure\n");
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
     ok(returned == 0 || broken(returned != 0), /* nt4 */
-       "Expected number of services to be set to 0, got %d\n", returned);
+       "Expected number of services to be set to 0, got %ld\n", returned);
     ok(GetLastError() == ERROR_ACCESS_DENIED,
-       "Expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
+       "Expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
 
     /* Open the service control manager with the needed rights */
     CloseServiceHandle(scm_handle);
@@ -1253,9 +1253,9 @@ static void test_enum_svc(void)
     ret = EnumServicesStatusA(scm_handle, SERVICE_WIN32, SERVICE_STATE_ALL, NULL, 0, &needed, &returned, NULL);
     ok(!ret, "Expected failure\n");
     ok(needed != 0xdeadbeef && needed > 0, "Expected the needed buffer size for this one service\n");
-    ok(returned == 0, "Expected no service returned, got %d\n", returned);
+    ok(returned == 0, "Expected no service returned, got %ld\n", returned);
     ok(GetLastError() == ERROR_MORE_DATA,
-       "Expected ERROR_MORE_DATA, got %d\n", GetLastError());
+       "Expected ERROR_MORE_DATA, got %ld\n", GetLastError());
 
     /* Test to show we get the same needed buffer size for the W-call */
     neededW = 0xdeadbeef;
@@ -1265,9 +1265,9 @@ static void test_enum_svc(void)
     ok(!ret, "Expected failure\n");
     ok(neededW != 0xdeadbeef && neededW > 0, "Expected the needed buffer size for this one service\n");
     ok(neededW == needed, "Expected needed buffersize to be the same for A- and W-calls\n");
-    ok(returnedW == 0, "Expected no service returned, got %d\n", returnedW);
+    ok(returnedW == 0, "Expected no service returned, got %ld\n", returnedW);
     ok(GetLastError() == ERROR_MORE_DATA,
-       "Expected ERROR_MORE_DATA, got %d\n", GetLastError());
+       "Expected ERROR_MORE_DATA, got %ld\n", GetLastError());
 
     /* Store the needed bytes */
     tempneeded = needed;
@@ -1280,7 +1280,7 @@ static void test_enum_svc(void)
     SetLastError(0xdeadbeef);
     ret = EnumServicesStatusA(scm_handle, SERVICE_WIN32, SERVICE_STATE_ALL,
                               services, bufsize, &needed, &returned, NULL);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     ok(needed == 0, "Expected needed buffer to be 0 as we are done\n");
     ok(returned != 0xdeadbeef && returned > 0, "Expected some returned services\n");
     HeapFree(GetProcessHeap(), 0, services);
@@ -1295,7 +1295,7 @@ static void test_enum_svc(void)
     SetLastError(0xdeadbeef);
     ret = EnumServicesStatusW(scm_handle, SERVICE_WIN32, SERVICE_STATE_ALL,
                               servicesW, bufsize, &neededW, &returnedW, NULL);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     ok(neededW == 0, "Expected needed buffer to be 0 as we are done\n");
     ok(returnedW != 0xdeadbeef && returnedW > 0, "Expected some returned services\n");
     HeapFree(GetProcessHeap(), 0, servicesW);
@@ -1312,7 +1312,7 @@ static void test_enum_svc(void)
     ok(needed != 0xdeadbeef && needed > 0, "Expected the needed buffer size for this one service\n");
     ok(returned < tempreturned, "Expected fewer services to be returned\n");
     ok(GetLastError() == ERROR_MORE_DATA,
-       "Expected ERROR_MORE_DATA, got %d\n", GetLastError());
+       "Expected ERROR_MORE_DATA, got %ld\n", GetLastError());
 
     /* Allocate less than the needed bytes, this time with a correct resume handle */
     bufsize = (tempreturned - 1) * sizeof(ENUM_SERVICE_STATUSA);
@@ -1327,7 +1327,7 @@ static void test_enum_svc(void)
     ok(returned < tempreturned, "Expected fewer services to be returned\n");
     todo_wine ok(resume, "Expected a resume handle\n");
     ok(GetLastError() == ERROR_MORE_DATA,
-       "Expected ERROR_MORE_DATA, got %d\n", GetLastError());
+       "Expected ERROR_MORE_DATA, got %ld\n", GetLastError());
 
     /* Fetch the missing services but pass a bigger buffer size */
     missing = tempreturned - returned;
@@ -1337,9 +1337,9 @@ static void test_enum_svc(void)
     SetLastError(0xdeadbeef);
     ret = EnumServicesStatusA(scm_handle, SERVICE_WIN32, SERVICE_STATE_ALL,
                               services, bufsize, &needed, &returned, &resume);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     ok(needed == 0, "Expected needed buffer to be 0 as we are done\n");
-    todo_wine ok(returned == missing, "Expected %u services to be returned\n", missing);
+    todo_wine ok(returned == missing, "Expected %lu services to be returned\n", missing);
     ok(resume == 0, "Expected the resume handle to be 0\n");
     HeapFree(GetProcessHeap(), 0, services);
 
@@ -1420,8 +1420,8 @@ static void test_enum_svc(void)
     }
     HeapFree(GetProcessHeap(), 0, services);
 
-    ok(servicecountactive == 0, "Active services mismatch %u\n", servicecountactive);
-    ok(servicecountinactive == 0, "Inactive services mismatch %u\n", servicecountinactive);
+    ok(servicecountactive == 0, "Active services mismatch %lu\n", servicecountactive);
+    ok(servicecountinactive == 0, "Inactive services mismatch %lu\n", servicecountinactive);
 
     CloseServiceHandle(scm_handle);
 
@@ -1437,14 +1437,14 @@ static void test_enum_svc(void)
     ret = pEnumServicesStatusExA(NULL, 1, 0, 0, NULL, 0, NULL, NULL, NULL, NULL);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_LEVEL,
-       "Expected ERROR_INVALID_LEVEL, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_LEVEL, got %ld\n", GetLastError());
 
     /* All NULL or wrong, just the info level is correct */
     SetLastError(0xdeadbeef);
     ret = pEnumServicesStatusExA(NULL, 0, 0, 0, NULL, 0, NULL, NULL, NULL, NULL);
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_HANDLE,
-       "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     /* Open the service control manager with not enough rights at first */
     scm_handle = OpenSCManagerA(NULL, NULL, SC_MANAGER_CONNECT);
@@ -1455,7 +1455,7 @@ static void test_enum_svc(void)
     ok(!ret, "Expected failure\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Unexpected last error %d\n", GetLastError());
+       "Unexpected last error %ld\n", GetLastError());
 
     /* Don't specify the two required pointers */
     needed = 0xdeadbeef;
@@ -1466,7 +1466,7 @@ static void test_enum_svc(void)
        "Expected no change to the needed buffer variable\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Unexpected last error %d\n", GetLastError());
+       "Unexpected last error %ld\n", GetLastError());
 
     /* Don't specify the two required pointers */
     returned = 0xdeadbeef;
@@ -1476,7 +1476,7 @@ static void test_enum_svc(void)
     ok(returned == 0xdeadbeef, "Expected no change to the number of services variable\n");
     ok(GetLastError() == ERROR_INVALID_ADDRESS ||
        GetLastError() == ERROR_INVALID_PARAMETER /* NT4 */,
-       "Unexpected last error %d\n", GetLastError());
+       "Unexpected last error %ld\n", GetLastError());
 
     /* No valid servicetype and servicestate */
     needed = 0xdeadbeef;
@@ -1484,11 +1484,11 @@ static void test_enum_svc(void)
     SetLastError(0xdeadbeef);
     ret = pEnumServicesStatusExA(scm_handle, 0, 0, 0, NULL, 0, &needed, &returned, NULL, NULL);
     ok(!ret, "Expected failure\n");
-    ok(returned == 0, "Expected number of service to be set to 0, got %d\n", returned);
+    ok(returned == 0, "Expected number of service to be set to 0, got %ld\n", returned);
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
     ok(GetLastError() == ERROR_INVALID_PARAMETER,
-       "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* No valid servicestate */
     needed = 0xdeadbeef;
@@ -1497,11 +1497,11 @@ static void test_enum_svc(void)
     ret = pEnumServicesStatusExA(scm_handle, 0, SERVICE_WIN32, 0, NULL, 0,
                                  &needed, &returned, NULL, NULL);
     ok(!ret, "Expected failure\n");
-    ok(returned == 0, "Expected number of service to be set to 0, got %d\n", returned);
+    ok(returned == 0, "Expected number of service to be set to 0, got %ld\n", returned);
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
     ok(GetLastError() == ERROR_INVALID_PARAMETER,
-       "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* No valid servicetype */
     needed = 0xdeadbeef;
@@ -1510,11 +1510,11 @@ static void test_enum_svc(void)
     ret = pEnumServicesStatusExA(scm_handle, 0, 0, SERVICE_STATE_ALL, NULL, 0,
                                  &needed, &returned, NULL, NULL);
     ok(!ret, "Expected failure\n");
-    ok(returned == 0, "Expected number of service to be set to 0, got %d\n", returned);
+    ok(returned == 0, "Expected number of service to be set to 0, got %ld\n", returned);
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
     ok(GetLastError() == ERROR_INVALID_PARAMETER,
-       "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* No valid servicetype and servicestate and unknown service group */
     needed = 0xdeadbeef;
@@ -1523,11 +1523,11 @@ static void test_enum_svc(void)
     ret = pEnumServicesStatusExA(scm_handle, 0, 0, 0, NULL, 0, &needed,
                                  &returned, NULL, "deadbeef_group");
     ok(!ret, "Expected failure\n");
-    ok(returned == 0, "Expected number of service to be set to 0, got %d\n", returned);
+    ok(returned == 0, "Expected number of service to be set to 0, got %ld\n", returned);
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
     ok(GetLastError() == ERROR_INVALID_PARAMETER,
-       "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
+       "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
 
     /* All parameters are correct but our access rights are wrong */
     needed = 0xdeadbeef;
@@ -1537,10 +1537,10 @@ static void test_enum_svc(void)
                                  NULL, 0, &needed, &returned, NULL, NULL);
     ok(!ret, "Expected failure\n");
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
-    ok(returned == 0, "Expected number of service to be set to 0, got %d\n", returned);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
+    ok(returned == 0, "Expected number of service to be set to 0, got %ld\n", returned);
     ok(GetLastError() == ERROR_ACCESS_DENIED,
-       "Expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
+       "Expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
 
     /* All parameters are correct, access rights are wrong but the
      * group name won't be checked yet.
@@ -1552,10 +1552,10 @@ static void test_enum_svc(void)
                                  NULL, 0, &needed, &returned, NULL, "deadbeef_group");
     ok(!ret, "Expected failure\n");
     ok(needed == 0 || broken(needed != 0), /* nt4 */
-       "Expected needed buffer size to be set to 0, got %d\n", needed);
-    ok(returned == 0, "Expected number of service to be set to 0, got %d\n", returned);
+       "Expected needed buffer size to be set to 0, got %ld\n", needed);
+    ok(returned == 0, "Expected number of service to be set to 0, got %ld\n", returned);
     ok(GetLastError() == ERROR_ACCESS_DENIED,
-       "Expected ERROR_ACCESS_DENIED, got %d\n", GetLastError());
+       "Expected ERROR_ACCESS_DENIED, got %ld\n", GetLastError());
 
     /* Open the service control manager with the needed rights */
     CloseServiceHandle(scm_handle);
@@ -1568,10 +1568,10 @@ static void test_enum_svc(void)
     ret = pEnumServicesStatusExA(scm_handle, 0, SERVICE_WIN32, SERVICE_STATE_ALL,
                                  NULL, 0, &needed, &returned, NULL, "deadbeef_group");
     ok(!ret, "Expected failure\n");
-    ok(returned == 0, "Expected number of service to be set to 0, got %d\n", returned);
-    ok(needed == 0, "Expected needed buffer size to be set to 0, got %d\n", needed);
+    ok(returned == 0, "Expected number of service to be set to 0, got %ld\n", returned);
+    ok(needed == 0, "Expected needed buffer size to be set to 0, got %ld\n", needed);
     ok(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST,
-       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %d\n", GetLastError());
+       "Expected ERROR_SERVICE_DOES_NOT_EXIST, got %ld\n", GetLastError());
 
     /* TODO: Create a test that makes sure we enumerate all services that don't
      * belong to a group. (specifying "").
@@ -1584,10 +1584,10 @@ static void test_enum_svc(void)
     ret = pEnumServicesStatusExA(scm_handle, 0, SERVICE_WIN32, SERVICE_STATE_ALL,
                                  NULL, 0, &needed, &returned, NULL, NULL);
     ok(!ret, "Expected failure\n");
-    ok(returned == 0, "Expected no service returned, got %d\n", returned);
+    ok(returned == 0, "Expected no service returned, got %ld\n", returned);
     ok(needed != 0xdeadbeef && needed > 0, "Expected the needed buffer size\n");
     ok(GetLastError() == ERROR_MORE_DATA,
-       "Expected ERROR_MORE_DATA, got %d\n", GetLastError());
+       "Expected ERROR_MORE_DATA, got %ld\n", GetLastError());
 
     /* Test to show we get the same needed buffer size for the W-call */
     neededW = 0xdeadbeef;
@@ -1607,7 +1607,7 @@ static void test_enum_svc(void)
     SetLastError(0xdeadbeef);
     ret = pEnumServicesStatusExA(scm_handle, 0, SERVICE_WIN32, SERVICE_STATE_ALL,
                                  (BYTE*)exservices, bufsize, &needed, &returned, NULL, NULL);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     ok(needed == 0, "Expected needed buffer to be 0 as we are done\n");
     ok(returned == tempreturned, "Expected the same number of service from this function\n");
     HeapFree(GetProcessHeap(), 0, exservices);
@@ -1627,7 +1627,7 @@ static void test_enum_svc(void)
     ok(needed != 0xdeadbeef && needed > 0, "Expected the needed buffer size\n");
     ok(returned < tempreturned, "Expected fewer services to be returned\n");
     ok(GetLastError() == ERROR_MORE_DATA,
-       "Expected ERROR_MORE_DATA, got %d\n", GetLastError());
+       "Expected ERROR_MORE_DATA, got %ld\n", GetLastError());
 
     /* Allocate less than the needed bytes, this time with a correct resume handle */
     bufsize = (tempreturned - 1) * sizeof(ENUM_SERVICE_STATUSA);
@@ -1642,7 +1642,7 @@ static void test_enum_svc(void)
     ok(returned < tempreturned, "Expected fewer services to be returned\n");
     todo_wine ok(resume, "Expected a resume handle\n");
     ok(GetLastError() == ERROR_MORE_DATA,
-       "Expected ERROR_MORE_DATA, got %d\n", GetLastError());
+       "Expected ERROR_MORE_DATA, got %ld\n", GetLastError());
 
     /* Fetch that last service but pass a bigger buffer size */
     missing = tempreturned - returned;
@@ -1652,9 +1652,9 @@ static void test_enum_svc(void)
     SetLastError(0xdeadbeef);
     ret = pEnumServicesStatusExA(scm_handle, 0, SERVICE_WIN32, SERVICE_STATE_ALL,
                                  (BYTE*)exservices, bufsize, &needed, &returned, &resume, NULL);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     ok(needed == 0, "Expected needed buffer to be 0 as we are done\n");
-    ok(returned == missing, "Expected %u services to be returned\n", missing);
+    ok(returned == missing, "Expected %lu services to be returned\n", missing);
     ok(resume == 0, "Expected the resume handle to be 0\n");
     HeapFree(GetProcessHeap(), 0, exservices);
 
@@ -1699,7 +1699,7 @@ static void test_enum_svc(void)
     exservices = HeapAlloc(GetProcessHeap(), 0, needed);
     ret = pEnumServicesStatusExA(scm_handle, 0, SERVICE_WIN32 | SERVICE_DRIVER,
                                  SERVICE_STATE_ALL, (BYTE*)exservices, needed, &needed, &returned, NULL, NULL);
-    ok(ret, "Expected success %u\n", GetLastError());
+    ok(ret, "Expected success %lu\n", GetLastError());
 
     /* Loop through all those returned drivers and services */
     for (i = 0; i < returned; i++)
@@ -1734,7 +1734,7 @@ static void test_enum_svc(void)
             else
             {
                 /* We shouldn't have a process id for inactive services */
-                ok(status.dwProcessId == 0, "Service %s state %u shouldn't have an associated process id\n",
+                ok(status.dwProcessId == 0, "Service %s state %lu shouldn't have an associated process id\n",
                    exservices[i].lpServiceName, status.dwCurrentState);
 
                 servicecountinactive--;
@@ -1743,8 +1743,8 @@ static void test_enum_svc(void)
     }
     HeapFree(GetProcessHeap(), 0, exservices);
 
-    ok(servicecountactive == 0, "Active services mismatch %u\n", servicecountactive);
-    ok(servicecountinactive == 0, "Inactive services mismatch %u\n", servicecountinactive);
+    ok(servicecountactive == 0, "Active services mismatch %lu\n", servicecountactive);
+    ok(servicecountinactive == 0, "Inactive services mismatch %lu\n", servicecountinactive);
 
     CloseServiceHandle(scm_handle);
 }
@@ -1758,7 +1758,7 @@ static void test_close(void)
     SetLastError(0xdeadbeef);
     ret = CloseServiceHandle(NULL);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %ld\n", GetLastError());
 
     /* TODO: Add some tests with invalid handles. These produce errors on Windows but crash on Wine */
 
@@ -1766,7 +1766,7 @@ static void test_close(void)
     handle = OpenSCManagerA(NULL, NULL, SC_MANAGER_CONNECT);
     SetLastError(0xdeadbeef);
     ret = CloseServiceHandle(handle);
-    ok(ret, "Expected success got error %u\n", GetLastError());
+    ok(ret, "Expected success got error %lu\n", GetLastError());
 }
 
 static void test_wow64(void)
@@ -1795,29 +1795,29 @@ static void test_wow64(void)
             SERVICE_START | SERVICE_STOP | SERVICE_QUERY_STATUS | DELETE,
             SERVICE_WIN32_OWN_PROCESS, SERVICE_DEMAND_START, SERVICE_ERROR_NORMAL,
             "C:\\windows\\system32\\winetestsvc.exe service serve", NULL, NULL, NULL, NULL, NULL);
-    ok(!!service, "Failed to create service, error %u.\n", GetLastError());
+    ok(!!service, "Failed to create service, error %lu.\n", GetLastError());
     ret = StartServiceA(service, 0, NULL);
     ok(!ret, "Expected failure.\n");
-    ok(GetLastError() == ERROR_BAD_EXE_FORMAT, "Got error %u.\n", GetLastError());
+    ok(GetLastError() == ERROR_BAD_EXE_FORMAT, "Got error %lu.\n", GetLastError());
 
     ret = DeleteService(service);
-    ok(ret, "Failed to delete service, error %u.\n", GetLastError());
+    ok(ret, "Failed to delete service, error %lu.\n", GetLastError());
     CloseServiceHandle(service);
 
     service = CreateServiceA(manager, "winetestsvc2", "winetestsvc2", SERVICE_START | DELETE,
             SERVICE_KERNEL_DRIVER, SERVICE_DEMAND_START, SERVICE_ERROR_NORMAL,
             "C:\\windows\\system32\\winetestsvc.exe", NULL, NULL, NULL, NULL, NULL);
-    ok(!!service, "Failed to create service, error %u.\n", GetLastError());
+    ok(!!service, "Failed to create service, error %lu.\n", GetLastError());
     ret = StartServiceA(service, 0, NULL);
     ok(!ret, "Expected failure.\n");
-    todo_wine ok(GetLastError() == ERROR_FILE_NOT_FOUND, "Got error %u.\n", GetLastError());
+    todo_wine ok(GetLastError() == ERROR_FILE_NOT_FOUND, "Got error %lu.\n", GetLastError());
 
     ret = DeleteService(service);
-    ok(ret, "Failed to delete service, error %u.\n", GetLastError());
+    ok(ret, "Failed to delete service, error %lu.\n", GetLastError());
     CloseServiceHandle(service);
 
     ret = DeleteFileA("C:\\windows\\syswow64\\winetestsvc.exe");
-    ok(ret, "Failed to delete file, error %u.\n", GetLastError());
+    ok(ret, "Failed to delete file, error %lu.\n", GetLastError());
 
     file = CreateFileA("C:\\windows\\sysnative\\winetestsvc.exe", GENERIC_WRITE,
             0, NULL, CREATE_ALWAYS, 0, NULL);
@@ -1826,29 +1826,29 @@ static void test_wow64(void)
     service = CreateServiceA(manager, "winetestsvc3", "winetestsvc3", SERVICE_START | DELETE,
             SERVICE_WIN32_OWN_PROCESS, SERVICE_DEMAND_START, SERVICE_ERROR_NORMAL,
             "C:\\windows\\system32\\winetestsvc.exe service serve", NULL, NULL, NULL, NULL, NULL);
-    ok(!!service, "Failed to create service, error %u.\n", GetLastError());
+    ok(!!service, "Failed to create service, error %lu.\n", GetLastError());
     ret = StartServiceA(service, 0, NULL);
     ok(!ret, "Expected failure.\n");
-    ok(GetLastError() == ERROR_FILE_NOT_FOUND, "Got error %u.\n", GetLastError());
+    ok(GetLastError() == ERROR_FILE_NOT_FOUND, "Got error %lu.\n", GetLastError());
 
     ret = DeleteService(service);
-    ok(ret, "Failed to delete service, error %u.\n", GetLastError());
+    ok(ret, "Failed to delete service, error %lu.\n", GetLastError());
     CloseServiceHandle(service);
 
     service = CreateServiceA(manager, "winetestsvc4", "winetestsvc4", SERVICE_START | DELETE,
             SERVICE_KERNEL_DRIVER, SERVICE_DEMAND_START, SERVICE_ERROR_NORMAL,
             "C:\\windows\\system32\\winetestsvc.exe", NULL, NULL, NULL, NULL, NULL);
-    ok(!!service, "Failed to create service, error %u.\n", GetLastError());
+    ok(!!service, "Failed to create service, error %lu.\n", GetLastError());
     ret = StartServiceA(service, 0, NULL);
     ok(!ret, "Expected failure.\n");
-    todo_wine ok(GetLastError() == ERROR_BAD_EXE_FORMAT, "Got error %u.\n", GetLastError());
+    todo_wine ok(GetLastError() == ERROR_BAD_EXE_FORMAT, "Got error %lu.\n", GetLastError());
 
     ret = DeleteService(service);
-    ok(ret, "Failed to delete service, error %u.\n", GetLastError());
+    ok(ret, "Failed to delete service, error %lu.\n", GetLastError());
     CloseServiceHandle(service);
 
     ret = DeleteFileA("C:\\windows\\sysnative\\winetestsvc.exe");
-    ok(ret, "Failed to delete file, error %u.\n", GetLastError());
+    ok(ret, "Failed to delete file, error %lu.\n", GetLastError());
 
     CloseServiceHandle(manager);
 }
@@ -1877,7 +1877,7 @@ static void test_sequence(void)
         return;
     }
     else
-        ok(scm_handle != NULL, "Could not get a handle to the manager: %d\n", GetLastError());
+        ok(scm_handle != NULL, "Could not get a handle to the manager: %ld\n", GetLastError());
 
     if (!scm_handle) return;
     svc_handle = OpenServiceA(scm_handle, NULL, GENERIC_READ);
@@ -1904,7 +1904,7 @@ static void test_sequence(void)
             CloseServiceHandle(scm_handle);        
             return;
         }
-        ok(svc_handle != NULL, "Could not open the service : %d\n", GetLastError());
+        ok(svc_handle != NULL, "Could not open the service : %ld\n", GetLastError());
     }
     else if (!svc_handle && (GetLastError() == ERROR_ACCESS_DENIED))
     {
@@ -1914,7 +1914,7 @@ static void test_sequence(void)
     }
     else
     {
-        ok(svc_handle != NULL, "Could not create the service : %d\n", GetLastError());
+        ok(svc_handle != NULL, "Could not create the service : %ld\n", GetLastError());
         if (svc_handle != NULL)
         {
             PSID sidOwner, sidGroup;
@@ -1928,23 +1928,23 @@ static void test_sequence(void)
             retval = GetSecurityInfo(svc_handle, SE_SERVICE, DACL_SECURITY_INFORMATION, &sidOwner,
                                       &sidGroup, &dacl, &sacl, &pSD);
             LocalFree(pSD);
-            ok(retval == ERROR_SUCCESS, "Expected GetSecurityInfo to succeed: result %d\n", retval);
+            ok(retval == ERROR_SUCCESS, "Expected GetSecurityInfo to succeed: result %ld\n", retval);
             retval = GetSecurityInfo(svc_handle, SE_SERVICE, DACL_SECURITY_INFORMATION, NULL,
                                       NULL, NULL, NULL, &pSD);
             LocalFree(pSD);
-            ok(retval == ERROR_SUCCESS, "Expected GetSecurityInfo to succeed: result %d\n", retval);
+            ok(retval == ERROR_SUCCESS, "Expected GetSecurityInfo to succeed: result %ld\n", retval);
             if (!is_nt4)
             {
                 retval = GetSecurityInfo(svc_handle, SE_SERVICE, DACL_SECURITY_INFORMATION, NULL,
                                           NULL, &dacl, NULL, &pSD);
-                ok(retval == ERROR_SUCCESS, "Expected GetSecurityInfo to succeed: result %d\n", retval);
+                ok(retval == ERROR_SUCCESS, "Expected GetSecurityInfo to succeed: result %ld\n", retval);
                 LocalFree(pSD);
                 SetLastError(0xdeadbeef);
                 retval = GetSecurityInfo(svc_handle, SE_SERVICE, DACL_SECURITY_INFORMATION, NULL,
                                           NULL, NULL, NULL, NULL);
                 error = GetLastError();
-                ok(retval == ERROR_INVALID_PARAMETER, "Expected GetSecurityInfo to fail: result %d\n", retval);
-                ok(error == 0xdeadbeef, "Unexpected last error %d\n", error);
+                ok(retval == ERROR_INVALID_PARAMETER, "Expected GetSecurityInfo to fail: result %ld\n", retval);
+                ok(error == 0xdeadbeef, "Unexpected last error %ld\n", error);
             }
             else
                 win_skip("A NULL security descriptor in GetSecurityInfo results in an exception on NT4.\n");
@@ -1956,7 +1956,7 @@ static void test_sequence(void)
             ok(!bret, "Expected QueryServiceObjectSecurity to fail: result %d\n", bret);
             ok(error == ERROR_INSUFFICIENT_BUFFER ||
                broken(error == ERROR_INVALID_ADDRESS) || broken(error == ERROR_INVALID_PARAMETER),
-               "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", error);
+               "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", error);
             if (error != ERROR_INSUFFICIENT_BUFFER) n1 = 1024;
             pSD = LocalAlloc(0, n1);
             bret = pQueryServiceObjectSecurity(svc_handle, DACL_SECURITY_INFORMATION, pSD, n1, &n2);
@@ -1979,23 +1979,23 @@ static void test_sequence(void)
     SetLastError(0xdeadbeef);
     ret = QueryServiceConfigA(svc_handle, NULL, 0, &needed);
     ok(!ret, "Expected failure\n");
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Expected ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Expected ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     config = HeapAlloc(GetProcessHeap(), 0, needed);
     given = needed;
     SetLastError(0xdeadbeef);
     ret = QueryServiceConfigA(svc_handle, config, given, &needed);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
 
     ok(config->lpBinaryPathName && config->lpLoadOrderGroup && config->lpDependencies && config->lpServiceStartName &&
         config->lpDisplayName, "Expected all string struct members to be non-NULL\n");
     ok(config->dwServiceType == (SERVICE_INTERACTIVE_PROCESS | SERVICE_WIN32_OWN_PROCESS),
-        "Expected SERVICE_INTERACTIVE_PROCESS | SERVICE_WIN32_OWN_PROCESS, got %d\n", config->dwServiceType);
-    ok(config->dwStartType == SERVICE_DISABLED, "Expected SERVICE_DISABLED, got %d\n", config->dwStartType);
-    ok(config->dwErrorControl == SERVICE_ERROR_IGNORE, "Expected SERVICE_ERROR_IGNORE, got %d\n", config->dwErrorControl);
+        "Expected SERVICE_INTERACTIVE_PROCESS | SERVICE_WIN32_OWN_PROCESS, got %ld\n", config->dwServiceType);
+    ok(config->dwStartType == SERVICE_DISABLED, "Expected SERVICE_DISABLED, got %ld\n", config->dwStartType);
+    ok(config->dwErrorControl == SERVICE_ERROR_IGNORE, "Expected SERVICE_ERROR_IGNORE, got %ld\n", config->dwErrorControl);
     ok(!strcmp(config->lpBinaryPathName, pathname), "Expected '%s', got '%s'\n", pathname, config->lpBinaryPathName);
     ok(!strcmp(config->lpLoadOrderGroup, empty), "Expected an empty string, got '%s'\n", config->lpLoadOrderGroup);
-    ok(config->dwTagId == 0, "Expected 0, got %d\n", config->dwTagId);
+    ok(config->dwTagId == 0, "Expected 0, got %ld\n", config->dwTagId);
     /* TODO: Show the double 0 terminated string */
     todo_wine
     {
@@ -2006,7 +2006,7 @@ static void test_sequence(void)
 
     ret = ChangeServiceConfigA(svc_handle, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE, SERVICE_ERROR_NORMAL, NULL, "TestGroup2",
                                NULL, NULL, NULL, NULL, displayname2);
-    ok(ret, "ChangeServiceConfig failed (err=%d)\n", GetLastError());
+    ok(ret, "ChangeServiceConfig failed (err=%ld)\n", GetLastError());
 
     QueryServiceConfigA(svc_handle, NULL, 0, &needed);
     config = HeapReAlloc(GetProcessHeap(), 0, config, needed);
@@ -2014,18 +2014,18 @@ static void test_sequence(void)
     ok(config->lpBinaryPathName && config->lpLoadOrderGroup && config->lpDependencies && config->lpServiceStartName &&
         config->lpDisplayName, "Expected all string struct members to be non-NULL\n");
     ok(config->dwServiceType == (SERVICE_INTERACTIVE_PROCESS | SERVICE_WIN32_OWN_PROCESS),
-        "Expected SERVICE_INTERACTIVE_PROCESS | SERVICE_WIN32_OWN_PROCESS, got %d\n", config->dwServiceType);
-    ok(config->dwStartType == SERVICE_DISABLED, "Expected SERVICE_DISABLED, got %d\n", config->dwStartType);
-    ok(config->dwErrorControl == SERVICE_ERROR_NORMAL, "Expected SERVICE_ERROR_NORMAL, got %d\n", config->dwErrorControl);
+        "Expected SERVICE_INTERACTIVE_PROCESS | SERVICE_WIN32_OWN_PROCESS, got %ld\n", config->dwServiceType);
+    ok(config->dwStartType == SERVICE_DISABLED, "Expected SERVICE_DISABLED, got %ld\n", config->dwStartType);
+    ok(config->dwErrorControl == SERVICE_ERROR_NORMAL, "Expected SERVICE_ERROR_NORMAL, got %ld\n", config->dwErrorControl);
     ok(!strcmp(config->lpBinaryPathName, pathname), "Expected '%s', got '%s'\n", pathname, config->lpBinaryPathName);
     ok(!strcmp(config->lpLoadOrderGroup, "TestGroup2"), "Expected 'TestGroup2', got '%s'\n", config->lpLoadOrderGroup);
-    ok(config->dwTagId == 0, "Expected 0, got %d\n", config->dwTagId);
+    ok(config->dwTagId == 0, "Expected 0, got %ld\n", config->dwTagId);
     ok(!strcmp(config->lpServiceStartName, localsystem), "Expected 'LocalSystem', got '%s'\n", config->lpServiceStartName);
     ok(!strcmp(config->lpDisplayName, displayname2), "Expected '%s', got '%s'\n", displayname2, config->lpDisplayName);
 
     SetLastError(0xdeadbeef);
     ret = DeleteService(svc_handle);
-    ok(ret, "Expected success, got error %u\n", GetLastError());
+    ok(ret, "Expected success, got error %lu\n", GetLastError());
     CloseServiceHandle(svc_handle);
     CloseServiceHandle(scm_handle);
     HeapFree(GetProcessHeap(), 0, config);
@@ -2064,7 +2064,7 @@ static void test_queryconfig2(void)
 	if(GetLastError() == ERROR_ACCESS_DENIED)
             skip("Not enough rights to get a handle to the manager\n");
         else
-            ok(FALSE, "Could not get a handle to the manager: %d\n", GetLastError());
+            ok(FALSE, "Could not get a handle to the manager: %ld\n", GetLastError());
         return;
     }
 
@@ -2089,7 +2089,7 @@ static void test_queryconfig2(void)
                 if(GetLastError() == ERROR_ACCESS_DENIED)
                     skip("Not enough rights to open the service\n");
                 else
-                    ok(FALSE, "Could not open the service : %d\n", GetLastError());
+                    ok(FALSE, "Could not open the service : %ld\n", GetLastError());
                 CloseServiceHandle(scm_handle);
                 return;
             }
@@ -2100,7 +2100,7 @@ static void test_queryconfig2(void)
             CloseServiceHandle(scm_handle);
             return;
         }
-        ok(svc_handle != NULL, "Could not create the service : %d\n", GetLastError());
+        ok(svc_handle != NULL, "Could not create the service : %ld\n", GetLastError());
 	if (!svc_handle)
         {
             CloseServiceHandle(scm_handle);
@@ -2110,49 +2110,49 @@ static void test_queryconfig2(void)
     SetLastError(0xdeadbeef);
     ret = pQueryServiceConfig2A(svc_handle,0xfff0,buffer,sizeof(SERVICE_DESCRIPTIONA),&needed);
     ok(!ret, "expected QueryServiceConfig2A to fail\n");
-    ok(ERROR_INVALID_LEVEL == GetLastError(), "expected error ERROR_INVALID_LEVEL, got %d\n", GetLastError());
+    ok(ERROR_INVALID_LEVEL == GetLastError(), "expected error ERROR_INVALID_LEVEL, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pQueryServiceConfig2A(svc_handle,0xfff0,buffer,sizeof(SERVICE_DESCRIPTIONA),NULL);
     ok(!ret, "expected QueryServiceConfig2A to fail\n");
-    ok(ERROR_INVALID_LEVEL == GetLastError(), "expected error ERROR_INVALID_LEVEL, got %d\n", GetLastError());
+    ok(ERROR_INVALID_LEVEL == GetLastError(), "expected error ERROR_INVALID_LEVEL, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pQueryServiceConfig2A(svc_handle, SERVICE_CONFIG_DESCRIPTION,buffer,sizeof(SERVICE_DESCRIPTIONA),NULL);
     ok(!ret, "expected QueryServiceConfig2A to fail\n");
-    ok(ERROR_INVALID_ADDRESS == GetLastError(), "expected error ERROR_INVALID_ADDRESS, got %d\n", GetLastError());
+    ok(ERROR_INVALID_ADDRESS == GetLastError(), "expected error ERROR_INVALID_ADDRESS, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pQueryServiceConfig2A(svc_handle, SERVICE_CONFIG_DESCRIPTION,NULL,sizeof(SERVICE_DESCRIPTIONA),&needed);
     ok(!ret, "expected QueryServiceConfig2A to fail\n");
     ok((ERROR_INVALID_ADDRESS == GetLastError()) || (ERROR_INSUFFICIENT_BUFFER == GetLastError()),
-       "expected error ERROR_INVALID_ADDRESS or ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+       "expected error ERROR_INVALID_ADDRESS or ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pQueryServiceConfig2A(svc_handle, SERVICE_CONFIG_DESCRIPTION,NULL,sizeof(SERVICE_DESCRIPTIONA),NULL);
     ok(!ret, "expected QueryServiceConfig2A to fail\n");
-    ok(ERROR_INVALID_ADDRESS == GetLastError(), "expected error ERROR_INVALID_ADDRESS, got %d\n", GetLastError());
+    ok(ERROR_INVALID_ADDRESS == GetLastError(), "expected error ERROR_INVALID_ADDRESS, got %ld\n", GetLastError());
 
     needed = 0;
     SetLastError(0xdeadbeef);
     ret = pQueryServiceConfig2A(svc_handle, SERVICE_CONFIG_DESCRIPTION,buffer,sizeof(SERVICE_DESCRIPTIONA)-1,&needed);
     ok(!ret, "expected QueryServiceConfig2A to fail\n");
-    ok(ERROR_INSUFFICIENT_BUFFER == GetLastError(), "expected error ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
-    ok(needed == sizeof(SERVICE_DESCRIPTIONA), "got %d\n", needed);
+    ok(ERROR_INSUFFICIENT_BUFFER == GetLastError(), "expected error ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
+    ok(needed == sizeof(SERVICE_DESCRIPTIONA), "got %ld\n", needed);
 
     needed = 0;
     pConfig->lpDescription = (LPSTR)0xdeadbeef;
     ret = pQueryServiceConfig2A(svc_handle, SERVICE_CONFIG_DESCRIPTION,buffer,sizeof(SERVICE_DESCRIPTIONA),&needed);
     ok(ret, "expected QueryServiceConfig2A to succeed\n");
-    ok(needed == sizeof(SERVICE_DESCRIPTIONA), "got %d\n", needed);
+    ok(needed == sizeof(SERVICE_DESCRIPTIONA), "got %ld\n", needed);
     ok(!pConfig->lpDescription, "expected lpDescription to be NULL, got %p\n", pConfig->lpDescription);
 
     SetLastError(0xdeadbeef);
     needed = 0;
     ret = pQueryServiceConfig2A(svc_handle, SERVICE_CONFIG_DESCRIPTION,NULL,0,&needed);
     ok(!ret, "expected QueryServiceConfig2A to fail\n");
-    ok(ERROR_INSUFFICIENT_BUFFER == GetLastError(), "expected error ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
-    ok(needed == sizeof(SERVICE_DESCRIPTIONA), "got %d\n", needed);
+    ok(ERROR_INSUFFICIENT_BUFFER == GetLastError(), "expected error ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
+    ok(needed == sizeof(SERVICE_DESCRIPTIONA), "got %ld\n", needed);
 
     if(!pChangeServiceConfig2A)
     {
@@ -2172,13 +2172,13 @@ static void test_queryconfig2(void)
     expected = sizeof(SERVICE_DESCRIPTIONA) + sizeof(description) * sizeof(WCHAR); /* !! */
     ret = pQueryServiceConfig2A(svc_handle, SERVICE_CONFIG_DESCRIPTION,buffer,sizeof(SERVICE_DESCRIPTIONA),&needed);
     ok(!ret, "expected QueryServiceConfig2A to fail\n");
-    ok(ERROR_INSUFFICIENT_BUFFER == GetLastError(), "expected error ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
-    ok(needed == expected, "expected needed to be %d, got %d\n", expected, needed);
+    ok(ERROR_INSUFFICIENT_BUFFER == GetLastError(), "expected error ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
+    ok(needed == expected, "expected needed to be %ld, got %ld\n", expected, needed);
 
     SetLastError(0xdeadbeef);
     ret = pQueryServiceConfig2A(svc_handle, SERVICE_CONFIG_DESCRIPTION,buffer,needed-1,&needed);
     ok(!ret, "expected QueryServiceConfig2A to fail\n");
-    ok(ERROR_INSUFFICIENT_BUFFER == GetLastError(), "expected error ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
+    ok(ERROR_INSUFFICIENT_BUFFER == GetLastError(), "expected error ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = pQueryServiceConfig2A(svc_handle, SERVICE_CONFIG_DESCRIPTION,buffer,needed,&needed);
@@ -2202,8 +2202,8 @@ static void test_queryconfig2(void)
     expected = sizeof(SERVICE_DESCRIPTIONW) + sizeof(WCHAR) * sizeof(description);
     ret = pQueryServiceConfig2W(svc_handle, SERVICE_CONFIG_DESCRIPTION,NULL,0,&needed);
     ok(!ret, "expected QueryServiceConfig2W to fail\n");
-    ok(ERROR_INSUFFICIENT_BUFFER == GetLastError(), "expected error ERROR_INSUFFICIENT_BUFFER, got %d\n", GetLastError());
-    ok(needed == expected, "expected needed to be %d, got %d\n", expected, needed);
+    ok(ERROR_INSUFFICIENT_BUFFER == GetLastError(), "expected error ERROR_INSUFFICIENT_BUFFER, got %ld\n", GetLastError());
+    ok(needed == expected, "expected needed to be %ld, got %ld\n", expected, needed);
 
     SetLastError(0xdeadbeef);
     ret = pQueryServiceConfig2W(svc_handle, SERVICE_CONFIG_DESCRIPTION,buffer, needed,&needed);
@@ -2278,23 +2278,23 @@ static void test_queryconfig2(void)
         win_skip("SERVICE_CONFIG_PRESHUTDOWN_INFO not supported\n");
         goto cleanup;
     }
-    ok(ret, "expected QueryServiceConfig2W to succeed (%d)\n", GetLastError());
-    ok(needed == sizeof(preshutdown_info), "needed = %d\n", needed);
+    ok(ret, "expected QueryServiceConfig2W to succeed (%ld)\n", GetLastError());
+    ok(needed == sizeof(preshutdown_info), "needed = %ld\n", needed);
     ok(preshutdown_info.dwPreshutdownTimeout == 180000
             || preshutdown_info.dwPreshutdownTimeout == 10000 /* Win10 1709+ */,
-            "Default PreshutdownTimeout = %d\n", preshutdown_info.dwPreshutdownTimeout);
+            "Default PreshutdownTimeout = %ld\n", preshutdown_info.dwPreshutdownTimeout);
 
     SetLastError(0xdeadbeef);
     preshutdown_info.dwPreshutdownTimeout = -1;
     ret = pChangeServiceConfig2A(svc_handle, SERVICE_CONFIG_PRESHUTDOWN_INFO,
             (LPVOID)&preshutdown_info);
-    ok(ret, "expected ChangeServiceConfig2A to succeed (%d)\n", GetLastError());
+    ok(ret, "expected ChangeServiceConfig2A to succeed (%ld)\n", GetLastError());
 
     ret = pQueryServiceConfig2W(svc_handle, SERVICE_CONFIG_PRESHUTDOWN_INFO,
             (LPBYTE)&preshutdown_info, sizeof(preshutdown_info), &needed);
-    ok(ret, "expected QueryServiceConfig2W to succeed (%d)\n", GetLastError());
-    ok(needed == sizeof(preshutdown_info), "needed = %d\n", needed);
-    ok(preshutdown_info.dwPreshutdownTimeout == -1, "New PreshutdownTimeout = %d\n",
+    ok(ret, "expected QueryServiceConfig2W to succeed (%ld)\n", GetLastError());
+    ok(needed == sizeof(preshutdown_info), "needed = %ld\n", needed);
+    ok(preshutdown_info.dwPreshutdownTimeout == -1, "New PreshutdownTimeout = %ld\n",
             preshutdown_info.dwPreshutdownTimeout);
 
 cleanup:
@@ -2319,24 +2319,24 @@ static DWORD try_start_stop(SC_HANDLE svc_handle, const char* name, DWORD is_nt4
         SERVICE_STATUS_PROCESS statusproc;
 
         ret = pQueryServiceStatusEx(svc_handle, SC_STATUS_PROCESS_INFO, (BYTE*)&statusproc, sizeof(statusproc), &needed);
-        ok(ret, "%s: QueryServiceStatusEx() failed le=%u\n", name, GetLastError());
-        ok(statusproc.dwCurrentState == SERVICE_STOPPED, "%s: should be stopped state=%x\n", name, statusproc.dwCurrentState);
-        ok(statusproc.dwProcessId == 0, "%s: ProcessId should be 0 instead of %x\n", name, statusproc.dwProcessId);
+        ok(ret, "%s: QueryServiceStatusEx() failed le=%lu\n", name, GetLastError());
+        ok(statusproc.dwCurrentState == SERVICE_STOPPED, "%s: should be stopped state=%lx\n", name, statusproc.dwCurrentState);
+        ok(statusproc.dwProcessId == 0, "%s: ProcessId should be 0 instead of %lx\n", name, statusproc.dwProcessId);
     }
 
     ret = StartServiceA(svc_handle, 0, NULL);
     le2 = GetLastError();
     ok(!ret, "%s: StartServiceA() should have failed\n", name);
-    ok(le2 == le1, "%s: the second try should yield the same error: %u != %u\n", name, le1, le2);
+    ok(le2 == le1, "%s: the second try should yield the same error: %lu != %lu\n", name, le1, le2);
 
     status.dwCurrentState = 0xdeadbeef;
     ret = ControlService(svc_handle, SERVICE_CONTROL_STOP, &status);
     le2 = GetLastError();
     ok(!ret, "%s: ControlService() should have failed\n", name);
-    ok(le2 == ERROR_SERVICE_NOT_ACTIVE, "%s: %d != ERROR_SERVICE_NOT_ACTIVE\n", name, le2);
+    ok(le2 == ERROR_SERVICE_NOT_ACTIVE, "%s: %ld != ERROR_SERVICE_NOT_ACTIVE\n", name, le2);
     ok(status.dwCurrentState == SERVICE_STOPPED ||
        broken(is_nt4), /* NT4 returns a random value */
-       "%s: should be stopped state=%x\n", name, status.dwCurrentState);
+       "%s: should be stopped state=%lx\n", name, status.dwCurrentState);
 
     return le1;
 }
@@ -2358,20 +2358,20 @@ static void CALLBACK notify_cb(void *user)
     {
     case PHASE_STOPPED:
         ok(data->notify.dwNotificationStatus == ERROR_SUCCESS,
-                "Got wrong notification status: %u\n", data->notify.dwNotificationStatus);
+                "Got wrong notification status: %lu\n", data->notify.dwNotificationStatus);
         ok(data->notify.ServiceStatus.dwCurrentState == SERVICE_STOPPED,
-                "Got wrong service state: 0x%x\n", data->notify.ServiceStatus.dwCurrentState);
+                "Got wrong service state: 0x%lx\n", data->notify.ServiceStatus.dwCurrentState);
         ok(data->notify.dwNotificationTriggered == SERVICE_NOTIFY_STOPPED,
-                "Got wrong notification triggered: 0x%x\n", data->notify.dwNotificationTriggered);
+                "Got wrong notification triggered: 0x%lx\n", data->notify.dwNotificationTriggered);
         break;
 
     case PHASE_RUNNING:
         ok(data->notify.dwNotificationStatus == ERROR_SUCCESS,
-                "Got wrong notification status: %u\n", data->notify.dwNotificationStatus);
+                "Got wrong notification status: %lu\n", data->notify.dwNotificationStatus);
         ok(data->notify.ServiceStatus.dwCurrentState == SERVICE_RUNNING,
-                "Got wrong service state: 0x%x\n", data->notify.ServiceStatus.dwCurrentState);
+                "Got wrong service state: 0x%lx\n", data->notify.ServiceStatus.dwCurrentState);
         ok(data->notify.dwNotificationTriggered == SERVICE_NOTIFY_RUNNING,
-                "Got wrong notification triggered: 0x%x\n", data->notify.dwNotificationTriggered);
+                "Got wrong notification triggered: 0x%lx\n", data->notify.dwNotificationTriggered);
         break;
     }
 
@@ -2408,24 +2408,24 @@ static void test_servicenotify(SC_HANDLE scm_handle, const char *servicename)
     data.was_called = FALSE;
 
     dr = pNotifyServiceStatusChangeW(svc, SERVICE_NOTIFY_STOPPED | SERVICE_NOTIFY_RUNNING, &data.notify);
-    ok(dr == ERROR_SUCCESS, "NotifyServiceStatusChangeW failed: %u\n", dr);
+    ok(dr == ERROR_SUCCESS, "NotifyServiceStatusChangeW failed: %lu\n", dr);
 
     dr = SleepEx(100, TRUE);
-    ok(dr == WAIT_IO_COMPLETION, "Got wrong SleepEx result: %u\n", dr);
+    ok(dr == WAIT_IO_COMPLETION, "Got wrong SleepEx result: %lu\n", dr);
     ok(data.was_called == TRUE, "APC wasn't called\n");
 
     br = StartServiceA(svc, 0, NULL);
-    ok(br, "StartService failed: %u\n", GetLastError());
+    ok(br, "StartService failed: %lu\n", GetLastError());
 
     /* receive running notification */
     data.phase = PHASE_RUNNING;
     data.was_called = FALSE;
 
     dr = pNotifyServiceStatusChangeW(svc, SERVICE_NOTIFY_STOPPED | SERVICE_NOTIFY_RUNNING, &data.notify);
-    ok(dr == ERROR_SUCCESS, "NotifyServiceStatusChangeW failed: %u\n", dr);
+    ok(dr == ERROR_SUCCESS, "NotifyServiceStatusChangeW failed: %lu\n", dr);
 
     dr = SleepEx(100, TRUE);
-    ok(dr == WAIT_IO_COMPLETION, "Got wrong SleepEx result: %u\n", dr);
+    ok(dr == WAIT_IO_COMPLETION, "Got wrong SleepEx result: %lu\n", dr);
     ok(data.was_called == TRUE, "APC wasn't called\n");
 
     /* cannot register two notifications on the same handle */
@@ -2433,7 +2433,7 @@ static void test_servicenotify(SC_HANDLE scm_handle, const char *servicename)
     data.was_called = FALSE;
 
     dr = pNotifyServiceStatusChangeW(svc, SERVICE_NOTIFY_STOPPED | SERVICE_NOTIFY_RUNNING, &data.notify);
-    ok(dr == ERROR_SUCCESS, "NotifyServiceStatusChangeW failed: %u\n", dr);
+    ok(dr == ERROR_SUCCESS, "NotifyServiceStatusChangeW failed: %lu\n", dr);
 
     memset(&data2.notify, 0, sizeof(data2.notify));
     data2.notify.dwVersion = SERVICE_NOTIFY_STATUS_CHANGE;
@@ -2443,17 +2443,17 @@ static void test_servicenotify(SC_HANDLE scm_handle, const char *servicename)
     data2.was_called = FALSE;
 
     dr = pNotifyServiceStatusChangeW(svc, SERVICE_NOTIFY_STOPPED | SERVICE_NOTIFY_RUNNING, &data2.notify);
-    ok(dr == ERROR_ALREADY_REGISTERED || !dr /* Win8+ */, "wrong error %u\n", dr);
+    ok(dr == ERROR_ALREADY_REGISTERED || !dr /* Win8+ */, "wrong error %lu\n", dr);
     if (!dr)
     {
         dr = SleepEx(100, TRUE);
-        ok(dr == WAIT_IO_COMPLETION, "got %u\n", dr);
+        ok(dr == WAIT_IO_COMPLETION, "got %lu\n", dr);
         ok(data2.was_called, "APC was not called\n");
     }
     else
     {
         dr = SleepEx(100, TRUE);
-        ok(!dr, "got %u\n", dr);
+        ok(!dr, "got %lu\n", dr);
         ok(!data2.was_called, "APC should not have been called\n");
     }
     ok(data.was_called == FALSE, "APC should not have been called\n");
@@ -2468,15 +2468,15 @@ static void test_servicenotify(SC_HANDLE scm_handle, const char *servicename)
 
     /* it's possible to have multiple notifications using different service handles */
     dr = pNotifyServiceStatusChangeW(svc2, SERVICE_NOTIFY_STOPPED, &data2.notify);
-    ok(dr == ERROR_SUCCESS, "NotifyServiceStatusChangeW gave wrong result: %u\n", dr);
+    ok(dr == ERROR_SUCCESS, "NotifyServiceStatusChangeW gave wrong result: %lu\n", dr);
 
     /* stop service and receive notifiction */
     br = ControlService(svc, SERVICE_CONTROL_STOP, &status);
-    ok(br, "ControlService failed: %u\n", GetLastError());
+    ok(br, "ControlService failed: %lu\n", GetLastError());
 
     dr = SleepEx(100, TRUE);
     dr2 = SleepEx(100, TRUE);
-    ok(dr == WAIT_IO_COMPLETION || dr2 == WAIT_IO_COMPLETION, "Got wrong SleepEx result: %u\n", dr);
+    ok(dr == WAIT_IO_COMPLETION || dr2 == WAIT_IO_COMPLETION, "Got wrong SleepEx result: %lu\n", dr);
     ok(data.was_called == TRUE, "APC wasn't called\n");
     ok(data2.was_called == TRUE, "APC wasn't called\n");
 
@@ -2487,19 +2487,19 @@ static void test_servicenotify(SC_HANDLE scm_handle, const char *servicename)
     data.phase = PHASE_RUNNING;
     data.was_called = FALSE;
     dr = pNotifyServiceStatusChangeW(svc, SERVICE_NOTIFY_STOPPED | SERVICE_NOTIFY_RUNNING, &data.notify);
-    ok(dr == ERROR_SUCCESS, "NotifyServiceStatusChangeW failed: %u\n", dr);
+    ok(dr == ERROR_SUCCESS, "NotifyServiceStatusChangeW failed: %lu\n", dr);
 
     CloseServiceHandle(svc);
 
     br = StartServiceA(svc2, 0, NULL);
-    ok(br, "StartService failed: %u\n", GetLastError());
+    ok(br, "StartService failed: %lu\n", GetLastError());
 
     dr = SleepEx(100, TRUE);
-    ok(dr == 0, "Got wrong SleepEx result: %u\n", dr);
+    ok(dr == 0, "Got wrong SleepEx result: %lu\n", dr);
     ok(data.was_called == FALSE, "APC should not have been called\n");
 
     br = ControlService(svc2, SERVICE_CONTROL_STOP, &status);
-    ok(br, "ControlService failed: %u\n", GetLastError());
+    ok(br, "ControlService failed: %lu\n", GetLastError());
 
     CloseServiceHandle(svc2);
 }
@@ -2520,7 +2520,7 @@ static void test_start_stop(void)
 	if(GetLastError() == ERROR_ACCESS_DENIED)
             skip("Not enough rights to get a handle to the manager\n");
         else
-            ok(FALSE, "Could not get a handle to the manager: %d\n", GetLastError());
+            ok(FALSE, "Could not get a handle to the manager: %ld\n", GetLastError());
         return;
     }
 
@@ -2548,16 +2548,16 @@ static void test_start_stop(void)
         if(GetLastError() == ERROR_ACCESS_DENIED)
             skip("Not enough rights to create the service\n");
         else
-            ok(FALSE, "Could not create the service: %d\n", GetLastError());
+            ok(FALSE, "Could not create the service: %ld\n", GetLastError());
         goto cleanup;
     }
     le = try_start_stop(svc_handle, displayname, is_nt4);
-    ok(le == ERROR_SERVICE_DISABLED, "%d != ERROR_SERVICE_DISABLED\n", le);
+    ok(le == ERROR_SERVICE_DISABLED, "%ld != ERROR_SERVICE_DISABLED\n", le);
 
     /* Then one with a bad path */
     displayname = "Winetest Bad Path";
     ret = ChangeServiceConfigA(svc_handle, SERVICE_NO_CHANGE, SERVICE_DEMAND_START, SERVICE_NO_CHANGE, "c:\\no_such_file.exe", NULL, NULL, NULL, NULL, NULL, displayname);
-    ok(ret, "ChangeServiceConfig() failed le=%u\n", GetLastError());
+    ok(ret, "ChangeServiceConfig() failed le=%lu\n", GetLastError());
     try_start_stop(svc_handle, displayname, is_nt4);
 
     if (is_nt4)
@@ -2572,15 +2572,15 @@ static void test_start_stop(void)
     /* Again with a process that exits right away */
     displayname = "Winetest Exit Service";
     ret = ChangeServiceConfigA(svc_handle, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE, cmd, NULL, NULL, NULL, NULL, NULL, displayname);
-    ok(ret, "ChangeServiceConfig() failed le=%u\n", GetLastError());
+    ok(ret, "ChangeServiceConfig() failed le=%lu\n", GetLastError());
     le = try_start_stop(svc_handle, displayname, is_nt4);
-    ok(le == ERROR_SERVICE_REQUEST_TIMEOUT, "%d != ERROR_SERVICE_REQUEST_TIMEOUT\n", le);
+    ok(le == ERROR_SERVICE_REQUEST_TIMEOUT, "%ld != ERROR_SERVICE_REQUEST_TIMEOUT\n", le);
 
     /* create a real service and test notifications */
     sprintf(cmd, "%s service serve", selfname);
     displayname = "Winetest Service";
     ret = ChangeServiceConfigA(svc_handle, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE, cmd, NULL, NULL, NULL, NULL, NULL, displayname);
-    ok(ret, "ChangeServiceConfig() failed le=%u\n", GetLastError());
+    ok(ret, "ChangeServiceConfig() failed le=%lu\n", GetLastError());
     test_servicenotify(scm_handle, servicename);
 
 cleanup:
@@ -2612,31 +2612,31 @@ static void test_refcount(void)
     svc_handle1 = CreateServiceA(scm_handle, servicename, NULL, GENERIC_ALL,
                                  SERVICE_WIN32_OWN_PROCESS | SERVICE_INTERACTIVE_PROCESS,
                                  SERVICE_DISABLED, 0, pathname, NULL, NULL, NULL, NULL, NULL);
-    ok(svc_handle1 != NULL, "Expected success, got error %u\n", GetLastError());
+    ok(svc_handle1 != NULL, "Expected success, got error %lu\n", GetLastError());
 
     /* Get a handle to this new service */
     svc_handle2 = OpenServiceA(scm_handle, servicename, GENERIC_READ);
-    ok(svc_handle2 != NULL, "Expected success, got error %u\n", GetLastError());
+    ok(svc_handle2 != NULL, "Expected success, got error %lu\n", GetLastError());
 
     /* Get another handle to this new service */
     svc_handle3 = OpenServiceA(scm_handle, servicename, GENERIC_READ);
-    ok(svc_handle3 != NULL, "Expected success, got error %u\n", GetLastError());
+    ok(svc_handle3 != NULL, "Expected success, got error %lu\n", GetLastError());
 
     /* Check if we can close the handle to the Service Control Manager */
     ret = CloseServiceHandle(scm_handle);
-    ok(ret, "Expected success (err=%d)\n", GetLastError());
+    ok(ret, "Expected success (err=%ld)\n", GetLastError());
 
     /* Get a new handle to the Service Control Manager */
     scm_handle = OpenSCManagerA(NULL, NULL, GENERIC_ALL);
-    ok(scm_handle != NULL, "Expected success, got error %u\n", GetLastError());
+    ok(scm_handle != NULL, "Expected success, got error %lu\n", GetLastError());
 
     /* Get a handle to this new service */
     svc_handle4 = OpenServiceA(scm_handle, servicename, GENERIC_ALL);
-    ok(svc_handle4 != NULL, "Expected success, got error %u\n", GetLastError());
+    ok(svc_handle4 != NULL, "Expected success, got error %lu\n", GetLastError());
 
     /* Delete the service */
     ret = DeleteService(svc_handle4);
-    ok(ret, "Expected success (err=%d)\n", GetLastError());
+    ok(ret, "Expected success (err=%ld)\n", GetLastError());
 
     /* We cannot create the same service again as it's still marked as 'being deleted'.
      * The reason is that we still have 4 open handles to this service even though we
@@ -2648,17 +2648,17 @@ static void test_refcount(void)
                                  SERVICE_DISABLED, 0, pathname, NULL, NULL, NULL, NULL, NULL);
     ok(!svc_handle5, "Expected failure\n");
     ok(GetLastError() == ERROR_SERVICE_MARKED_FOR_DELETE,
-       "Expected ERROR_SERVICE_MARKED_FOR_DELETE, got %d\n", GetLastError());
+       "Expected ERROR_SERVICE_MARKED_FOR_DELETE, got %ld\n", GetLastError());
 
     /* Close all the handles to the service and try again */
     ret = CloseServiceHandle(svc_handle4);
-    ok(ret, "Expected success (err=%d)\n", GetLastError());
+    ok(ret, "Expected success (err=%ld)\n", GetLastError());
     ret = CloseServiceHandle(svc_handle3);
-    ok(ret, "Expected success (err=%d)\n", GetLastError());
+    ok(ret, "Expected success (err=%ld)\n", GetLastError());
     ret = CloseServiceHandle(svc_handle2);
-    ok(ret, "Expected success (err=%d)\n", GetLastError());
+    ok(ret, "Expected success (err=%ld)\n", GetLastError());
     ret = CloseServiceHandle(svc_handle1);
-    ok(ret, "Expected success (err=%d)\n", GetLastError());
+    ok(ret, "Expected success (err=%ld)\n", GetLastError());
 
     /* Wait a while. Doing a CreateService too soon will result again
      * in an ERROR_SERVICE_MARKED_FOR_DELETE error.
@@ -2669,11 +2669,11 @@ static void test_refcount(void)
     svc_handle5 = CreateServiceA(scm_handle, servicename, NULL, GENERIC_ALL,
                                  SERVICE_WIN32_OWN_PROCESS | SERVICE_INTERACTIVE_PROCESS,
                                  SERVICE_DISABLED, 0, pathname, NULL, NULL, NULL, NULL, NULL);
-    ok(svc_handle5 != NULL, "Expected success, got error %u\n", GetLastError());
+    ok(svc_handle5 != NULL, "Expected success, got error %lu\n", GetLastError());
 
     /* Delete the service */
     ret = DeleteService(svc_handle5);
-    ok(ret, "Expected success (err=%d)\n", GetLastError());
+    ok(ret, "Expected success (err=%ld)\n", GetLastError());
     CloseServiceHandle(svc_handle5);
     CloseServiceHandle(scm_handle);
 }
@@ -2707,30 +2707,30 @@ static void test_EventLog(void)
     SERVICE_STATUS_PROCESS status;
 
     scm_handle = OpenSCManagerA(NULL, NULL, GENERIC_READ);
-    ok(scm_handle != NULL, "OpenSCManager error %u\n", GetLastError());
+    ok(scm_handle != NULL, "OpenSCManager error %lu\n", GetLastError());
 
     svc_handle = OpenServiceA(scm_handle, "EventLog", GENERIC_READ);
-    ok(svc_handle != NULL, "OpenService error %u\n", GetLastError());
+    ok(svc_handle != NULL, "OpenService error %lu\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = QueryServiceConfigA(svc_handle, NULL, 0, &size);
     ok(!ret, "QueryServiceConfig should fail\n");
-    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got %u\n", GetLastError());
+    ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got %lu\n", GetLastError());
 
     config = HeapAlloc(GetProcessHeap(), 0, size);
     ret = QueryServiceConfigA(svc_handle, config, size, &size);
-    ok(ret, "QueryServiceConfig error %u\n", GetLastError());
+    ok(ret, "QueryServiceConfig error %lu\n", GetLastError());
 
-    ok(config->dwServiceType == SERVICE_WIN32_SHARE_PROCESS, "got %#x\n", config->dwServiceType);
-    ok(config->dwStartType == SERVICE_AUTO_START, "got %u\n", config->dwStartType);
-    ok(config->dwErrorControl == SERVICE_ERROR_NORMAL, "got %u\n", config->dwErrorControl);
+    ok(config->dwServiceType == SERVICE_WIN32_SHARE_PROCESS, "got %#lx\n", config->dwServiceType);
+    ok(config->dwStartType == SERVICE_AUTO_START, "got %lu\n", config->dwStartType);
+    ok(config->dwErrorControl == SERVICE_ERROR_NORMAL, "got %lu\n", config->dwErrorControl);
     ok(!strcmpi(config->lpBinaryPathName, "C:\\windows\\system32\\services.exe") /* XP */ ||
        !strcmpi(config->lpBinaryPathName, "C:\\windows\\system32\\svchost.exe -k LocalServiceNetworkRestricted") /* Vista+ */ ||
        !strcmpi(config->lpBinaryPathName, "C:\\windows\\system32\\svchost.exe -k LocalServiceNetworkRestricted -p") /* Win10 */,
        "got %s\n", config->lpBinaryPathName);
     todo_wine
     ok(!strcmpi(config->lpLoadOrderGroup, "Event Log"), "got %s\n", config->lpLoadOrderGroup);
-    ok(config->dwTagId == 0, "Expected 0, got %d\n", config->dwTagId);
+    ok(config->dwTagId == 0, "Expected 0, got %ld\n", config->dwTagId);
     ok(!config->lpDependencies[0], "lpDependencies is not empty\n");
     ok(!strcmp(config->lpServiceStartName, "LocalSystem") /* XP */ ||
        !strcmp(config->lpServiceStartName, "NT AUTHORITY\\LocalService"),
@@ -2744,23 +2744,23 @@ static void test_EventLog(void)
     memset(&status, 0, sizeof(status));
     size = sizeof(status);
     ret = QueryServiceStatusEx(svc_handle, SC_STATUS_PROCESS_INFO, (BYTE *)&status, size, &size);
-    ok(ret, "QueryServiceStatusEx error %u\n", GetLastError());
+    ok(ret, "QueryServiceStatusEx error %lu\n", GetLastError());
     ok(status.dwServiceType == SERVICE_WIN32_SHARE_PROCESS ||
        status.dwServiceType == (SERVICE_WIN32_SHARE_PROCESS | SERVICE_WIN32_OWN_PROCESS) /* Win10 */,
-       "got %#x\n", status.dwServiceType);
-    ok(status.dwCurrentState == SERVICE_RUNNING, "got %#x\n", status.dwCurrentState);
+       "got %#lx\n", status.dwServiceType);
+    ok(status.dwCurrentState == SERVICE_RUNNING, "got %#lx\n", status.dwCurrentState);
     todo_wine
     ok(status.dwControlsAccepted == SERVICE_ACCEPT_SHUTDOWN /* XP */ ||
        status.dwControlsAccepted == (SERVICE_ACCEPT_STOP | SERVICE_ACCEPT_SHUTDOWN) /* 2008 */ ||
        status.dwControlsAccepted == (SERVICE_ACCEPT_STOP | SERVICE_ACCEPT_TIMECHANGE | SERVICE_ACCEPT_SHUTDOWN),
-       "got %#x\n", status.dwControlsAccepted);
-    ok(status.dwWin32ExitCode == 0, "got %#x\n", status.dwWin32ExitCode);
-    ok(status.dwServiceSpecificExitCode == 0, "got %#x\n", status.dwServiceSpecificExitCode);
-    ok(status.dwCheckPoint == 0, "got %#x\n", status.dwCheckPoint);
-    ok(status.dwWaitHint == 0, "got %#x\n", status.dwWaitHint);
-    ok(status.dwProcessId != 0, "got %#x\n", status.dwProcessId);
+       "got %#lx\n", status.dwControlsAccepted);
+    ok(status.dwWin32ExitCode == 0, "got %#lx\n", status.dwWin32ExitCode);
+    ok(status.dwServiceSpecificExitCode == 0, "got %#lx\n", status.dwServiceSpecificExitCode);
+    ok(status.dwCheckPoint == 0, "got %#lx\n", status.dwCheckPoint);
+    ok(status.dwWaitHint == 0, "got %#lx\n", status.dwWaitHint);
+    ok(status.dwProcessId != 0, "got %#lx\n", status.dwProcessId);
     ok(status.dwServiceFlags == 0 || status.dwServiceFlags == SERVICE_RUNS_IN_SYSTEM_PROCESS /* XP */,
-       "got %#x\n", status.dwServiceFlags);
+       "got %#lx\n", status.dwServiceFlags);
 
     CloseServiceHandle(svc_handle);
     CloseServiceHandle(scm_handle);




More information about the wine-devel mailing list