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. Jmeter CSV Data Set Config参数化

    在使用Jemeter做压力测试的时候,往往需要参数化用户名,密码以到达到多用户使用不同的用户名密码登录的目的.这个时候我们就可以使用CSV Data Set Config实现参数化登录: 首先通过Te ...

  2. javascript利用jquery-1.7.1来判断是否是谷歌Chrome浏览器

    <!DOCTYPE html> <html> <head>     <meta http-equiv="Content-Type" con ...

  3. UVM环境(一)

    1)如何避免绝对路径的出现:绝对路径一般都是用在信号的连接关系上,这样可以用virtual interface,来通过句柄的赋值来动态的建立连接关系.那么顶层模块怎么 样将interface的句柄赋值 ...

  4. SQL 中【NULL】和【无】烦躁的问题

    很烦躁,烦躁的很,总结一下. 先简单的说下: NULL   : 不确定的东西 无       :没有东西 复杂的见下文....... 一 .null值 下面举个最简单的例子,平常工作当中肯定比这个sq ...

  5. lnmp之mysql5.5.17安装

    先执行命令yum install cmake mysql5.5采用的是cmake安装(更先进的configure) wget下载目录(到清华大学的镜像站下载) [root@localhost loca ...

  6. AO中的空间关系

    名词解释: Boundary(边界): 只有线和面才有边界.面的边界是指组成面的框架线:线的边界是指线的二个端点(即起点和终点,不包括中间部分的节点):点没有边界. Interior(内部): 除去边 ...

  7. javascript技巧及常用事件方法集合(全)

    事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture();  event.srcE ...

  8. python isinstance用法

    isinstance(object,type) 其第一个参数(object)为对象,第二个参数(type)为类型名(int...)或类型名的一个列表((int,list,float)是一个列表). 其 ...

  9. 数据仓库基础(三)OLAP

    本文转载自:http://www.cnblogs.com/evencao/archive/2013/06/14/3135589.html 联机处理分析(OLAP):介绍 首先要理解的概念: 1.维度: ...

  10. Linux中Postfix反病毒和垃圾邮件工具(十)

    amavisd-new amavisd-new呼叫器是一个连接MTA和内容检测工具(诸如病毒扫描工具和SpamAssassin)的高性能接口程序,使用perl语言写成.它一般通过SMTP.ESMTP或 ...