1、资料:(我的文章)

  http://www.cnblogs.com/cppskill/p/8341263.html

2、

  2.1、界面

  2.2、代码

unit formMain;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Registry, IniFiles; type
TfrmMain = class(TForm)
btnRegeditWrite: TButton;
Memo1: TMemo;
btnRegeditRead: TButton;
edtJavaHome: TEdit;
procedure btnRegeditWriteClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure btnRegeditReadClick(Sender: TObject);
public
function ReadString( _dwRootKey :DWORD; const _strPath, _strKey :string; var _strOut : string):Integer;
function WriteString(_dwRootKey :DWORD; const _strPath, _strKey, _strValue :string):Integer;
public
function ReadIni():integer;
end; var
frmMain: TfrmMain; implementation {$R *.dfm} function TfrmMain.ReadString(_dwRootKey :DWORD; const _strPath, _strKey: string; var _strOut: string): Integer;
var reg :TRegistry;
begin
Result := ;
reg := TRegistry.Create;
try
reg.RootKey := _dwRootKey;//HKEY_LOCAL_MACHINE; //'SYSTEM\CurrentControlSet\Control\Session Manager\Environment'
if not reg.OpenKey( _strPath, false ) then
begin
Result := -;
Exit;
end; _strOut := reg.ReadString(_strKey);
finally
reg.CloseKey;
reg.Destroy;
end;
end; function TfrmMain.WriteString(_dwRootKey: DWORD; const _strPath, _strKey, _strValue: string): Integer;
var reg :TRegistry;
begin
reg := TRegistry.Create;
try
reg.RootKey := _dwRootKey;//HKEY_LOCAL_MACHINE; //'SYSTEM\CurrentControlSet\Control\Session Manager\Environment'
if not reg.OpenKey( _strPath, false ) then
begin
Result := -;
Exit;
end; reg.WriteString( _strKey, _strValue );
finally
reg.CloseKey;
reg.Destroy;
end;
end; procedure TfrmMain.FormCreate(Sender: TObject);
begin
ReadIni;
btnRegeditReadClick(nil);
end; procedure TfrmMain.btnRegeditWriteClick(Sender: TObject);
var strValue :string;
begin
Memo1.Lines.Add('');
// HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Session Manager\Environment\path
// HKEY_CURRENT_USER \Environment
// HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment (官方) //strValue := 'C:\Program Files\Java\jdk1.8.0_152;AAA';
//strValue := 'C:\Program Files\Java\jdk1.8.0_152';
strValue := trim(edtJavaHome.Text);
if (strValue = '') then
begin
Memo1.Lines.Add('新的 JAVA_HOME 的值为空 .');
Exit;
end; if >WriteString(HKEY_LOCAL_MACHINE,
'SYSTEM\CurrentControlSet\Control\Session Manager\Environment', 'JAVA_HOME', strValue) then
begin
Memo1.Lines.Add('注册表写入失败 .');
Exit;
end;
Memo1.Lines.Add('注册表写入成功 .');
end; procedure TfrmMain.btnRegeditReadClick(Sender: TObject);
var strValue :string;
begin
Memo1.Lines.Add(''); if ( > ReadString(HKEY_LOCAL_MACHINE,
'SYSTEM\CurrentControlSet\Control\Session Manager\Environment', 'JAVA_HOME', strValue)) then
begin
Memo1.Lines.Add('读取 注册表 出错');
Exit;
end;
Memo1.Lines.Add('HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\JAVA_HOME');
Memo1.Lines.Add(' '+strValue);
end; function TfrmMain.ReadIni(): integer;
var ini :Tinifile;
strX86, strX64 :string;
strFileName :string;
begin
strFileName := ExtractFilePath(Paramstr()) + '_EnvironmentVariable.ini';
ini := Tinifile.Create(strFileName);
try
strX86 := ini.ReadString('JAVA_HOME', 'Win7x86', '');
strX64 := ini.ReadString('JAVA_HOME', 'Win7x64', ''); Memo1.Lines.Add('JAVA_HOME(Win7x86) : '+strX86);
Memo1.Lines.Add('JAVA_HOME(Win7x64) : '+strX64);
finally
ini.Free;
end;
end; end.

  2.3、ini文件(_EnvironmentVariable.ini)

3、

4、

5、

