From: Andrea Faulds <ajf@ajf.me> --- dlls/shell32/tests/shlexec.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/dlls/shell32/tests/shlexec.c b/dlls/shell32/tests/shlexec.c index 336dfbef4fe..3ff9c33a873 100644 --- a/dlls/shell32/tests/shlexec.c +++ b/dlls/shell32/tests/shlexec.c @@ -3034,6 +3034,35 @@ static void test_directory(void) SetCurrentDirectoryA(curdir); } +static void test_guid(void) +{ + todo_wine { + /* try to open My Computer's shell folder by its GUID */ + + BOOL result; + SHELLEXECUTEINFOW sei = {0}; + + if (!winetest_interactive) + { + /* This test will open a persistent explorer window for My Computer (if + * one isn't already open), and there's no practical way to consistently + * auto-close it, so this is best left out of the non-interactive tests. + */ + skip( "interactive explorer GUID path test (set WINETEST_INTERACTIVE=1)\n" ); + return; + } + + sei.cbSize = sizeof(sei); + sei.fMask = SEE_MASK_NOCLOSEPROCESS | SEE_MASK_NOASYNC | SEE_MASK_FLAG_NO_UI; + sei.lpVerb = L"open"; + sei.lpFile = L"::{20d04fe0-3aea-1069-a2d8-08002b30309d}"; + sei.nShow = SW_SHOW; + + result = ShellExecuteExW(&sei); + ok(result, "ShellExecuteExW failed\n"); + } +} + START_TEST(shlexec) { @@ -3059,6 +3088,7 @@ START_TEST(shlexec) test_dde(); test_dde_default_app(); test_directory(); + test_guid(); cleanup_test(); } -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/11709