ReactOS  0.4.14-dev-337-gf981a68
intshcut.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2007 Francois Gouget
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17  */
18 
19 #ifndef __WINE_INTSHCUT_H
20 #define __WINE_INTSHCUT_H
21 
22 #include <isguids.h>
23 
24 #define INTSHCUTAPI
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
30 #define E_FLAGS MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x1000)
31 #define IS_E_EXEC_FAILED MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x2002)
32 #define URL_E_INVALID_SYNTAX MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x1001)
33 #define URL_E_UNREGISTERED_PROTOCOL MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x1002)
34 
35 typedef enum iurl_seturl_flags {
40 
46 
47 typedef struct urlinvokecommandinfoA {
55 
56 typedef struct urlinvokecommandinfoW {
64 
65 #define INTERFACE IUniformResourceLocatorA
66 DECLARE_INTERFACE_(IUniformResourceLocatorA,IUnknown)
67 {
68  /*** IUnknown methods ***/
72  /*** IUniformResourceLocatorA methods ***/
73  STDMETHOD(SetURL)(THIS_ LPCSTR pcszURL, DWORD dwInFlags) PURE;
74  STDMETHOD(GetURL)(THIS_ LPSTR *ppszURL) PURE;
75  STDMETHOD(InvokeCommand)(THIS_ PURLINVOKECOMMANDINFOA pURLCommandInfo) PURE;
76 };
77 #undef INTERFACE
78 
79 #define INTERFACE IUniformResourceLocatorW
80 DECLARE_INTERFACE_(IUniformResourceLocatorW,IUnknown)
81 {
82  /*** IUnknown methods ***/
86  /*** IUniformResourceLocatorW methods ***/
87  STDMETHOD(SetURL)(THIS_ LPCWSTR pcszURL, DWORD dwInFlags) PURE;
88  STDMETHOD(GetURL)(THIS_ LPWSTR *ppszURL) PURE;
89  STDMETHOD(InvokeCommand)(THIS_ PURLINVOKECOMMANDINFOW pURLCommandInfo) PURE;
90 };
91 #undef INTERFACE
92 
93 DECL_WINELIB_TYPE_AW(URLINVOKECOMMANDINFO)
94 DECL_WINELIB_TYPE_AW(PURLINVOKECOMMANDINFO)
95 DECL_WINELIB_TYPE_AW(CURLINVOKECOMMANDINFO)
96 DECL_WINELIB_TYPE_AW(PCURLINVOKECOMMANDINFO)
97 
98 
103 
106 #define TranslateURL WINELIB_NAME_AW(TranslateURL)
107 
109 
110 #ifdef __cplusplus
111 }
112 #endif
113 
114 #endif /* __WINE_INTSHCUT_H */
#define REFIID
Definition: guiddef.h:118
#define THIS_
Definition: basetyps.h:65
_In_ BOOLEAN Release
Definition: classpnp.h:929
DECLARE_INTERFACE_(IUniformResourceLocatorA, IUnknown)
Definition: intshcut.h:66
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
#define THIS
Definition: basetyps.h:66
struct urlinvokecommandinfoA URLINVOKECOMMANDINFOA
translateurl_in_flags
Definition: intshcut.h:99
REFIID riid
Definition: precomp.h:44
const URLINVOKECOMMANDINFOA * PCURLINVOKECOMMANDINFOA
Definition: intshcut.h:54
const URLINVOKECOMMANDINFOA CURLINVOKECOMMANDINFOA
Definition: intshcut.h:53
NTSTATUS QueryInterface(IN PDEVICE_OBJECT DeviceObject, IN CONST GUID InterfaceType, IN LONG Size, IN LONG Version, OUT PVOID Interface)
Definition: fdo.c:532
char * LPSTR
Definition: xmlstorage.h:182
#define STDMETHOD(m)
Definition: basetyps.h:62
const URLINVOKECOMMANDINFOW CURLINVOKECOMMANDINFOW
Definition: intshcut.h:62
#define DECL_WINELIB_TYPE_AW(type)
Definition: windef.h:386
unsigned int BOOL
Definition: ntddk_ex.h:94
struct urlinvokecommandinfoA * PURLINVOKECOMMANDINFOA
const char * LPCSTR
Definition: xmlstorage.h:183
LONG HRESULT
Definition: typedefs.h:77
#define WINAPI
Definition: msvc.h:8
unsigned long DWORD
Definition: ntddk_ex.h:95
struct urlinvokecommandinfoW * PURLINVOKECOMMANDINFOW
const URLINVOKECOMMANDINFOW * PCURLINVOKECOMMANDINFOW
Definition: intshcut.h:63
HRESULT WINAPI TranslateURLW(LPCWSTR, DWORD, LPWSTR *)
HRESULT WINAPI TranslateURLA(LPCSTR, DWORD, LPSTR *)
enum iurl_invokecommand_flags IURL_INVOKECOMMAND_FLAGS
iurl_seturl_flags
Definition: intshcut.h:35
REFIID LPVOID * ppvObject
Definition: precomp.h:44
enum translateurl_in_flags TRANSLATEURL_IN_FLAGS
#define PURE
Definition: basetyps.h:64
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:90
iurl_invokecommand_flags
Definition: intshcut.h:41
BOOL WINAPI InetIsOffline(DWORD)
Definition: url_main.c:73
struct urlinvokecommandinfoW URLINVOKECOMMANDINFOW
unsigned int ULONG
Definition: retypes.h:1
WCHAR * LPWSTR
Definition: xmlstorage.h:184
enum iurl_seturl_flags IURL_SETURL_FLAGS
#define STDMETHOD_(t, m)
Definition: basetyps.h:63