4e2933c620 2015-04-21 kinaba: /***********************************************************************\ 4e2933c620 2015-04-21 kinaba: * intshcut.d * 4e2933c620 2015-04-21 kinaba: * * 4e2933c620 2015-04-21 kinaba: * Windows API header module * 4e2933c620 2015-04-21 kinaba: * * 4e2933c620 2015-04-21 kinaba: * Translated from MinGW Windows headers * 4e2933c620 2015-04-21 kinaba: * by Stewart Gordon * 4e2933c620 2015-04-21 kinaba: * * 4e2933c620 2015-04-21 kinaba: * Placed into public domain * 4e2933c620 2015-04-21 kinaba: \***********************************************************************/ 4e2933c620 2015-04-21 kinaba: module win32.intshcut; 4e2933c620 2015-04-21 kinaba: 4e2933c620 2015-04-21 kinaba: private import win32.unknwn, win32.windef; 4e2933c620 2015-04-21 kinaba: 4e2933c620 2015-04-21 kinaba: enum : SCODE { 4e2933c620 2015-04-21 kinaba: E_FLAGS = 0x80041000, 4e2933c620 2015-04-21 kinaba: // = MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x1000) 4e2933c620 2015-04-21 kinaba: URL_E_INVALID_SYNTAX = 0x80041001, 4e2933c620 2015-04-21 kinaba: // = MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x1001) 4e2933c620 2015-04-21 kinaba: URL_E_UNREGISTERED_PROTOCOL = 0x80041002, // etc. 4e2933c620 2015-04-21 kinaba: IS_E_EXEC_FAILED = 0x80042002 4e2933c620 2015-04-21 kinaba: } 4e2933c620 2015-04-21 kinaba: 4e2933c620 2015-04-21 kinaba: enum IURL_SETURL_FLAGS { 4e2933c620 2015-04-21 kinaba: IURL_SETURL_FL_GUESS_PROTOCOL = 1, 4e2933c620 2015-04-21 kinaba: IURL_SETURL_FL_USE_DEFAULT_PROTOCOL, 4e2933c620 2015-04-21 kinaba: ALL_IURL_SETURL_FLAGS 4e2933c620 2015-04-21 kinaba: } 4e2933c620 2015-04-21 kinaba: 4e2933c620 2015-04-21 kinaba: enum IURL_INVOKECOMMAND_FLAGS { 4e2933c620 2015-04-21 kinaba: IURL_INVOKECOMMAND_FL_ALLOW_UI = 1, 4e2933c620 2015-04-21 kinaba: IURL_INVOKECOMMAND_FL_USE_DEFAULT_VERB, 4e2933c620 2015-04-21 kinaba: ALL_IURL_INVOKECOMMAND_FLAGS 4e2933c620 2015-04-21 kinaba: } 4e2933c620 2015-04-21 kinaba: 4e2933c620 2015-04-21 kinaba: enum TRANSLATEURL_IN_FLAGS { 4e2933c620 2015-04-21 kinaba: TRANSLATEURL_FL_GUESS_PROTOCOL = 1, 4e2933c620 2015-04-21 kinaba: TRANSLATEURL_FL_USE_DEFAULT_PROTOCOL, 4e2933c620 2015-04-21 kinaba: ALL_TRANSLATEURL_FLAGS 4e2933c620 2015-04-21 kinaba: } 4e2933c620 2015-04-21 kinaba: 4e2933c620 2015-04-21 kinaba: enum URLASSOCIATIONDIALOG_IN_FLAGS { 4e2933c620 2015-04-21 kinaba: URLASSOCDLG_FL_USE_DEFAULT_NAME = 1, 4e2933c620 2015-04-21 kinaba: URLASSOCDLG_FL_REGISTER_ASSOC, 4e2933c620 2015-04-21 kinaba: ALL_URLASSOCDLG_FLAGS 4e2933c620 2015-04-21 kinaba: } 4e2933c620 2015-04-21 kinaba: 4e2933c620 2015-04-21 kinaba: enum MIMEASSOCIATIONDIALOG_IN_FLAGS { 4e2933c620 2015-04-21 kinaba: MIMEASSOCDLG_FL_REGISTER_ASSOC = 1, 4e2933c620 2015-04-21 kinaba: ALL_MIMEASSOCDLG_FLAGS = MIMEASSOCDLG_FL_REGISTER_ASSOC 4e2933c620 2015-04-21 kinaba: } 4e2933c620 2015-04-21 kinaba: 4e2933c620 2015-04-21 kinaba: struct URLINVOKECOMMANDINFO { 4e2933c620 2015-04-21 kinaba: DWORD dwcbSize = URLINVOKECOMMANDINFO.sizeof; 4e2933c620 2015-04-21 kinaba: DWORD dwFlags; 4e2933c620 2015-04-21 kinaba: HWND hwndParent; 4e2933c620 2015-04-21 kinaba: PCSTR pcszVerb; 4e2933c620 2015-04-21 kinaba: } 4e2933c620 2015-04-21 kinaba: alias URLINVOKECOMMANDINFO CURLINVOKECOMMANDINFO; 4e2933c620 2015-04-21 kinaba: alias URLINVOKECOMMANDINFO* PURLINVOKECOMMANDINFO, PCURLINVOKECOMMANDINFO; 4e2933c620 2015-04-21 kinaba: 4e2933c620 2015-04-21 kinaba: interface IUniformResourceLocator : IUnknown { 4e2933c620 2015-04-21 kinaba: HRESULT SetURL(PCSTR, DWORD); 4e2933c620 2015-04-21 kinaba: HRESULT GetURL(PSTR*); 4e2933c620 2015-04-21 kinaba: HRESULT InvokeCommand(PURLINVOKECOMMANDINFO); 4e2933c620 2015-04-21 kinaba: } 4e2933c620 2015-04-21 kinaba: alias IUniformResourceLocator CIUniformResourceLocator; 4e2933c620 2015-04-21 kinaba: alias IUniformResourceLocator* PIUniformResourceLocator, 4e2933c620 2015-04-21 kinaba: PCIUniformResourceLocator; 4e2933c620 2015-04-21 kinaba: 4e2933c620 2015-04-21 kinaba: extern (Windows) { 4e2933c620 2015-04-21 kinaba: BOOL InetIsOffline(DWORD); 4e2933c620 2015-04-21 kinaba: HRESULT MIMEAssociationDialogA(HWND, DWORD, PCSTR, PCSTR, PSTR, UINT); 4e2933c620 2015-04-21 kinaba: HRESULT MIMEAssociationDialogW(HWND, DWORD, PCWSTR, PCWSTR, PWSTR, UINT); 4e2933c620 2015-04-21 kinaba: HRESULT TranslateURLA(PCSTR, DWORD, PSTR*); 4e2933c620 2015-04-21 kinaba: HRESULT TranslateURLW(PCWSTR, DWORD, PWSTR*); 4e2933c620 2015-04-21 kinaba: HRESULT URLAssociationDialogA(HWND, DWORD, PCSTR, PCSTR, PSTR, UINT); 4e2933c620 2015-04-21 kinaba: HRESULT URLAssociationDialogW(HWND, DWORD, PCWSTR, PCWSTR, PWSTR, UINT); 4e2933c620 2015-04-21 kinaba: } 4e2933c620 2015-04-21 kinaba: 4e2933c620 2015-04-21 kinaba: version (Unicode) { 4e2933c620 2015-04-21 kinaba: alias TranslateURLW TranslateURL; 4e2933c620 2015-04-21 kinaba: alias MIMEAssociationDialogW MIMEAssociationDialog; 4e2933c620 2015-04-21 kinaba: alias URLAssociationDialogW URLAssociationDialog; 4e2933c620 2015-04-21 kinaba: } else { 4e2933c620 2015-04-21 kinaba: alias TranslateURLA TranslateURL; 4e2933c620 2015-04-21 kinaba: alias MIMEAssociationDialogA MIMEAssociationDialog; 4e2933c620 2015-04-21 kinaba: alias URLAssociationDialogA URLAssociationDialog; 4e2933c620 2015-04-21 kinaba: }