[PATCH 06/12] shell32/tests: Show that verbs and classes override ShellExecute()'s normal handling of executables.

Francois Gouget fgouget at codeweavers.com
Mon Jan 4 16:30:31 CST 2016


Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
---
 dlls/shell32/tests/shlexec.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/dlls/shell32/tests/shlexec.c b/dlls/shell32/tests/shlexec.c
index 541d232..237157c 100644
--- a/dlls/shell32/tests/shlexec.c
+++ b/dlls/shell32/tests/shlexec.c
@@ -2131,6 +2131,17 @@ static void test_exes(void)
     sprintf(filename, "\"%s\" shlexec \"%s\" Exec", argv0, child_file);
     rc = shell_execute(NULL, filename, NULL, NULL);
     ok(rc == SE_ERR_FNF, "%s returned %lu\n", shell_call, rc);
+
+    /* Verbs and classes override the normal handling of executables */
+    todo_wait rc = shell_execute_ex(SEE_MASK_FLAG_NO_UI, "notaverb", argv0, NULL, NULL, NULL);
+    todo_wine ok(rc == SE_ERR_NOASSOC, "%s returned %lu\n", shell_call, rc);
+
+    /* FIXME SEE_MASK_FLAG_NO_UI is only needed due to Wine's bug */
+    todo_wait rc = shell_execute_ex(SEE_MASK_CLASSNAME | SEE_MASK_FLAG_NO_UI, NULL, argv0, NULL, NULL, ".shlexec");
+    todo_wine ok(rc > 32, "%s returned %lu\n", shell_call, rc);
+    okChildInt("argcA", 5);
+    todo_wine okChildString("argvA3", "Open");
+    todo_wine okChildString("argvA4", argv0);
 }
 
 typedef struct
-- 
2.6.4




More information about the wine-patches mailing list