java设置环境变量小工具
unit MainUnit; interface uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Registry; type
TfrmMain = class(TForm)
btn1: TButton;
edt1: TEdit;
lbl1: TLabel;
procedure btn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end; var
frmMain: TfrmMain; function ExpandEnvironment(const strValue: string): string;
function SetGlobalEnvironment(const envName, envValue: string; const isUser: Boolean = True): Boolean; implementation {$R *.dfm} procedure TfrmMain.btn1Click(Sender: TObject);
var
path:string;
begin
SetGlobalEnvironment('JAVA_HOME',edt1.Text);
SetGlobalEnvironment('CLASSPATH','.;%JAVA_HOME%/jre/lib/rt.jar;%JAVA_HOME%/lib/tools.jar;%JAVA_HOME%/lib;');
path := ExpandEnvironment('%PATH%');
path := path + ';%JAVA_HOME%/bin';
SetGlobalEnvironment('PATH',path);
end; /// <summary>
/// 设置系统级环境变量参数函数
/// </summary>
/// <param name="envName">环境变量名</param>
/// <param name="envValue">环境变量值</param>
/// <param name="isUser">为true表示只更新当前操作员的环境变量</param>
/// <returns></returns>
function SetGlobalEnvironment(const envName, envValue: string; const isUser: Boolean = True): Boolean;
resourcestring
REG_MLOCATION ='System/CurrentControlSet/Control/Session Manager/Environment'; // 环境变量存储在注册表中的位置
REG_ULOCATION = 'Environment';
begin
with TRegistry.Create do
try
if isUser then // 设置当前用户的环境变量
Result := OpenKey(REG_ULOCATION, True)
else // 设置系统环境变量,对所有用户有效
begin
RootKey := HKEY_LOCAL_MACHINE;
Result := OpenKey(REG_MLOCATION, True);
end; if Result then
begin
WriteString(envName, envValue); // 设置注册表中环境变量的值 SetEnvironmentVariable(PChar(envName), PChar(envValue)); // 更新当前进程的环境变量值 SendMessage(HWND_BROADCAST, WM_SETTINGCHANGE, , Integer(PChar('Environment')));
// 发送消息通知所有上层的窗口,环境参数发生变化
end;
finally
Free;
end;
end; /// <summary>
/// 获取环境变量
/// </summary>
/// <param name="strValue">环境变量名</param>
/// <returns>环境变量值</returns>
function ExpandEnvironment(const strValue: string): string;
var
chrResult: array[..] of Char;
wrdReturn: DWORD;
begin
wrdReturn := ExpandEnvironmentStrings(PChar(strValue), chrResult, );
if wrdReturn = then
Result := strValue
else
begin
Result := Trim(chrResult);
end;
end; end.
java设置环境变量小工具的更多相关文章
- JAVA设置环境变量和在DOS下运行java程序
在学校实训的这几天,老师带着我们开始深入的复习java.这是第一天的内容哦 对于“JAVA设置环境变量和在DOS下运行java程序”,许多初学者是陌生的,但了解这个却对后期的学习很重要. http:/ ...
- Java设置环境变量
客上转过来的. 非常多人写了非常久java代码.还不知道环境变量是怎么一回事.科普一下. 一.java设置环境变量 - 精简版 1.右键打开我的电脑->属性->高级->环境变量 ...
- Java设置环境变量的含义(JAVA_HOME,PATH,CLASSPATH)
开发Java程序之前,需要在计算机行安装并配置Java开发环境.一种是直接安装Myeclipse,利用其自带的JDK编译运行:另一种是在我们的Windows或者Linux平台下安装JDK,配置环境变量 ...
- 一键设置Fluent环境变量小程序
使用视频教程优酷播放地址: https://v.youku.com/v_show/id_XNDU2MTkwNDg5Mg==.html?spm=a2hzp.8244740.0.0 一键设置环境变量小软件 ...
- windows7设置java的环境变量
win7 下配置 java 环境变量 首先,你应该已经安装了 java 的 JDK 了,笔者安装的是:jdk-7u7-windows-x64 接下来主要讲怎么配置 java 的环境变量,也是为了以 ...
- Java学习笔记二---设置环境变量JAVA_HOME,CLASSPATH,PATH
1.环境变量包括: JAVA_HOME,CLASSPATH,PATH 2.设置环境变量的目的: 路径搜索,方便查找到jdk的安装路径.方便搜索用到的类文件.方便搜索用到的可执行文件如java,java ...
- java安装及设置环境变量
目录: java安装 (找不到或无法加载主类 com.sun.tools.javac.Main) 设置环境变量 maven安装及环境变量设置 1. java安装 情景:不使用默认安装 问题:cmd-j ...
- Debian 9安装java与设置环境变量
安装默认JRE / JDK 先更新软件包索引: apt update 检查是否已安装Java: java -version 如果当前未安装Java,您将看到以下输出: Output-bash: jav ...
- Windows一键设置环境变量(以设置java环境变量为例)
右击以管理员方式运行 JDKSetting.bat @echo off color 0a echo.------------------------------------ echo.TODO:设 ...
随机推荐
- Javascript return false的作用(转)
大多数情况下,为事件处理函数返回false,可以防止默认的事件行为.例如,默认情况下点击一个<a>元素,页面会跳转到该元素href属性指定的页.return false 就相当于终止符,r ...
- linux多个python版本下导致yum报错
问题: $ yum File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: ^ SyntaxError: invalid ...
- 30天,O2O速成攻略【8.29杭州站】
活动概况 时间:2015年8月29日13:30-16:30 地点:123茶楼(杭州上城区青年路27号2楼) 主办:APICloud.UPYUN.一起火 网址:www.apicloud.com 费用:免 ...
- Winform项目调用asp.net数据接口
最近一个WPF项目需要改写成android项目,思路是在asp.net项目中编写一个通用接口,便于其它平台下调用数据.刚接触到这些东西的时候完全是一头雾水,最根本的原因是不明白网站中的一个网页,为什么 ...
- 第六篇 SQL Server代理深入作业步骤工作流
本篇文章是SQL Server代理系列的第六篇,详细内容请参考原文. 正如这一系列的前几篇所述,SQL Server代理作业是由一系列的作业步骤组成,每个步骤由一个独立的类型去执行.每个作业步骤在技术 ...
- DLL项目报错:fatal error lnk1104: cannot open file "...\xxx.dll"
在生成DLL的时候报这个错, 生成不了DLL 检查生成DLL的路径是否有其他程序在使用... 或者把杀毒软件关了试试...
- nexenta systemcallerror
最近在试nexenta做iscsi,设置ip出现上面的错误 解决办法,先讲mtu设置为不周与原来的值,比如原来为1500,先设置成1501,就可以了,然后可以再改回来,也是没有问题的!
- 《30天自制操作系统》10_day_学习笔记
harib07a: 整理内存管理函数:memman_alloc和memman_free能够以最小1字节进行内存管理,但时间久了后,容易产生外部碎片:为此,笔者编写了一些以0x1000字节为单位进行内存 ...
- 二叉树的先序、中序以及后序遍历(递归 && 非递归)
树节点定义: class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; } } 递归建立二 ...
- java io读书笔记(5) Writing Bytes to Output Streams
outputstream类是所有的字符输出类的父类,他是一个抽象类. 对于OutputStream类来说,其最基础的方法就是:write(). public abstract void write(i ...