mirror of
https://github.com/reactos/reactos.git
synced 2024-11-23 03:23:34 +08:00
[INF][BOOTDATA][SETUPAPI] Use Inf instead of Cmd.exe to register IExplore (#7171)
This moves the IExplore registration from cmd.exe (established in 4a4060ce3c
(r52196) for CORE-1370) to syssetup.inf to avoid console popups on first boot.
This commit is contained in:
parent
7f021debdc
commit
a8b33400a2
@ -457,9 +457,7 @@ HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions",,0x00000012
|
||||
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\ShellServiceObjectDelayLoad",,0x00000012
|
||||
|
||||
; FIXME - Setup 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\"" && ""%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\"
|
||||
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\Finalize","1",,"||rundll32.exe setupapi.dll,InstallHinfSection Finalize 128 %systemroot%\inf\syssetup.inf"
|
||||
|
||||
HKCU,"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons",,0x00000012
|
||||
HKCU,"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu",,0x00000012
|
||||
|
@ -533,9 +533,7 @@ static BOOL do_register_dll( const struct register_dll_info *info, const WCHAR *
|
||||
HMODULE module;
|
||||
HRESULT res;
|
||||
SP_REGISTER_CONTROL_STATUSW status;
|
||||
#ifdef __WINESRC__
|
||||
IMAGE_NT_HEADERS *nt;
|
||||
#endif
|
||||
|
||||
status.cbSize = sizeof(status);
|
||||
status.FileName = path;
|
||||
@ -565,7 +563,6 @@ static BOOL do_register_dll( const struct register_dll_info *info, const WCHAR *
|
||||
goto done;
|
||||
}
|
||||
|
||||
#ifdef __WINESRC__
|
||||
if ((nt = RtlImageNtHeader( module )) && !(nt->FileHeader.Characteristics & IMAGE_FILE_DLL))
|
||||
{
|
||||
/* file is an executable, not a dll */
|
||||
@ -604,7 +601,6 @@ static BOOL do_register_dll( const struct register_dll_info *info, const WCHAR *
|
||||
CloseHandle( info.hProcess );
|
||||
goto done;
|
||||
}
|
||||
#endif // __WINESRC__
|
||||
|
||||
if (flags & FLG_REGSVR_DLLREGISTER)
|
||||
{
|
||||
@ -697,7 +693,12 @@ static BOOL register_dlls_callback( HINF hinf, PCWSTR field, void *arg )
|
||||
if (!SetupGetIntField( &context, 4, &flags )) flags = 0;
|
||||
|
||||
/* get timeout */
|
||||
#ifdef __REACTOS__
|
||||
/* "11,,cmd.exe,,,/K dir" means default timeout, not a timeout of zero */
|
||||
if (!SetupGetIntField( &context, 5, &timeout ) || timeout == 0) timeout = 60;
|
||||
#else
|
||||
if (!SetupGetIntField( &context, 5, &timeout )) timeout = 60;
|
||||
#endif
|
||||
|
||||
/* get command line */
|
||||
args = NULL;
|
||||
|
@ -144,3 +144,19 @@ Control="System\CurrentControlSet\Control"
|
||||
|
||||
[Classes]
|
||||
HKLM,%CurrentVersion%\Installer,"InstallerLocation",,"%11%"
|
||||
HKLM,Software\Microsoft\.NETFramework,InstallRoot,,"%10%\Microsoft.NET\Framework\"
|
||||
|
||||
[DestinationDirs]
|
||||
IECopy=16422,Internet Explorer
|
||||
|
||||
[Finalize] ; Executed by RunOnceEx on first normal boot
|
||||
; FIXME: This should be moved to ie.inf,DefaultInstall and executed by [Infs.Always]
|
||||
CopyFiles=IECopy
|
||||
RegisterDlls=IEReg
|
||||
|
||||
[IECopy]
|
||||
iexplore.exe,..\iexplore.exe,,0x00002000
|
||||
|
||||
[IEReg]
|
||||
16422,Internet Explorer,iexplore.exe
|
||||
11,,rundll32.exe,,,"advpack.dll,DelNodeRunDLL32 ""%10%\iexplore.exe"""
|
||||
|
Loading…
Reference in New Issue
Block a user