3 * UWP icall support for Mono.
5 * Copyright 2016 Microsoft
6 * Licensed under the MIT license. See LICENSE file in the project root for full license information.
10 #include "mono/utils/mono-compiler.h"
12 #include "mono/metadata/icall-windows-internals.h"
13 #include "mono/metadata/w32subset.h"
15 #if !HAVE_API_SUPPORT_WIN32_GET_COMPUTER_NAME
17 mono_icall_get_machine_name (MonoError
*error
)
19 g_unsupported_api ("GetComputerName");
20 return mono_string_new_handle (mono_domain_get (), "mono", error
);
24 #if !HAVE_API_SUPPORT_WIN32_SH_GET_FOLDER_PATH
26 mono_icall_get_windows_folder_path (int folder
, MonoError
*error
)
29 g_unsupported_api ("SHGetFolderPath");
30 return mono_string_new_handle (mono_domain_get (), "", error
);
34 #if !HAVE_API_SUPPORT_WIN32_GET_LOGICAL_DRIVE_STRINGS
36 mono_icall_get_logical_drives (MonoError
*error
)
38 g_unsupported_api ("GetLogicalDriveStrings");
40 mono_error_set_not_supported (error
, G_UNSUPPORTED_API
, "GetLogicalDriveStrings");
42 SetLastError (ERROR_NOT_SUPPORTED
);
44 return NULL_HANDLE_ARRAY
;
48 #if !HAVE_API_SUPPORT_WIN32_SEND_MESSAGE_TIMEOUT
50 ves_icall_System_Environment_BroadcastSettingChange (MonoError
*error
)
52 g_unsupported_api ("SendMessageTimeout");
54 mono_error_set_not_supported (error
, G_UNSUPPORTED_API
, "SendMessageTimeout");
56 SetLastError (ERROR_NOT_SUPPORTED
);
60 #if !HAVE_API_SUPPORT_WIN32_WAIT_FOR_INPUT_IDLE
62 mono_icall_wait_for_input_idle (gpointer handle
, gint32 milliseconds
)
66 g_unsupported_api ("WaitForInputIdle");
68 mono_error_set_not_supported (error
, G_UNSUPPORTED_API
, "WaitForInputIdle");
69 mono_error_set_pending_exception (error
);
75 MONO_EMPTY_SOURCE_FILE (icall_windows_uwp
);