[IEXPLORE]

* Sync with Wine 1.5.26.

svn path=/trunk/; revision=58803
This commit is contained in:
Amine Khaldi 2013-04-21 13:53:35 +00:00
parent c28ad3b23e
commit 378d3e7b4f
6 changed files with 124 additions and 6 deletions

View file

@ -1,5 +1,7 @@
add_executable(iexplore main.c iexplore.rc)
set_module_type(iexplore win32gui)
add_importlibs(iexplore shdocvw msvcrt kernel32)
target_link_libraries(iexplore wine)
set_module_type(iexplore win32gui UNICODE)
add_importlibs(iexplore ieframe msvcrt kernel32 ntdll)
add_delay_importlibs(iexplore advpack version)
add_cd_file(TARGET iexplore DESTINATION reactos FOR all)

View file

@ -0,0 +1,43 @@
[version]
Signature="$CHICAGO$"
[RegisterIE]
AddReg=Classes.Reg, IE.Reg, Settings.Reg
[UnregisterIE]
DelReg=Classes.Reg, IE.Reg, Settings.Reg
[Classes.Reg]
HKCR,"CLSID\%CLSID_InternetExplorer%",,,"Internet Explorer(Ver 1.0)"
HKCR,"CLSID\%CLSID_InternetExplorer%\LocalServer32",,,"""%16422%\Internet Explorer\iexplore.exe"""
HKCR,"CLSID\%CLSID_InternetExplorer%\ProgID",,,"InternetExplorer.Application.1"
HKCR,"CLSID\%CLSID_InternetExplorer%\VersionIndependentProgID",,,"InternetExplorer.Application"
HKCR,"CLSID\%CLSID_Internet%\DefaultIcon",,,"shdoclc.dll,-190"
HKCR,"CLSID\%CLSID_Internet%\Shell",,,"OpenHomePage"
HKCR,"CLSID\%CLSID_Internet%\Shell\OpenHomePage",,,"Open &Home Page"
HKCR,"CLSID\%CLSID_Internet%\Shell\OpenHomePage\Command",,,"""%16422%\Internet Explorer\iexplore.exe"""
HKCR,"CLSID\%CLSID_Internet%\ShellFolder",,2,"0x24"
[Settings.Reg]
HKCU,"Software\Microsoft\Internet Explorer\Main","Start Page",2,"http://www.winehq.org"
HKCU,"Software\Microsoft\Internet Explorer\Main","Search Page",2,"http://www.google.com"
HKCU,"Software\Microsoft\Internet Explorer\Settings","Text Color",2,"0,0,0"
HKLM,"Software\Microsoft\Internet Explorer\Main","Default_Page_URL",2,"http://www.winehq.org"
HKLM,"Software\Microsoft\Windows\CurrentVersion\App Paths\iexplore.exe",,,"%16422%\Internet Explorer\iexplore.exe"
HKLM,"Software\Microsoft\Windows\CurrentVersion\App Paths\iexplore.exe","Path",,"%16422%\Internet Explorer;"
[IE.Reg]
HKLM,"Software\Microsoft\Internet Explorer","Build",,"86001"
HKLM,"Software\Microsoft\Internet Explorer","Version",,"8.0.6001.18702"
HKLM,"Software\Microsoft\Internet Explorer","W2kVersion",,"8.0.6001.18702"
[Strings]
CLSID_InternetExplorer="{0002df01-0000-0000-c000-000000000046}"
CLSID_Internet="{871c5380-42a0-1069-a2ea-08002b30309d}"

View file

@ -28,3 +28,6 @@
/* @makedep: iexplore.ico */
1 ICON iexplore.ico
/* @makedep: iexplore.inf */
REGINST REGINST iexplore.inf

View file

