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:设 ...
随机推荐
- MVC路由约束
public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/ ...
- LeetCode H-Index II
原题链接在这里:https://leetcode.com/problems/h-index-ii/ 题目: Follow up for H-Index: What if the citations a ...
- Thinkpad E430 Ubuntu 14.04 无线网卡驱动
为了重新安装正确的无线网卡的驱动,所以要先弄清楚我的笔记本上的无线网卡的具体的型号.打开终端,用如下命令/方法查看:lspci,找到输出信息中,有关无线网卡的部分.发现型号是:BCM43142 先用有 ...
- Cache封装类
代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syst ...
- Mac OS—苹果搭建Android开发环境
如何在MAC OS X 安装Android SDK 我以往用的开发环境都是以MAC OS安装VMware来跑不同的Windows OS,目前慢慢的将所要开发的项目由以往的传统的Wintel转移到Mob ...
- 三层交换配置VLAN+DHCP+ACL
使用思科模拟软件Cisco Packet Tracer Student,软件功能有限,只能架设简单的网络架构,适合初学者使用.
- 关于IOS框架的解释
- C#资源文件和C#枚举如何结合使用?
最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来.我们都知道计算机技术发展日新月异,速度惊人的快,你我稍不留神,就会被慢慢淘汰!因此:每日不间断的学习是避免被 ...
- 使用已有PDB克隆PDB
使用已有PDB克隆PDB $ sqlplus '/as sysdba' SQL*Plus: Release Production on Tue Jun :: Copyright (c) , , Ora ...
- [c++基本语法]——构造函数初始化列表
c++构造函数初始化成员变量列表: #pragma once class Node { public: int data; // 权值 Node *parent; // 父节点 Node *left; ...