CN103955378A - 一种针对ie内核浏览器的配置信息处理方法和装置 - Google Patents
一种针对ie内核浏览器的配置信息处理方法和装置 Download PDFInfo
- Publication number
- CN103955378A CN103955378A CN201410126674.6A CN201410126674A CN103955378A CN 103955378 A CN103955378 A CN 103955378A CN 201410126674 A CN201410126674 A CN 201410126674A CN 103955378 A CN103955378 A CN 103955378A
- Authority
- CN
- China
- Prior art keywords
- browser
- function
- kernel
- title
- browser process
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种针对IE内核浏览器的配置信息处理方法和装置,涉及浏览器技术领域。本发明在需要加载IE内核的浏览器进程启动时,对于用于获取浏览器进程名称的函数,将该函数进行拦截,然后对于该函数获取的浏览器进程名称替换为与IE内核特征一致的第二进程名称,即可直接利用系统本身自带的IE浏览器的注册表。解决了由于IE内核版本众多,特性不一,针对不同IE内核均需要单独写一套配置信息,维护成本非常高问题,解决了无法及时的跟进IE新版本的新特性的问题,解决了由于人工原因导致的可能的设置错误而导致的浏览器无法工作、浏览器崩溃的问题,达到了降低维护成本,减少浏览器错误几率的效果。
Description
技术领域
本发明涉及浏览器技术领域,具体涉及一种针对IE内核浏览器的配置信息处理方法和装置。
背景技术
随着浏览器技术的发展,市场中各种浏览器厂商可能采用不同的内核构建自己的浏览器,比如IE内核。IE内核具有很多特性功能,比如是否开启硬件加速,是否开启下载黄条提示,是否开启https不安全提示等。采用IE内核开发的应用都可以定制自己的内核特性。IE内核利用注册表来记录不同的应用定制的特性开关,通过应用程序的名字来区分各自的定制。如图1所示,在注册表:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InternetExplorer\MAIN\FeatureControl
下记录不同的应用定制的特性开关。
传统的利用IE内核构建浏览器的技术中,为了保证浏览器正常运行,需要技术人员根据观察IE内核的配置,在自己的浏览器中写配置信息,通过SHSetValue函数来往注册表设置特性开关。但是由于以IE内核本身的限制,采用IE内核构建浏览器时,其自己在浏览器中写的配置信息必须与IE内核一致,需要针对不同的ie来设置不同的特性选项,一旦特性设置错误就会导致浏览器无法工作,特性设置错误就会导致浏览器崩溃,渲染错误等非常严重的问题。并且,进一步的:其一,由于IE内核版本众多,特性不一,针对不同IE内核均需要单独写一套配置信息,特别是同时采用多个IE内核的浏览器,维护成本非常高;其二,由于IE内核一直在开发新版本,导致无法及时的跟进IE新版本的新特性。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的针对IE内核浏览器的配置信息处理的装置和相应的针对IE内核浏览器的配置信息处理方法。
依据本发明的一个方面,提供了一种针对IE内核浏览器的配置信息处理方法,包括:
启动需要加载IE内核的浏览器进程;
拦截用于获取浏览器进程名称的函数;
针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
可选地,所述拦截用于获取浏览器进程名称的函数包括:
拦截GetModuleFileNameW函数和GetModuleBaseNameW函数。
可选地,所述针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称包括:
将利用所述函数获取的浏览器进程名,替换为iexplore.exe。
可选地,所述拦截用于获取浏览器进程名称的函数包括:
针对各版本的ie内核的浏览器进程,均拦截用于获取进程名称的函数。
可选地,所述拦截用于获取进程名称的函数包括:
通过钩子函数对所述用于获取浏览器进程名称的函数进行拦截。
本发明还公开了一种针对IE内核浏览器的配置信息处理装置,包括:
启动模块,适于启动需要加载IE内核的浏览器进;
拦截模块,适于拦截用于获取浏览器进程名称的函数;
替换模块,适于针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
配置确认模块,适于利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
可选地,所述拦截模块包括:
浏览器拦截模块,适于拦截GetModuleFileNameW函数和GetModuleBaseNameW函数。
可选地,所述替换模块包括:
浏览器替换模块,适于将利用所述函数获取的浏览器进程名,替换为iexplore.exe。
可选地,所述拦截模块包括:
第二拦截模块,适于针对各版本的ie内核的浏览器进程,均拦截用于获取进程名称的函数。
可选地,所述拦截模块还包括:
钩取模块,适于通过钩子函数对所述用于获取浏览器进程名称的函数进行拦截。
依据本发明的另外一个方面,公开了一种针对IE内核浏览器的配置信息处理方法,包括:
启动浏览器进程后,判断所述浏览器进程是否需要加载IE内核;
如果所述浏览器进程需要加载IE内核,拦截用于获取浏览器进程名称的函数;
针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
可选地,所述拦截用于获取浏览器进程名称的函数包括:
拦截GetModuleFileNameW函数和GetModuleBaseNameW函数。
可选地,所述针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称包括:
将利用所述函数获取的浏览器进程名,替换为iexplore.exe。
可选地,所述拦截用于获取浏览器进程名称的函数包括:
针对各版本的ie内核的浏览器进程,均拦截用于获取进程名称的函数。
可选地,所述拦截用于获取进程名称的函数包括:
通过钩子函数对所述用于获取浏览器进程名称的函数进行拦截。
本发明还公开了一种针对IE内核浏览器的配置信息处理装置,包括:
启动判断模块,适于启动浏览器进程后,判断所述浏览器进程是否需要加载IE内核;
拦截模块,适于如果所述浏览器进程需要加载IE内核,拦截用于获取浏览器进程名称的函数;
替换模块,适于针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
配置确认模块,适于利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
可选地,所述拦截模块包括:
浏览器拦截模块,适于拦截GetModuleFileNameW函数和GetModuleBaseNameW函数。
可选地,所述替换模块包括:
浏览器替换模块,适于将利用所述函数获取的浏览器进程名,替换为iexplore.exe。
可选地,所述拦截模块包括:
第二拦截模块,适于针对各版本的ie内核的浏览器进程,均拦截用于获取进程名称的函数。
可选地,所述拦截模块还包括:
钩取模块,适于通过钩子函数对所述用于获取浏览器进程名称的函数进行拦截。
根据本发明一种针对IE内核浏览器的配置信息处理方法,本发明的发明人在大量的实验和纠错过程中,发现IE内核的一致性的监测标准不用浏览器中的配置信息,每一条特性都与IE内核特性的所有值完全匹配,只需要浏览器的进程与IE内核的本身规定的执行进程名称一致,IE内核即判定浏览器的配置信息与IE内核特性一致。因此,本发明不用预先通过SHSetValue函数来往注册表设置开关,只需要在需要加载IE内核的浏览器进程启动时,对于用于获取浏览器进程名称的函数(该获取得到的进程名用于读取注册表,去加载进程),将该函数进行拦截,然后对于该函数获取的进程名称替换为与IE内核特征一致的第二进程名称,即可直接利用系统本身自带的IE浏览器的注册表,即意味着将IE浏览器的注册表作为该以IE内核构建的浏览器的配置信息。解决了由于IE内核版本众多,特性不一,针对不同IE内核均需要单独写一套配置信息,特别是同时采用多个IE内核的浏览器,维护成本非常高问题,解决由于IE内核一直在开发新版本,导致无法及时的跟进IE新版本的新特性的问题,解决了由于人工原因导致的可能的设置错误而导致的浏览器无法工作、浏览器崩溃的问题,达到了降低维护成本,减少浏览器错误几率的效果。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了IE内核特性的注册表示例;
图2示出了根据本发明一个实施例的一种针对IE内核浏览器的配置信息处理方法的流程示意图;
图2A示出了根据本发明一个实施例的对浏览器进程替换为iexplorer.exe的代码示例;
图3示出了根据本发明一个实施例的一种针对IE内核浏览器的配置信息处理方法的流程示意图;
图4示出了根据本发明一个实施例的一种针对IE内核浏览器的配置信息处理装置的结构示意图;
图5示出了根据本发明一个实施例的一种针对IE内核浏览器的配置信息处理装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明的核心思想之一在于:
本发明不用预先通过SHSetValue函数来往注册表设置开关,只需要在需要加载IE内核的浏览器进程启动时,对于用于获取浏览器进程名称的函数(该获取得到的进程名用于读取注册表,去加载进程),将该函数进行拦截,然后对于该函数获取的进程名称替换为与IE内核特征一致的第二进程名称,即可直接利用系统本身自带的IE浏览器的注册表,即意味着将IE浏览器的注册表作为该以IE内核构建的浏览器的配置信息。解决了由于IE内核版本众多,特性不一,针对不同IE内核均需要单独写一套配置信息,特别是同时采用多个IE内核的浏览器,维护成本非常高问题,解决由于IE内核一直在开发新版本,导致无法及时的跟进IE新版本的新特性的问题,解决了由于人工原因导致的可能的设置错误而导致的浏览器无法工作、浏览器崩溃的问题,达到了降低维护成本,减少浏览器错误几率的效果。
实施例一
参照图2,其示出了本发明实施例一种针对IE内核浏览器的配置信息处理方法的流程示意图,具体可以包括:
步骤110,启动需要加载IE内核的浏览器进;
本发明实施例中,对于以IE内核构建的浏览器,比如360浏览器,那么点击要使用该浏览器时,要点击360se.exe,如果其启动时是采用的是IE内核,则其启动的就是需要加载IE内核的浏览器进程。
步骤120,拦截用于获取浏览器进程名称的函数;
在程序启动过程中,需要加载所需求的资源,而加载资源则需要通过配置信息,在window系统中,比如windows XP/Me/NT/2000等操作系统中,配置信息基本上是以注册表的形式存在,即进程启动时需要访问注册表去加载资源,而访问注册表的关键值就包括了程序的进程名。那么本发明在此则拦截程序传统启动流程中使调用的用于获取浏览器进程名称的函数,以拦截其得到的浏览器进程名称,避免程序直接以该进程名去查找注册表,从而加载资源。
优选的,所述拦截用于获取浏览器进程名称的函数包括:
子步骤121,拦截GetModuleFileNameW函数和GetModuleBaseNameW函数。
GetModuleFileNameW函数,其原型为GetModuleFileName,用于获取当前进程已加载模块的文件的完整路径,该模块必须由当前进程加载,其完整路径最末尾即为进程名称。其参数有三个:
hModule Long(In_opt):
一个模块的句柄。可以是一个DLL模块,或者是一个应用程序的实例句柄。如果该参数为NULL,该函数返回该应用程序全路径。
lpFileName String(Out):
指定一个字串缓冲区,要在其中容纳文件的用NULL字符中止的路径名,hModule模块就是从这个文件装载进来的。
nSize Long(In):
装载到缓冲区lpFileName的最大字符数量。
GetModuleBaseNameW函数其原型为GetModuleBaseName,用于获取指定进程名称。其参数有四个:
hProcess[in]:执行模块的进程句柄,句柄必须process_query_information和process_vm_read访问权限。
hModule[in,optional]
模块的句柄,如果这个参数为空,这个函数返回用于创建调用进程的文件的名称。
lpBaseName[out]
指定一个基本缓冲区。
nSize[in]
lpBaseName缓存区大小。
优选的,所述拦截用于获取进程名称的函数包括:
子步骤122,通过钩子函数对所述用于获取浏览器进程名称的函数进行拦截。
即可通过hook函数拦截上述GetModuleFileNameW函数和GetModuleBaseNameW函数。
步骤130,针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
以前述两个函数,即GetModuleFileNameW函数和GetModuleBaseNameW函数和360se.exe为例,当其获取到360se.exe后,则将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称。
优选的,所述针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称包括:
子步骤131,将利用所述函数获取的浏览器进程名,替换为iexplore.exe。
以前述360se.exe为例,将其替换为iexplore.exe。
本发明实施例中,可将360.exe替换为iexplore.exe,即可实现自建浏览器与IE内核特性的一致。
其进行替换的代码如图2A,在图中
Return swprintf_s(lpFilename,nSize,L’%s\\iexplorer’.file);代码处将获取到的浏览器进程替换为iexplore.exe。
步骤140,利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
在本发明实施例中,系统自身都存在IE浏览器,而IE浏览器本身会将其内核特性的配置信息写入注册表,以iexplore.exe为查询关键值。
那么本申请将自建的浏览器,比如360se.exe替换为iexplore.exe以后,即可以iexplore.exe直接使用系统本身具备的IE浏览器的注册表作为360se.exe的配置信息,不用自己再单独写配置信息。
进一步的,在将浏览器进程替换为IE内核特征一致的第二进程名之后,还包括:
以第二进程名称查询注册表,基于注册表加载IE内核特性资源。
本发明实施例中可以iexplore.exe查询注册表,然后加载IE内核特性资源。
当然,本发明实施例针对各个版本ie内核的浏览器进程,均拦截用于获取进程名称的函数。不受IE内核版本的限制。
本发明不用预先通过SHSetValue函数来往注册表设置开关,不需要预先在采用IE内核构建浏览器时写配置表,只需要在需要加载IE内核的浏览器进程启动时,对于用于获取浏览器进程名称的函数(该获取得到的进程名用于读取注册表,去加载进程),将该函数进行拦截,然后对于该函数获取的进程名称替换为与IE内核特征一致的第二进程名称,即可直接利用系统本身自带的IE浏览器的注册表,即意味着将IE浏览器的注册表作为该以IE内核构建的浏览器的配置信息。
解决了由于IE内核版本众多,特性不一,针对不同IE内核均需要单独写一套配置信息,特别是同时采用多个IE内核的浏览器,维护成本非常高问题,解决由于IE内核一直在开发新版本,导致无法及时的跟进IE新版本的新特性的问题,解决了由于人工原因导致的可能的设置错误而导致的浏览器无法工作、浏览器崩溃的问题,达到了降低维护成本,减少浏览器错误几率的效果。
实施例二
参照图3,其示出了本发明实施例一种针对IE内核浏览器的配置信息处理方法的流程示意图,具体可以包括:
步骤210,启动浏览器进程后,判断所述浏览器进程是否需要加载IE内核;
本发明实施例针对多核浏览器,特别是针对同时采用了非IE内核以外内核的浏览器(比如Chrome内核)。本发明实施例启动浏览器进程后,会判断当前启动的进程是否为需要加载IE内核的浏览器,比如如果是Chrome内核,则不进入步骤220步骤,按浏览器进程的正常执行流程执行,如果是IE内核,则进入步骤220。
步骤220,如果所述浏览器进程需要加载IE内核,拦截用于获取浏览器进程名称的函数;
步骤230,针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
步骤240,利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
本发明实施例针对多内核模式的浏览器,首先判断启动的浏览器进程是否为需要加载IE内核的进程,如果是则采用本发明的方案去将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息,从而加载内核特性。
本发明实施例与实施例一类似,在此不再详述。
实施例三
参照图4,其示出了本发明实施例一种针对IE内核浏览器的配置信息处理装置的流程示意图,具体可以包括:
启动模块310,适于启动需要加载IE内核的浏览器进;
拦截模块320,适于拦截用于获取浏览器进程名称的函数;
替换模块330,适于针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
配置确认模块340,适于利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
可选地,所述拦截模块包括:
浏览器拦截模块,适于拦截GetModuleFileNameW函数和GetModuleBaseNameW函数。
可选地,所述替换模块包括:
浏览器替换模块,适于将利用所述函数获取的浏览器进程名,替换为iexplore.exe。
可选地,所述拦截模块包括:
第二拦截模块,适于针对各版本的ie内核的浏览器进程,均拦截用于获取进程名称的函数。
可选地,所述拦截模块还包括:
钩取模块,适于通过钩子函数对所述用于获取浏览器进程名称的函数进行拦截。
实施例三
参照图5,其示出了本发明实施例一种针对IE内核浏览器的配置信息处理装置的流程示意图,具体可以包括:
启动判断模块410,适于启动浏览器进程后,判断所述浏览器进程是否需要加载IE内核;
拦截模块420,适于如果所述浏览器进程需要加载IE内核,拦截用于获取浏览器进程名称的函数;
替换模块430,适于针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
配置确认模块440,适于利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
可选地,所述拦截模块包括:
浏览器拦截模块,适于拦截GetModuleFileNameW函数和GetModuleBaseNameW函数。
可选地,所述替换模块包括:
浏览器替换模块,适于将利用所述函数获取的浏览器进程名,替换为iexplore.exe。
可选地,所述拦截模块包括:
第二拦截模块,适于针对各版本的ie内核的浏览器进程,均拦截用于获取进程名称的函数。
可选地,所述拦截模块还包括:
钩取模块,适于通过钩子函数对所述用于获取浏览器进程名称的函数进行拦截。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的针对IE内核浏览器的配置信息处理设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词浏览器、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了A1、一种针对IE内核浏览器的配置信息处理方法,包括:
启动需要加载IE内核的浏览器进程;
拦截用于获取浏览器进程名称的函数;
针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
A2、如A1所述的方法,所述拦截用于获取浏览器进程名称的函数包括:
拦截GetModuleFileNameW函数和GetModuleBaseNameW函数。
A3、如A1所述的方法,所述针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称包括:
将利用所述函数获取的浏览器进程名,替换为iexplore.exe。
A4、如A1所述的方法,所述拦截用于获取浏览器进程名称的函数包括:
针对各版本的ie内核的浏览器进程,均拦截用于获取进程名称的函数。
A5、如A1所述的方法,所述拦截用于获取进程名称的函数包括:
通过钩子函数对所述用于获取浏览器进程名称的函数进行拦截。
A6、一种针对IE内核浏览器的配置信息处理装置,包括:
启动模块,适于启动需要加载IE内核的浏览器进;
拦截模块,适于拦截用于获取浏览器进程名称的函数;
替换模块,适于针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
配置确认模块,适于利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
A7、如A6所述的装置,所述拦截模块包括:
浏览器拦截模块,适于拦截GetModuleFileNameW函数和GetModuleBaseNameW函数。
A8、如A6所述的装置,所述替换模块包括:
浏览器替换模块,适于将利用所述函数获取的浏览器进程名,替换为iexplore.exe。
A9、如A6所述的装置,所述拦截模块包括:
第二拦截模块,适于针对各版本的ie内核的浏览器进程,均拦截用于获取进程名称的函数。
A10、如A6所述的装置,所述拦截模块还包括:
钩取模块,适于通过钩子函数对所述用于获取浏览器进程名称的函数进行拦截。
B11、一种针对IE内核浏览器的配置信息处理方法,包括:
启动浏览器进程后,判断所述浏览器进程是否需要加载IE内核;
如果所述浏览器进程需要加载IE内核,拦截用于获取浏览器进程名称的函数;
针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
B12、如B11所述的方法,所述拦截用于获取浏览器进程名称的函数包括:
拦截GetModuleFileNameW函数和GetModuleBaseNameW函数。
B13、如B11所述的方法,所述针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称包括:
将利用所述函数获取的浏览器进程名,替换为iexplore.exe。
B14、如B11所述的方法,所述拦截用于获取浏览器进程名称的函数包括:
针对各版本的ie内核的浏览器进程,均拦截用于获取进程名称的函数。
B15、如B11所述的方法,所述拦截用于获取进程名称的函数包括:
通过钩子函数对所述用于获取浏览器进程名称的函数进行拦截。
B16、一种针对IE内核浏览器的配置信息处理装置,包括:
启动判断模块,适于启动浏览器进程后,判断所述浏览器进程是否需要加载IE内核;
拦截模块,适于如果所述浏览器进程需要加载IE内核,拦截用于获取浏览器进程名称的函数;
替换模块,适于针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
配置确认模块,适于利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
B17、如B16所述的装置,所述拦截模块包括:
浏览器拦截模块,适于拦截GetModuleFileNameW函数和GetModuleBaseNameW函数。
B18、如B16所述的装置,所述替换模块包括:
浏览器替换模块,适于将利用所述函数获取的浏览器进程名,替换为iexplore.exe。
B19、如B16所述的装置,所述拦截模块包括:
第二拦截模块,适于针对各版本的ie内核的浏览器进程,均拦截用于获取进程名称的函数。
B20、如B16所述的装置,所述拦截模块还包括:
钩取模块,适于通过钩子函数对所述用于获取浏览器进程名称的函数进行拦截。
Claims (10)
1.一种针对IE内核浏览器的配置信息处理方法,包括:
启动需要加载IE内核的浏览器进程;
拦截用于获取浏览器进程名称的函数;
针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
2.如权利要求1所述的方法,其特征在于,所述拦截用于获取浏览器进程名称的函数包括:
拦截GetModuleFileNameW函数和GetModuleBaseNameW函数。
3.如权利要求1所述的方法,其特征在于,所述针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称包括:
将利用所述函数获取的浏览器进程名,替换为iexplore.exe。
4.如权利要求1所述的方法,其特征在于,所述拦截用于获取浏览器进程名称的函数包括:
针对各版本的ie内核的浏览器进程,均拦截用于获取进程名称的函数。
5.如权利要求1所述的方法,其特征在于,所述拦截用于获取进程名称的函数包括:
通过钩子函数对所述用于获取浏览器进程名称的函数进行拦截。
6.一种针对IE内核浏览器的配置信息处理装置,包括:
启动模块,适于启动需要加载IE内核的浏览器进;
拦截模块,适于拦截用于获取浏览器进程名称的函数;
替换模块,适于针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
配置确认模块,适于利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
7.如权利要求6所述的装置,其特征在于,所述拦截模块包括:
浏览器拦截模块,适于拦截GetModuleFileNameW函数和GetModuleBaseNameW函数。
8.如权利要求6所述的装置,其特征在于,所述替换模块包括:
浏览器替换模块,适于将利用所述函数获取的浏览器进程名,替换为iexplore.exe。
9.一种针对IE内核浏览器的配置信息处理方法,包括:
启动浏览器进程后,判断所述浏览器进程是否需要加载IE内核;
如果所述浏览器进程需要加载IE内核,拦截用于获取浏览器进程名称的函数;
针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
10.一种针对IE内核浏览器的配置信息处理装置,包括:
启动判断模块,适于启动浏览器进程后,判断所述浏览器进程是否需要加载IE内核;
拦截模块,适于如果所述浏览器进程需要加载IE内核,拦截用于获取浏览器进程名称的函数;
替换模块,适于针对利用所述函数获取的浏览器进程名称,将所述浏览器进程名称替换为与IE内核特征一致的第二进程名称;
配置确认模块,适于利用所述第二进程名,将本地IE浏览器的注册表信息作为所述浏览器进程的配置信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410126674.6A CN103955378B (zh) | 2014-03-31 | 2014-03-31 | 一种针对ie内核浏览器的配置信息处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410126674.6A CN103955378B (zh) | 2014-03-31 | 2014-03-31 | 一种针对ie内核浏览器的配置信息处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103955378A true CN103955378A (zh) | 2014-07-30 |
CN103955378B CN103955378B (zh) | 2017-10-31 |
Family
ID=51332654
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410126674.6A Active CN103955378B (zh) | 2014-03-31 | 2014-03-31 | 一种针对ie内核浏览器的配置信息处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103955378B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105653641A (zh) * | 2015-12-25 | 2016-06-08 | 北京金山安全软件有限公司 | 一种浏览器锁定方法及装置 |
CN110471715A (zh) * | 2019-08-20 | 2019-11-19 | 江西金格科技股份有限公司 | Chrome内核浏览器自动加载PPAPI插件的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101493873A (zh) * | 2009-03-04 | 2009-07-29 | 浪潮电子信息产业股份有限公司 | 基于内核层技术实现对win平台文件读写操作访问控制方法 |
CN102508710A (zh) * | 2011-09-28 | 2012-06-20 | 奇智软件(北京)有限公司 | 一种ie6内核与新型ie内核的切换方法和系统 |
CN102915366A (zh) * | 2012-10-25 | 2013-02-06 | 北京奇虎科技有限公司 | 一种浏览器加载网页的方法和装置 |
CN102946437A (zh) * | 2012-11-27 | 2013-02-27 | 北京奇虎科技有限公司 | 用于浏览器的数据共享方法和浏览器 |
CN103488508A (zh) * | 2013-09-18 | 2014-01-01 | 贝壳网际(北京)安全技术有限公司 | 一种浏览器的工作方法、浏览器及终端设备 |
-
2014
- 2014-03-31 CN CN201410126674.6A patent/CN103955378B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101493873A (zh) * | 2009-03-04 | 2009-07-29 | 浪潮电子信息产业股份有限公司 | 基于内核层技术实现对win平台文件读写操作访问控制方法 |
CN102508710A (zh) * | 2011-09-28 | 2012-06-20 | 奇智软件(北京)有限公司 | 一种ie6内核与新型ie内核的切换方法和系统 |
CN102915366A (zh) * | 2012-10-25 | 2013-02-06 | 北京奇虎科技有限公司 | 一种浏览器加载网页的方法和装置 |
CN102946437A (zh) * | 2012-11-27 | 2013-02-27 | 北京奇虎科技有限公司 | 用于浏览器的数据共享方法和浏览器 |
CN103488508A (zh) * | 2013-09-18 | 2014-01-01 | 贝壳网际(北京)安全技术有限公司 | 一种浏览器的工作方法、浏览器及终端设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105653641A (zh) * | 2015-12-25 | 2016-06-08 | 北京金山安全软件有限公司 | 一种浏览器锁定方法及装置 |
CN105653641B (zh) * | 2015-12-25 | 2019-04-12 | 珠海豹趣科技有限公司 | 一种浏览器锁定方法及装置 |
CN110471715A (zh) * | 2019-08-20 | 2019-11-19 | 江西金格科技股份有限公司 | Chrome内核浏览器自动加载PPAPI插件的方法 |
CN110471715B (zh) * | 2019-08-20 | 2022-04-12 | 江西金格科技股份有限公司 | Chrome内核浏览器自动加载PPAPI插件的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103955378B (zh) | 2017-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220398109A1 (en) | Dynamically Loaded Plugin Architecture | |
CN103677922B (zh) | 对应用软件进行启动的方法和装置 | |
CN105045643B (zh) | 安卓系统中Launcher的启动方法及装置 | |
CN105204916B (zh) | 基于环境变量的项目进程运行方法及装置 | |
US9460109B1 (en) | Centralized provisioning process leveraging network attached storage | |
US20070027914A1 (en) | Terminology customization in a processing environment | |
US20170132023A1 (en) | Monitoring And Actuation Of View Controller Parameters To Reach Deep States Without Manual Developer Intervention | |
CN103246578A (zh) | 应用软件进行崩溃处理的方法及进行崩溃处理的浏览器 | |
US9542173B2 (en) | Dependency handling for software extensions | |
CN106941672A (zh) | 应用软件异常处理的方法及装置 | |
CN107908444A (zh) | 终端应用的挂钩方法及装置 | |
CN109542434A (zh) | 一种基于编程语言的主题动态切换方法及电子设备 | |
CN104346206A (zh) | 一种已卸载软件恢复安装的方法和系统 | |
CN104503778A (zh) | 一种应用程序的安装方法和装置 | |
CN108037941A (zh) | 基于公共插件的应用程序更新方法、电子设备、存储介质 | |
CN103955378A (zh) | 一种针对ie内核浏览器的配置信息处理方法和装置 | |
US9760364B2 (en) | Checks for software extensions | |
CN107943517A (zh) | 终端应用的挂钩方法及装置 | |
CN111324373A (zh) | 多个工程文件上传代码仓库的方法及装置、计算设备 | |
CN112748905B (zh) | 基础库的初始化调用方法、装置、电子设备及存储介质 | |
US11836246B2 (en) | Computer implemented method | |
CN102831002A (zh) | 补丁程序卸载方法及装置 | |
CN106681818A (zh) | 一种安卓底层系统事件的传递方法和装置 | |
US9477447B1 (en) | Semantic representations of software extensions | |
CN107885529A (zh) | 终端应用的挂钩方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220720 Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015 Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park) Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Patentee before: Qizhi software (Beijing) Co.,Ltd. |
|
TR01 | Transfer of patent right |