mirror of
https://github.com/reactos/reactos.git
synced 2024-07-05 12:15:46 +00:00
[RSHELL]
* Implemented a class that wraps CMenuBand, for the purpose of logging the calls, with parameters and returned values (disabled, set WRAP_LOG to 1). * Partial (WIP) implementation of CMenuBand. [ATL] * VirtualAlloc can not have a non-zero size while using MEM_RELEASE. svn path=/branches/shell-experiments/; revision=62132
This commit is contained in:
parent
2dc8375579
commit
5f6b18cc4d
|
@ -8,8 +8,9 @@ spec2def(rshell.dll rshell.spec ADD_IMPORTLIB)
|
||||||
|
|
||||||
list(APPEND SOURCE
|
list(APPEND SOURCE
|
||||||
CDesktopBrowser.cpp
|
CDesktopBrowser.cpp
|
||||||
CStartMenu.cpp
|
CMenuBand.cpp
|
||||||
CMenuSite.cpp
|
CMenuSite.cpp
|
||||||
|
CStartMenu.cpp
|
||||||
misc.cpp
|
misc.cpp
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/rshell.def)
|
${CMAKE_CURRENT_BINARY_DIR}/rshell.def)
|
||||||
|
|
||||||
|
@ -30,3 +31,9 @@ add_importlibs(rshell
|
||||||
msvcrt
|
msvcrt
|
||||||
kernel32
|
kernel32
|
||||||
ntdll)
|
ntdll)
|
||||||
|
|
||||||
|
add_custom_command(TARGET rshell POST_BUILD
|
||||||
|
COMMAND "${CMAKE_COMMAND}" -E copy
|
||||||
|
"$<TARGET_FILE:rshell>"
|
||||||
|
"G:/reactos/vs12/reactos/base/shell/explorer-new/$<CONFIGURATION>/$<TARGET_FILE_NAME:rshell>"
|
||||||
|
COMMENT "Copying to output directory")
|
||||||
|
|
1855
base/shell/rshell/CMenuBand.cpp
Normal file
1855
base/shell/rshell/CMenuBand.cpp
Normal file
File diff suppressed because it is too large
Load diff
|
@ -259,14 +259,18 @@ CStartMenu_Constructor(
|
||||||
IShellFolder *shellFolder;
|
IShellFolder *shellFolder;
|
||||||
IShellFolder *psfStartMenu;
|
IShellFolder *psfStartMenu;
|
||||||
|
|
||||||
|
#if 0
|
||||||
hr = CoCreateInstance(CLSID_MenuBand,
|
hr = CoCreateInstance(CLSID_MenuBand,
|
||||||
NULL,
|
NULL,
|
||||||
CLSCTX_INPROC_SERVER,
|
CLSCTX_INPROC_SERVER,
|
||||||
IID_PPV_ARG(IShellMenu, &pShellMenu));
|
IID_PPV_ARG(IShellMenu, &pShellMenu));
|
||||||
|
#else
|
||||||
|
hr = CMenuBand_Constructor(IID_PPV_ARG(IShellMenu, &pShellMenu));
|
||||||
|
#endif
|
||||||
if (FAILED(hr))
|
if (FAILED(hr))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
#if 0
|
#if 1
|
||||||
hr = CoCreateInstance(CLSID_MenuBandSite,
|
hr = CoCreateInstance(CLSID_MenuBandSite,
|
||||||
NULL,
|
NULL,
|
||||||
CLSCTX_INPROC_SERVER,
|
CLSCTX_INPROC_SERVER,
|
||||||
|
|
|
@ -31,3 +31,4 @@
|
||||||
extern "C" INT WINAPI Shell_GetCachedImageIndex(LPCWSTR szPath, INT nIndex, UINT bSimulateDoc);
|
extern "C" INT WINAPI Shell_GetCachedImageIndex(LPCWSTR szPath, INT nIndex, UINT bSimulateDoc);
|
||||||
|
|
||||||
extern "C" HRESULT CMenuSite_Constructor(REFIID riid, LPVOID *ppv);
|
extern "C" HRESULT CMenuSite_Constructor(REFIID riid, LPVOID *ppv);
|
||||||
|
extern "C" HRESULT CMenuBand_Constructor(REFIID riid, LPVOID *ppv);
|
|
@ -164,7 +164,7 @@ public:
|
||||||
|
|
||||||
~CWndProcThunk()
|
~CWndProcThunk()
|
||||||
{
|
{
|
||||||
VirtualFree(m_pthunk, sizeof(thunkCode), MEM_RELEASE);
|
VirtualFree(m_pthunk, 0, MEM_RELEASE);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOL Init(WNDPROC proc, void *pThis)
|
BOOL Init(WNDPROC proc, void *pThis)
|
||||||
|
|
Loading…
Reference in a new issue