设置进程用指定IE版本
function IsWOW64: BOOL;
begin
Result := False;
if GetProcAddress(GetModuleHandle(kernel32), 'IsWow64Process') <> nil then
IsWow64Process(GetCurrentProcess, Result);
end; procedure SetProgramIEVersion(processName: string; ver: Integer);
var
ARegistry: TRegistry;
list: TStringList;
verValue: Integer;
key: string;
const
x86Key = 'SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION';
x64Key = 'SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION';
begin
list := TStringList.Create;
try
list.AddPair('', '');
list.AddPair('', '');
list.AddPair('', '');
list.AddPair('', '');
list.AddPair('', ''); if list.IndexOfName(IntToStr(ver)) >= then
verValue := StrToInt(list.Values[IntToStr(ver)])
else verValue := ; if processName = '' then
processName := ExtractFileName(ParamStr()); if IsWOW64 then
key := x64Key
else key := x86Key; ARegistry := TRegistry.Create;
with ARegistry do
try
RootKey := HKEY_LOCAL_MACHINE;
if OpenKey(key, True) then
begin
if ValueExists(processName) then
DeleteValue(processName);
WriteInteger(processName, verValue);
end;
CloseKey;
finally
Free;
end;
finally
list.Free;
end;
调用方式:
SetProgramIEVersion('a.exe', 11);
如果是设置自身程序:
SetProgramIEVersion('', 11);
设置进程用指定IE版本的更多相关文章
- Linux下设置进程使用指定核的CPU
一.原因: 我们不能任由操作系统负载均衡,因为我们自己更了解自己的程序,所以,我们可以手动地为其分配CPU核,而不会过多地占用CPU0,或是让我们关键进程和一堆别的进程挤在一起. 二.查看方法: 1. ...
- maven设置指定jdk版本
今天心血来潮准备折腾一下jeecg,去下载了一个maven版本的项目,既然下载了maven版的,当然就要配置好maven环境了. 因为之前简单学习过maven,当时使用的版本是3.3.9的,但是今天在 ...
- 为ant指定编译版本
用Eclipse的ant折腾了一天也没搞清楚为什么同样的设置ant出的class版本却不一样.后来下载个ant工具在命令行执行通过. 从网上抄得指定编译版本的方法如下: ant 运行时,必需依赖jdk ...
- Buildroot 指定内核版本
/******************************************************************************** * Buildroot 指定内核版本 ...
- Linux内核 ——进程管理之进程诞生(基于版本4.x)
<奔跑吧linux内核>3.1笔记,不足之处还望大家批评指正 进程是Linux内核最基本的抽象之一,它是处于执行期的程序.它不仅局限于一段可执行代码(代码段),还包括进程需要的其他资源.在 ...
- 设置进程的cpu亲和性
在busybox中提供了一个名叫taskset的命令用于设置进程的cpu亲和性,让指定的进程或者程序在指定的cpu上面运行,该程序是通过调用sched_getaffinity和sched_setaff ...
- android studio中为gradle指定cmake版本
Android Studio相当于是Intellij基础上写了一个AS插件,这个插件使用gradle作为构建系统,因此构建出现问题先考虑gradle的文档. gradle可以使用native buil ...
- [转帖].NET Core 项目指定SDK版本
.NET Core 项目指定SDK版本 https://www.cnblogs.com/stulzq/p/9503121.html 一. 版本里的坑 自从 .NET Core 2.1.0版本发布以后, ...
- MacBook下为要运行的.net core 项目指定sdk版本
安装完.net core 3.0,运行早期版本构建的项目遇到运行错误,查阅官方文档解决问题,特此记录!官方原文如下: SDK 使用最新安装的版本 SDK 命令包括 dotnet new 和 dotne ...
随机推荐
- NSIndexPath等结构体的比较
1.NSIndexPath的比较方式,需要将结构体内部的属性一一对比.比如, if ((indexPath.section == self.selectIndexPath.section) & ...
- JS 删除对象中指定的值
1,通过delete删除 2,通过filter filter需要在循环的时候判断一下是true还是false,是true才会返回这个元素: let arr1 = [1,2,3]; let arr2 = ...
- python正则表达式错误集
这篇博文主要记载一些个人的(python)正则表达式的常见错误以及误区,所以,不一定全面,不一定具有权威.但我会把每个例子列出来,争取用事实说话. 大括号中空格问题 In [15]: re.match ...
- python对ASC码的加减
一般使用这两个函数 sum = ord('A') //结果为65 ord()函数返回值是int 字符要加' '否则会当作变量来看 sum = chr(65) //结果为A 不是char是chr()
- Windows驱动开发-IRP结构体
IRP的全名是I/O Request Package,即输入输出请求包,它是Windows内核中的一种非常重要的数据结构. 上层应用程序与底层驱动程序通信时,应用程序会发出I/O请求,操作系统将相应的 ...
- 解决Eclipse Debug 断点调试的source not found问题
写完代码进行调试的时候,经常会用到断点调试,一步步检测问题,但有时候eclipse有时候无法进入断点,这样就失去了断点的意义,原因是debug无法找到该项目的源代码,解决方法如下 1,打开debug ...
- Java对比两个数据库中的表和字段,写个冷门的东西
Java对比两个数据库中的表和字段,写个冷门的东西 转载的 来源网络 目前所在的项目组距离下个版本上线已经很近了,就面临了一个问题:开发人员在开发库上根据需要增加数据表.数据字段.或者变更了字段类型或 ...
- WPF学员管理系统
下载
- Java多线程编程之守护线程
Java的线程分为两种,一个是用户线程,一个是守护线程.守护线程守护的对象就是用户线程,当用户线程结束后,守护它的守护线程也就会结束.二者的本质基本是一样的,唯一区别在于何时结束. 用户线程:直到自己 ...
- XV6源代码阅读-进程线程
Exercise1 源代码阅读 1.基本头文件:types.h param.h memlayout.h defs.h x86.h asm.h mmu.h elf.h types.h:仅仅是定义uint ...