Reactos
1/*
2 * Query Implementation
3 *
4 * Copyright 2006 Mike McCormack
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21#define COBJMACROS
22
23
24#include <stdarg.h>
25
26#include "windef.h"
27#include "winbase.h"
28#include "winuser.h"
29#include "winreg.h"
30#include "ole2.h"
31#include "ntquery.h"
32#include "cierror.h"
33#include "initguid.h"
34
35#include "wine/debug.h"
36
37WINE_DEFAULT_DEBUG_CHANNEL(query);
38
39BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpv)
40{
41 switch(fdwReason)
42 {
43#ifndef __REACTOS__
44 case DLL_WINE_PREATTACH:
45 return FALSE; /* prefer native version */
46#endif
47 case DLL_PROCESS_ATTACH:
48 DisableThreadLibraryCalls(hInstDLL);
49 break;
50 }
51 return TRUE;
52}
53
54/***********************************************************************
55 * DllGetClassObject (QUERY.@)
56 */
57HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID iid, LPVOID *ppv)
58{
59 FIXME("%s %s %p\n", debugstr_guid(rclsid), debugstr_guid(iid), ppv);
60
61 return CLASS_E_CLASSNOTAVAILABLE;
62}
63
64HRESULT WINAPI DllCanUnloadNow(void)
65{
66 return S_FALSE;
67}
68
69HRESULT WINAPI DllRegisterServer(void)
70{
71 FIXME("\n");
72 return S_OK;
73}
74
75HRESULT WINAPI CIState( WCHAR const *pwcsCat, WCHAR const *pwcsMachine, CI_STATE *pCiState)
76{
77 FIXME("%s %s %p\n", debugstr_w(pwcsCat), debugstr_w(pwcsMachine), pCiState);
78 return CI_E_NOT_RUNNING;
79}
80
81HRESULT WINAPI LocateCatalogsA(CHAR const *pwszScope, ULONG iBm,
82 CHAR *pwszMachine, ULONG *pcMachine,
83 CHAR *pwszCat, ULONG *pcCat)
84{
85
86 FIXME("%s %u %p %p %p %p\n", debugstr_a(pwszScope),
87 iBm, pwszMachine, pcMachine, pwszCat, pcCat);
88 return CI_E_NOT_RUNNING;
89}
90
91HRESULT WINAPI LocateCatalogsW(WCHAR const *pwszScope, ULONG iBm,
92 WCHAR *pwszMachine, ULONG *pcMachine,
93 WCHAR *pwszCat, ULONG *pcCat)
94{
95
96 FIXME("%s %u %p %p %p %p\n", debugstr_w(pwszScope),
97 iBm, pwszMachine, pcMachine, pwszCat, pcCat);
98 return CI_E_NOT_RUNNING;
99}
100
101HRESULT WINAPI LoadIFilter(WCHAR const *pwcsPath, IUnknown *pUnkOuter, void **ppIUnk)
102{
103 FIXME("%s %p %p\n", debugstr_w(pwcsPath), pUnkOuter, ppIUnk);
104 *ppIUnk = NULL;
105 return E_NOTIMPL;
106}