Add more tests for old style hooks and winevent hooks, make them pass
under Wine.

diff --git a/server/hook.c b/server/hook.c
index ab86865..b269114 100644
--- a/server/hook.c
+++ b/server/hook.c
@@ -320,7 +320,14 @@
 {
     struct hook *hook;
 
-    if (req->handle) hook = get_user_object( req->handle, USER_HOOK );
+    if (req->handle)
+    {
+        if (!(hook = get_user_object( req->handle, USER_HOOK )))
+        {
+            set_win32_error( ERROR_INVALID_HOOK_HANDLE );
+            return;
+        }
+    }
     else
     {
         if (!req->proc || req->id < WH_MINHOOK || req->id > WH_MAXHOOK)
@@ -329,9 +336,12 @@
             return;
         }
         if (!(hook = find_hook( current, req->id - WH_MINHOOK, req->proc )))
+        {
             set_error( STATUS_INVALID_PARAMETER );
+            return;
+        }
     }
-    if (hook) remove_hook( hook );
+    remove_hook( hook );
 }