环境变量.JAVA_HOME的更多相关文章

  1. JAVA环境变量JAVA_HOME、CLASSPATH、PATH设置详解

    Windows下JAVA用到的环境变量主要有3个,JAVA_HOME.CLASSPATH.PATH.下面逐个分析. JAVA_HOME 指向的是JDK的安装路径,如C:\jdk1.5.0_06,在这路 ...

  2. [转]JAVA环境变量JAVA_HOME、CLASSPATH、PATH设置详解

    [转] JAVA环境变量JAVA_HOME.CLASSPATH.PATH设置详解 - dreamman的日志 - 网易博客http://blog.163.com/dreamman_yx/blog/st ...

  3. JAVA中常用需要设置的三个环境变量(JAVA_HOME、CLASSPATH、PATH)

    JAVA中常用需要设置的三个环境变量: JAVA_HOME.CLASSPATH.PATH (一) 配置环境变量:(相对路径) 1. JAVA_HOME=x:/jdk1.6.0 2. 用%JAVA_HO ...

  4. java 环境变量java_home配置多加了 \ 导致zookeeper莫名其妙问题。

    平时开发其实不太用得到java_home.path.classpath之类的环境变量,但是在命令行下运行java则需要用上,所以配错就可能出现莫名其妙错误. 错误JAVA_HOME 配置:D:\Pro ...

  5. Java学习笔记二---设置环境变量JAVA_HOME,CLASSPATH,PATH

    1.环境变量包括: JAVA_HOME,CLASSPATH,PATH 2.设置环境变量的目的: 路径搜索,方便查找到jdk的安装路径.方便搜索用到的类文件.方便搜索用到的可执行文件如java,java ...

  6. 安装jdk配置环境变量JAVA_HOME不起作用

    今天重新安装系统,需要装jdk,配置环境变量,于是先配置JAVA_HOME  D:\Program Files\Java\jdk1.8.0_144, 然后在配置path路径,但是cmd到dos命令行输 ...

  7. Java学习笔记2---设置环境变量JAVA_HOME,CLASSPATH,PATH

    1.环境变量包括: JAVA_HOME,CLASSPATH,PATH 2.设置环境变量的目的: 路径搜索,方便查找到jdk的安装路径.方便搜索用到的类文件.方便搜索用到的可执行文件如java,java ...

  8. [转]Linux下修改/设置环境变量JAVA_HOME

    1. 永久修改,对所有用户有效  # vi /etc/profile //按键盘[Shift + g], 在profile文件最后添加下面的内容: export JAVA_HOME = /home/m ...

  9. Linux下修改/设置环境变量JAVA_HOME

    export设置只对当前的bash登录session有效.这是存在内存里面的.你可以写入文件一般的文件.之后source它.或者放到/etc/profile 等等的位置里,不同的地方效果不同. 1. ...

随机推荐

  1. 自动生产jason的工具

    EnjoySR/ESJsonFormat-Xcode

  2. hdu5195 二分+线段树+拓扑序

    这题说的给了n个点m条边要求保证是一个有向无环图,可以删除至多k条边使得这个图的拓扑序的字典序最大,我们知道如果我们要排一个点的时候一定要考虑比他大的点是否可以.通过拆边马上拆出来,如果可以拆当然是拆 ...

  3. 查看firefox浏览器 驱动geckodriver.exe文件的版本号的方法,以及下载链接

    1-进入到geckodriver.exe文件的目录: 2-在路径栏下输入cmd: 3-命令行界面下输入:geckodriver.exe -h 可以看到文件的帮助信息,其中第一行就列出了版本号 为0.1 ...

  4. ajax请求头设置 | header 传token

    $('.w-entry-btn').on('tap',function(){ var urlAddress = '/api/address'; var valToken = JSON.parse(lo ...

  5. Jmeter--正则表达式提取器

    正则提取器的一般使用场景是, 在我第二个请求参数中需要加入第一个请求的返回值, 此时通过正则提取器可以提取第一个请求返回值中指定的字段信息并赋值, 在第二个请求参数中直接引用该变量即可 jmeter的 ...

  6. js将时间戳转化为日期格式

    function getLocalTime(nS) {        var date = new Date(nS);        var Y = date.getFullYear() + '-'; ...

  7. centos 安装 ffmpeg

    使用yum方式安装ffmpeg: 先安装Nux Dextop仓库: Nux Dextop库依赖于EPEL库,所有要先安装EPEL库(需要管理员权限). 如果安装过则跳过. $ su root $ yu ...

  8. 使用Oracle执行计划分析SQL性能

    执行计划:一条查询语句在ORACLE中的执行过程或访问路径的描述.即就是对一个查询任务,做出一份怎样去完成任务的详细方案. 如果要分析某条SQL的性能问题,通常我们要先看SQL的执行计划,看看SQL的 ...

  9. IDEA 插件-码云

    插件安装 最新插件版本: 2018.3.1.(2019-01-10 发布)注意:码云 IDEA 插件已由 gitosc 更名为 gitee.新版插件 gitee 菜单已经和 git 菜单合并 通过「插 ...

  10. python字符串、列表和文件对象总结

    1.字符串是字符序列.字符串文字可以用单引号或者双引号分隔. 2.可以用内置的序列操作来处理字符串和列表:连接(+).重复(*).索引([]),切片([:])和长度(len()).可以用for循环遍历 ...