@ -18,11 +18,81 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
//#include <windows.h>
#include <stdarg.h>
#define WIN32_NO_STATUS
#define _INC_WINDOWS
#define COM_NO_WINDOWS_H
#include <windef.h>
#include <winbase.h>
#include <winuser.h>
#include <winreg.h>
#include <winver.h>
extern DWORD WINAPI IEWinMain(LPSTR, int);
#include <advpub.h>
//#include <ole2.h>
//#include <rpcproxy.h>
int PASCAL WinMain (HINSTANCE hInstance, HINSTANCE prev, LPSTR cmdline, int show)
#include <wine/unicode.h>
#include <wine/debug.h>
extern DWORD WINAPI IEWinMain(const WCHAR*, int);
static BOOL check_native_ie(void)
{
DWORD handle, size;
LPWSTR file_desc;
UINT bytes;
void* buf;
BOOL ret;
static const WCHAR browseui_dllW[] = {'b','r','o','w','s','e','u','i','.','d','l','l',0};
static const WCHAR wineW[] = {'W','i','n','e',0};
static const WCHAR file_desc_strW[] =
{'\\','S','t','r','i','n','g','F','i','l','e','I','n','f','o',
'\\','0','4','0','9','0','4','b','0',
'\\','F','i','l','e','D','e','s','c','r','i','p','t','i','o','n',0};
size = GetFileVersionInfoSizeW(browseui_dllW, &handle);
if(!size)
return TRUE;
buf = HeapAlloc(GetProcessHeap(), 0, size);
GetFileVersionInfoW(browseui_dllW, 0, size,buf);
ret = !VerQueryValueW(buf, file_desc_strW, (void**)&file_desc, &bytes) || !strstrW(file_desc, wineW);
HeapFree(GetProcessHeap(), 0, buf);
return ret;
}
static DWORD register_iexplore(BOOL doregister)
{
HRESULT hres;
if (check_native_ie()) {
WINE_MESSAGE("Native IE detected, not doing registration\n");
return 0;
}
hres = RegInstallA(NULL, doregister ? "RegisterIE" : "UnregisterIE", NULL);
return FAILED(hres);
}
int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE prev, WCHAR *cmdline, int show)
{
static const WCHAR regserverW[] = {'r','e','g','s','e','r','v','e','r',0};
static const WCHAR unregserverW[] = {'u','n','r','e','g','s','e','r','v','e','r',0};
if(*cmdline == '-' || *cmdline == '/') {
if(!strcmpiW(cmdline+1, regserverW))
return register_iexplore(TRUE);
if(!strcmpiW(cmdline+1, unregserverW))
return register_iexplore(FALSE);
}
return IEWinMain(cmdline, show);
}

View file

@ -104,7 +104,7 @@ HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls",,0x00000012
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions",,0x00000012
; FIXME - usetup doesn't handle extra paths
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce","",0x00000000,"cmd /c md ""%programfiles%\Internet Explorer\"" && move %windir%\iexplore.exe ""%programfiles%\Internet Explorer\"""
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce","",0x00000000,"cmd /c md ""%programfiles%\Internet Explorer\"" && move %windir%\iexplore.exe ""%programfiles%\Internet Explorer\"" && ""%programfiles%\Internet Explorer\iexplore.exe"" /RegServer"
; Create .NET Framework InstallRoot key, reg_sz & full path
;HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce","InstallRoot.NET",0x00000000,"cmd /c reg add HKLM\SOFTWARE\Microsoft\.NETFramework /v InstallRoot /t REG_SZ /d %SystemRoot%\Microsoft.NET\Framework\"

View file

@ -212,7 +212,7 @@ ReactOS shares the following programs with Winehq.
reactos/base/applications/cmdutils/xcopy # Synced to Wine-1.3.37
reactos/base/applications/games/winmine # Forked at Wine-1_3_5
reactos/base/applications/extrac32 # Autosync
reactos/base/applications/iexplore # Autosync
reactos/base/applications/iexplore # Synced to Wine-1.5.26
reactos/base/applications/notepad # Forked at Wine-20041201
reactos/base/applications/reg # Autosync
reactos/base/applications/regedit # Out of sync