make compatible again to Windows 2000 Modified: trunk/reactos/subsys/system/explorer/shell/mainframe.cpp Modified: trunk/reactos/subsys/system/explorer/utility/shellclasses.cpp Modified: trunk/reactos/subsys/system/explorer/utility/shellclasses.h _____
Modified: trunk/reactos/subsys/system/explorer/shell/mainframe.cpp --- trunk/reactos/subsys/system/explorer/shell/mainframe.cpp 2005-11-20 14:30:08 UTC (rev 19364) +++ trunk/reactos/subsys/system/explorer/shell/mainframe.cpp 2005-11-20 14:31:55 UTC (rev 19365) @@ -453,6 +453,8 @@
dir += 7; }
+ ///@todo use SHGetFileInfo() with SHGFI_EXETYPE flag to determine EXE type and open console window + HINSTANCE hinst = ShellExecute(_hwnd, NULL, p, NULL, dir, SW_SHOWNORMAL);
if ((int)hinst <= 32) _____
Modified: trunk/reactos/subsys/system/explorer/utility/shellclasses.cpp --- trunk/reactos/subsys/system/explorer/utility/shellclasses.cpp 2005-11-20 14:30:08 UTC (rev 19364) +++ trunk/reactos/subsys/system/explorer/utility/shellclasses.cpp 2005-11-20 14:31:55 UTC (rev 19365) @@ -369,7 +369,7 @@
CHECKERROR(sf->GetUIObjectOf(hWnd, 1, &idl, riid, 0, ppvOut)); }
-#if 1 // ILCombine() was missing in previous versions of MinGW. +#if 0 // ILCombine() was missing in previous versions of MinGW and is not exported from shell32.dll on Windows 2000.
// convert an item id list from relative to absolute (=relative to the desktop) format ShellPath ShellPath::create_absolute_pidl(LPCITEMIDLIST parent_pidl) const @@ -415,7 +415,10 @@ return p; }
-UINT ILGetSize(LPCITEMIDLIST pidl) +#endif + + // local implementation of ILGetSize() to replace missing export on Windows 2000 +UINT ILGetSize_local(LPCITEMIDLIST pidl) { if (!pidl) return 0; @@ -430,9 +433,7 @@ return l; }
-#endif
- #ifndef _SHFOLDER_H_ #define CSIDL_FLAG_CREATE 0x8000 #endif _____
Modified: trunk/reactos/subsys/system/explorer/utility/shellclasses.h --- trunk/reactos/subsys/system/explorer/utility/shellclasses.h 2005-11-20 14:30:08 UTC (rev 19364) +++ trunk/reactos/subsys/system/explorer/utility/shellclasses.h 2005-11-20 14:31:55 UTC (rev 19365) @@ -633,15 +633,16 @@
extern HRESULT name_from_pidl(IShellFolder* folder, LPCITEMIDLIST pidl, LPTSTR buffer, int len, SHGDNF flags);
-#if 0 // ILGetSize() was missing in previous versions of MinGW. -extern "C" UINT STDCALL ILGetSize(LPCITEMIDLIST pidl); + // ILGetSize() was missing in previous versions of MinGW and is not exported from shell32.dll on Windows 2000. +extern "C" UINT ILGetSize_local(LPCITEMIDLIST pidl); +#define ILGetSize ILGetSize_local
-#ifdef UNICODE // CFSTR_FILENAME is defined wrong in MinGW. +#if 0 +#ifdef UNICODE // CFSTR_FILENAME was defined wrong in previous versions of MinGW. #define CFSTR_FILENAMEW TEXT("FileNameW") #undef CFSTR_FILENAME #define CFSTR_FILENAME CFSTR_FILENAMEW #endif - #endif