ReactOS 0.4.16-dev-981-g80eb313
url_main.c
Go to the documentation of this file.
1/*
2 * Copyright 2006 Alexandre Julliard
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#include <stdarg.h>
20#include "windef.h"
21#include "winbase.h"
22#include "winreg.h"
23#include "winerror.h"
24#include "shellapi.h"
25#include "shlwapi.h"
26#include "intshcut.h"
27#include "winuser.h"
28#include "commctrl.h"
29#include "prsht.h"
30#include "wine/debug.h"
31
33
34/***********************************************************************
35 * DllMain (URL.@)
36 */
38{
39 switch(reason)
40 {
41#ifndef __REACTOS__
42 case DLL_WINE_PREATTACH:
43 return FALSE; /* prefer native version */
44#endif
47 break;
48 }
49 return TRUE;
50}
51
52/***********************************************************************
53 * AddMIMEFileTypesPS (URL.@)
54 *
55 * Build and Manage a Filetype-Association Property Sheet
56 *
57 * PARAMS
58 * unknown1 [I] Pointer to an Read-Only Area
59 * lppsh [I] PTR to the target PropertySheetHeader (ANSI)
60 *
61 * RETURNS
62 * Success: 0
63 *
64 */
66{
67 FIXME("(%p, %p): stub!\n", unknown1, lppsh);
68 return 0;
69}
70
71/***********************************************************************
72 * InetIsOffline (URL.@)
73 *
74 */
76{
77 FIXME("(%08x): stub!\n", flags);
78
79 return FALSE;
80}
81
82/***********************************************************************
83 * FileProtocolHandlerA (URL.@)
84 *
85 * Handles a URL given to it and executes it.
86 *
87 * HWND hWnd - Parent Window
88 * HINSTANCE hInst - ignored
89 * LPCSTR pszUrl - The URL that needs to be handled
90 * int nShowCmd - How to display the operation.
91 */
92
94{
95 CHAR pszPath[MAX_PATH];
97 HRESULT createpath = PathCreateFromUrlA(pszUrl,pszPath,&size,0);
98
99 TRACE("(%p, %s, %d)\n",hWnd,debugstr_a(pszUrl),nShowCmd);
100
101 ShellExecuteA(hWnd, NULL, createpath==S_OK ? pszPath : pszUrl, NULL, NULL, nShowCmd);
102}
103
104/***********************************************************************
105 * OpenURLA (URL.@)
106 *
107 */
109{
110#ifdef __REACTOS__
111 TRACE("(%p, %p, %s, %d)\n", hwnd, inst, debugstr_a(cmdline), show);
113#else
114 FIXME("(%p, %p, %s, %d): stub!\n", hwnd, inst, debugstr_a(cmdline), show);
115#endif
116}
117
118/***********************************************************************
119 * TelnetProtocolHandlerA (URL.@)
120 *
121 */
122
124{
125 FIXME("(%p, %p): stub!\n",hWnd,lpStr);
126
127 return E_NOTIMPL;
128}
HWND hWnd
Definition: settings.c:17
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
Definition: precomp.h:23
#define FIXME(fmt,...)
Definition: precomp.h:53
#define E_NOTIMPL
Definition: ddrawi.h:99
#define NULL
Definition: types.h:112
#define TRUE
Definition: types.h:120
#define FALSE
Definition: types.h:117
static WCHAR reason[MAX_STRING_RESOURCE_LEN]
Definition: object.c:1904
#define DLL_PROCESS_ATTACH
Definition: compat.h:131
#define MAX_PATH
Definition: compat.h:34
BOOL WINAPI DisableThreadLibraryCalls(IN HMODULE hLibModule)
Definition: loader.c:85
HRESULT WINAPI PathCreateFromUrlA(LPCSTR pszUrl, LPSTR pszPath, LPDWORD pcchPath, DWORD dwReserved)
Definition: path.c:3312
r reserved
Definition: btrfs.c:3006
HINSTANCE hInst
Definition: dxdiag.c:13
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
GLsizeiptr size
Definition: glext.h:5919
GLbitfield flags
Definition: glext.h:7161
#define S_OK
Definition: intsafe.h:52
#define debugstr_a
Definition: kernel32.h:31
static const WCHAR url[]
Definition: encode.c:1432
HINSTANCE WINAPI ShellExecuteA(HWND hWnd, LPCSTR lpVerb, LPCSTR lpFile, LPCSTR lpParameters, LPCSTR lpDirectory, INT iShowCmd)
Definition: shlexec.cpp:2343
#define TRACE(s)
Definition: solgame.cpp:4
TCHAR * cmdline
Definition: stretchblt.cpp:32
int32_t INT
Definition: typedefs.h:58
void WINAPI OpenURLA(HWND hwnd, HINSTANCE inst, LPCSTR cmdline, INT show)
Definition: url_main.c:108
BOOL WINAPI InetIsOffline(DWORD flags)
Definition: url_main.c:75
BOOL WINAPI DllMain(HINSTANCE inst, DWORD reason, LPVOID reserved)
Definition: url_main.c:37
HRESULT WINAPI TelnetProtocolHandlerA(HWND hWnd, LPSTR lpStr)
Definition: url_main.c:123
DWORD WINAPI AddMIMEFileTypesPS(VOID *unknown1, LPPROPSHEETHEADERA lppsh)
Definition: url_main.c:65
void WINAPI FileProtocolHandlerA(HWND hWnd, HINSTANCE hInst, LPCSTR pszUrl, int nShowCmd)
Definition: url_main.c:93
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023
#define WINAPI
Definition: msvc.h:6
const char * LPCSTR
Definition: xmlstorage.h:183
char * LPSTR
Definition: xmlstorage.h:182
char CHAR
Definition: xmlstorage.h:175